Commit Graph

1632 Commits

Author SHA1 Message Date
jifl
0d7dccba5e * sockets.c (lwip_accept): check addr isn't NULL. If it's valid, do an
assertion check that addrlen isn't NULL.
2008-09-30 14:51:27 +00:00
jifl
c231e95cce * tcp.c: Fix bug #24227, wrong error message in tcp_bind. 2008-09-30 13:50:39 +00:00
jifl
6f6c8c5434 * pbuf.c (pbuf_copy_partial): Improve function description comment. Thanks to Luca Ceresoli 2008-09-30 13:40:41 +00:00
goldsimon
edf72a7dfb fixed one small warning (compared u16_t to <= 0) 2008-08-26 19:57:20 +00:00
goldsimon
ba636e19a2 fixed bug #24132: Cross-dependency between ip_addr.h and inet.h -> moved declaration of struct in_addr from ip_addr.h to inet.h 2008-08-26 19:47:05 +00:00
goldsimon
6374766a55 Added 2 asserts in pbuf_realloc to prevent dereferencing a null pointer in invalid pbuf queues 2008-08-26 19:34:18 +00:00
goldsimon
c779a9f29f Fixed some warnings, changed some debug defines to include better names 2008-07-16 20:36:12 +00:00
goldsimon
ae2d5266c5 removed invalid call to tcp_connect() in do_close_internal() 2008-07-15 11:18:58 +00:00
goldsimon
99db244124 fixed bug #23847: do_close_internal references freed memory 2008-07-14 20:12:36 +00:00
fbernon
8367feafa9 stats.h: Fix some build bugs introduced with patch #6483 (missing some parameters in macros, mainly if MEM_STATS=0 and MEMP_STATS=0). 2008-07-08 09:15:56 +00:00
jifl
f6a28808e3 Fix typo of including type in stats_display_memp empty macro 2008-07-07 12:45:47 +00:00
goldsimon
13d8ae859d fixed bug #21433: Calling mem_free/pbuf_free from interrupt context isn't safe: LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT allows mem_free to run between mem_malloc iterations. Added illegal counter for mem stats. 2008-06-30 18:16:51 +00:00
goldsimon
95b15fe463 Fix typo, add comment 2008-06-27 20:34:51 +00:00
goldsimon
779938ea68 patch #6483: stats module improvement: Added defines to display each module's statistic individually, added stats defines for MEM, MEMP and SYS modules, removed (unused) rexmit counter. 2008-06-27 18:37:53 +00:00
jifl
139944a3ac * tcp_in.c: Fix for bug #23693 as suggested by Art R. Ensure cseg is unused
if tcp_seg_copy fails.
2008-06-24 15:46:38 +00:00
goldsimon
b94e3a874d Added debug trace for incoming eth packets in ethernet_input like suggested in patch #6519 2008-06-19 16:40:59 +00:00
goldsimon
3d8e5003af Fixed includes in netif.c, removed loop_cnt_max member in struct netif (instead the define LWIP_LOOPBACK_MAX_PBUFS is used directly) 2008-06-19 16:27:18 +00:00
goldsimon
94cd14e90d patch #6459: Made err_t overridable to use a more efficient type (define LWIP_ERR_T in cc.h) 2008-06-17 20:27:31 +00:00
goldsimon
c93cfb2c74 Changed two MEMCPY calls to SMEMCPY 2008-06-17 20:16:23 +00:00
goldsimon
521d439a07 Added a configuration option for slipif for symmetry to loopif (patch #6480) 2008-06-17 20:14:05 +00:00
goldsimon
460b18e82c Fixed loopif_poll define (now maps directly to netif_poll) 2008-06-17 20:12:22 +00:00
goldsimon
ef3666ef26 Checked in some ideas of patch #6460 (loop optimizations) and created defines for swapping bytes and folding u32 to u16. 2008-06-17 20:06:25 +00:00
goldsimon
e0aaa87b1f Increasing etharp error stats on unsupported ethtype in ethernet_input() 2008-06-17 19:46:30 +00:00
goldsimon
eba83ab740 Changed loopback code (less difference between NO_SYS = 0 / 1), added setting LWIP_LOOPBACK_MAX_PBUFS to limit loopback-queued pbufs 2008-06-17 19:39:22 +00:00
goldsimon
88ff8c83e9 Checked in slightly modified version of patch # 6370: Moved loopif code to netif.c so that loopback traffic is supported on all netifs (all local IPs). 2008-06-12 20:10:08 +00:00
kieranm
24e0b25215 Remove redundant "if" statement, and use real rcv_wnd
rather than rcv_ann_wnd when deciding if packets are in-window.
Contributed by <arasmussen@consultant.datasys.swri.edu>
2008-05-30 12:21:29 +00:00
kieranm
7bc881ccc5 Fix BUG#23254. Change macro definition of mem_* to allow
passing as function pointers when MEM_LIBC_MALLOC is defined.
2008-05-30 11:37:15 +00:00
jifl
a3bc6cd666 * err.h, err.c, sockets.c: Fix bug #23119: Reorder timeout error code to
stop it being treated as a fatal error.
2008-05-09 12:14:23 +00:00
jifl
40d4a8fc2f Trivial change: correct sense of comment about LWIP_ERROR macro 2008-04-29 16:51:35 +00:00
fbernon
7be9e292dc sockets.h: minor changes, add comments for ToS options 2008-04-26 10:46:23 +00:00
goldsimon
9ccd31a12e fixed bug #22804: dhcp_stop doesn't clear NETIF_FLAG_DHCP (flag now cleared) 2008-04-15 17:24:54 +00:00
goldsimon
a9aefcc1be Fixed comments for pbuf_copy() and find_entry() as proposed by Luca Ceresoli on lwip-users 2008-04-01 19:05:40 +00:00
goldsimon
05587f5da9 Changed the pbuf_free/mem_free callback functions a little: created extra functions for that 2008-03-28 07:56:47 +00:00
goldsimon
43dd38df0a fixed bug #21433 (Calling mem_free/pbuf_free from interrupt context isn't safe): set LWIP_USE_HEAP_FROM_INTERRUPT to 1 in lwipopts.h or use tcpip_callback_nonblocking(pbuf_free_int, p)/ tcpip_callback_nonblocking(mem_free, m) to free pbufs or heap memory from interrupt context 2008-03-27 19:29:35 +00:00
goldsimon
64fa8d78bc Added global #ifndef __SIO_H__ and some comments 2008-03-27 18:06:02 +00:00
goldsimon
aee9c4c8e6 fixed bug #22249: division by zero could occur if a remote host sent a zero mss as TCP option. 2008-03-26 11:57:12 +00:00
fbernon
7774b57a1c api_msg.c: fix wrong mailbox invalidate (NULL was used instead of SYS_MBOX_NULL). Spoted by Silas Boyd-Wickizer. 2008-03-21 16:23:14 +00:00
goldsimon
90cb4b4e09 Corrected comment in do_writemore() 2008-03-19 20:59:59 +00:00
fbernon
7fa9010f35 igmp.h, igmp.c: Fix bug #22613 "IGMP iphdr problem" (could have some problems to fill the IP header on some targets, use now the ip.h macros to do it). 2008-03-17 13:40:00 +00:00
fbernon
03f888c968 ppp: minor changes: fix some 'is unused' warning when debug is off. 2008-03-16 08:53:58 +00:00
fbernon
e07d71f5e8 sockets.c: Fix bug #22435 "lwip_recvfrom with TCP break;". Using (lwip_)recvfrom with valid "from" and "fromlen" parameters, on a TCP connection caused a crash. Note that using (lwip_)recvfrom like this is a bit slow and that using (lwip)getpeername is the good lwip way to do it (so, using recv is faster on tcp sockets). 2008-03-13 20:03:57 +00:00
fbernon
afcf49ad3a api_msg.c: minor change, fix warning. 2008-03-13 19:57:11 +00:00
fbernon
a2f1892480 api_msg.c: fix the netbuf::addr field to point on the ip_src on the pbuf's copy (about bug#22530). 2008-03-12 12:58:07 +00:00
fbernon
552106e2a4 api_msg.c: Fix bug #22530 "api_msg.c's recv_raw() does not consume data". 2008-03-12 10:55:54 +00:00
jifl
a48370d5e9 * inet_chksum.c: Allow choice of one of the sample algorithms to be
made from lwipopts.h. Fix comment on how to override LWIP_CHKSUM.
2008-03-10 16:12:31 +00:00
jifl
f067d34392 * pbuf.c, ppp.c: Fix warnings on some systems with mem_malloc. 2008-03-04 16:37:46 +00:00
jifl
30d4c243ec * mem.c, stats.c, mem.h: apply patch #6414 to avoid compiler errors
and/or warnings on some systems where mem_size_t and size_t differ.
2008-03-04 16:31:31 +00:00
fbernon
2637f2ad3a inet_chksum.c: minor change for coding style 2008-03-04 14:26:44 +00:00
fbernon
9b92f4c882 dhcp.c: minor change for coding style 2008-03-04 14:25:58 +00:00
kieranm
42344ce20c 2008-03-04 Kieran Mansley (contributions by others)
* Numerous small compiler error/warning fixes from contributions to
    mailing list after 1.3.0 release candidate made.
2008-03-04 13:41:23 +00:00
fbernon
faca23b984 Minor change: add a trace in etharp.c, find_entry 2008-02-21 14:26:14 +00:00
fbernon
0cbd7501a1 Minor changes: fix trace text in etharp.c 2008-02-21 09:16:21 +00:00
marcbou
ef70313e05 Fixed comment for LWIP_POSIX_SOCKETS_IO_NAMES 2008-01-31 18:19:29 +00:00
jifl
2ec3c46838 Fix incorrect units in comment for TCP_MSL. Allow override. 2008-01-28 15:30:06 +00:00
goldsimon
c54777d957 Coding style: use named constants instead of numbers only 2008-01-27 11:22:14 +00:00
fbernon
7b11fb75d9 Minor changes: replace directy call to memcpy by MEMCPY macro. 2008-01-26 16:11:39 +00:00
fbernon
e937521014 dns.c: Fix bug #22108 "DNS problem" caused by unaligned structures. 2008-01-25 13:12:12 +00:00
fbernon
f02c39a402 tcp.c, tcp_in.c, tcp.h, opt.h: Rename LWIP_CALCULATE_EFF_SEND_MSS in TCP_CALCULATE_EFF_SEND_MSS to have coherent TCP options names. 2008-01-22 21:15:14 +00:00
fbernon
c580c2be75 Minor changes: fix a warning: "src\core\ipv4\ip_frag.c (782) : warning: potential uninitialized reference to "newpbuflen" in func "_ip_frag"" 2008-01-22 18:56:40 +00:00
fbernon
bfd96264e6 Minor changes: fix warning in dhcp_unfold_reply when LWIP_DEBUG=0 2008-01-21 16:55:26 +00:00
fbernon
baab7c04f7 Minor changes: fix some traces in ip_frag.c (coding style and end of lines) 2008-01-21 16:53:10 +00:00
jifl
3572ec784d Fix simple compilation error with some compilers to preserve const-ness of ethaddr - from Luca Ceresoli 2008-01-18 19:45:15 +00:00
kieranm
6f00cbb6ef 2008-01-15 Kieran Mansley
* tcp_out.c: BUG20511.  Modify persist timer to start when we are
    prevented from sending by a small send window, not just a zero
    send window.
2008-01-15 13:00:51 +00:00
fbernon
7518acf634 rawapi.txt, api_msg.c, tcp.c, tcp_in.c, tcp.h: changes for task #7675 "Enable to refuse data on a TCP_EVENT_RECV call". Important, behavior changes for the tcp_recv callback (see rawapi.txt). 2008-01-14 21:07:08 +00:00
fbernon
52e6922e5a ip.c: Integrate patch #6369" ip_input : checking before realloc". 2008-01-14 20:53:23 +00:00
fbernon
82ddf82866 Minor change: add comment 2008-01-12 16:46:40 +00:00
fbernon
55bcc20deb tcpip.h, tcpip.c, api.h, api_lib.c, api_msg.c, sockets.c: replace the field netconn::sem per netconn::op_completed like suggested for the task #7490 "Add return value to sys_mbox_post". 2008-01-12 11:52:21 +00:00
fbernon
9906e4c984 api_msg.c, opt.h: replace DEFAULT_RECVMBOX_SIZE per DEFAULT_TCP_RECVMBOX_SIZE, DEFAULT_UDP_RECVMBOX_SIZE and DEFAULT_RAW_RECVMBOX_SIZE (to optimize queues sizes), like suggested for the task #7490 "Add return value to sys_mbox_post". 2008-01-11 23:50:10 +00:00
jifl
886cfbe12d Minor spelling typos and formatting fixes. 2008-01-11 14:28:58 +00:00
fbernon
4e40fee1db tcpip.h, tcpip.c: add tcpip_callback_with_block function for the task #7490 "Add return value to sys_mbox_post". tcpip_callback is always defined as "blocking" ("block" parameter = 1). 2008-01-10 21:47:52 +00:00
fbernon
bceff76c70 tcpip.h, tcpip.c, api.h, api_lib.c, api_msg.c, sockets.c: replace the field netconn::mbox (sys_mbox_t) per netconn::sem (sys_sem_t) for the task #7490 "Add return value to sys_mbox_post". 2008-01-10 21:34:25 +00:00
jifl
b333b7c9dc * opt.h, ip.c: Rename IP_OPTIONS define to IP_OPTIONS_ALLOWED to avoid
conflict with Linux system headers.
2008-01-09 10:05:23 +00:00
fbernon
de4b9b584c Fix DHCP build problem. 2008-01-06 22:07:03 +00:00
jifl
bf924118de * dhcp.c: fix bug #19927: "DHCP NACK problem" by clearing any existing set IP
address entirely on receiving a DHCPNAK, and restarting discovery.
2008-01-06 21:09:11 +00:00
goldsimon
a41f113b8f Added function netconn_free(), which deallocates all mboxes and frees the netconn (to be used from different places) - the PCB is not freed! 2008-01-06 14:28:04 +00:00
fbernon
5941b3c86e sys_arch.txt, api.h, api_lib.c, api_msg.h, api_msg.c, tcpip.c, sys.h, opt.h: Introduce changes for task #7490 "Add return value to sys_mbox_post" with some modifications in the sys_mbox api: sys_mbox_new take a "size" parameters which indicate the number of pointers query by the mailbox. There is three defines in opt.h to indicate sizes for tcpip::mbox, netconn::recvmbox, and for the netconn::acceptmbox. Port maintainers, you can decide to just add this new parameter in your implementation, but to ignore it to keep the previous behavior. The new sys_mbox_trypost function return a value to know if the mailbox is full or if the message is posted. Take a look to sys_arch.txt for more details. This new function is used in tcpip_input (so, can be called in an interrupt context since the function is not blocking), and in recv_udp and recv_raw. 2008-01-05 21:10:32 +00:00
fbernon
caa1834b70 Minor changes in lwip folder: fix some warnings. 2008-01-05 00:13:33 +00:00
fbernon
c61262d839 Minor changes in lwip folder: fix some warnings. 2008-01-04 23:24:05 +00:00
fbernon
9c4daa312d Minor changes in lwip folder: fix some warnings, coding style, and rename "internal" netconn_alloc function. 2008-01-04 23:07:44 +00:00
fbernon
32005617b9 rawapi.txt, api.h, api_lib.c, api_msg.h, api_msg.c, sockets.c, tcp.h, tcp.c, tcp_in.c, init.c, opt.h: rename backlog options with TCP_ prefix, limit the "backlog" parameter in an u8_t, 0 is interpreted as "smallest queue", add documentation in the rawapi.txt file. 2008-01-04 22:18:27 +00:00
fbernon
1dfa246674 Minor changes: fix some PPP traces. 2008-01-03 20:22:14 +00:00
jifl
7e616ea71c * core/ipv4/ip.c (ip_input): Rename ipsrcchecking -> check_ip_src, to make
purpose clearer.
2008-01-03 17:49:25 +00:00
kieranm
99afb15ced Add persist timer 2007-12-31 13:34:47 +00:00
fbernon
22e2540eb6 autoip.c, etharp.c: ip_addr.h: Integrate patch #6348: "Broadcast ARP packets in autoip". The change in etharp_raw could be removed, since all calls to etharp_raw use ethbroadcast for the "ethdst_addr" parameter. But it could be wrong in the future. 2007-12-31 13:22:03 +00:00
fbernon
8d39b1a152 ip.c: Fix bug #21846 "LwIP doesn't appear to perform any IP Source Address Filtering" reported by Tom Evans. 2007-12-30 01:09:11 +00:00
goldsimon
1ed34774c8 tcp.h, opt.h, api.h, api_msg.h, tcp.c, tcp_in.c, api_lib.c, api_msg.c, sockets.c, init.c: task #7252: Implement TCP listen backlog: Warning: raw API applications have to call 'tcp_accepted(pcb)' in their accept callback to keep accepting new connections. 2007-12-21 16:47:56 +00:00
goldsimon
48e62e25e9 sys.h, api_lib.c, api_msg.c, sockets.c: fix bug #21698: "netconn->recv_avail is not protected" by using new macros for interlocked access to modify/test netconn->recv_avail. 2007-12-21 14:59:10 +00:00
kieranm
1cb470662b Whitespace fix. 2007-12-20 15:05:09 +00:00
kieranm
add4874801 2007-12-20 Kieran Mansley (based on patch from Oleg Tyshev)
* tcp_in.c: fix bug# 21535 (nrtx not reset correctly in SYN_SENT stat)e
2007-12-20 14:58:43 +00:00
kieranm
8cc32bc29c 2007-12-20 Kieran Mansley (based on patch from Per-Henrik Lundbolm)
* tcp.c, tcp_in.c, tcp_out.c, tcp.h: fix bug #20199 (better handling
    of silly window avoidance and prevent lwIP from shrinking the window)
2007-12-20 14:51:35 +00:00
fbernon
fc2d28b851 Minor changes in PPP (coding style, tabs, idents...) 2007-12-19 20:47:22 +00:00
goldsimon
a3ef33c56f Removed debug code 2007-12-16 16:24:10 +00:00
goldsimon
ba4254231e Corrected assert when netconn_new_* fails 2007-12-16 16:15:08 +00:00
fbernon
2b54da5070 api_msg.c, err.h, err.c, sockets.c, dns.c, dns.h: replace "enum dns_result" by err_t type. Add a new err_t code "ERR_INPROGRESS". 2007-12-13 23:06:49 +00:00
goldsimon
d2fa5c91a7 Fix bug #21699: segment leak in ooseq processing when last data packet was lost (free last segment if FIN is already received) 2007-12-13 20:24:39 +00:00
fbernon
4653974c2a Minor change: move DNS_MSG_SIZE in opt.h, add comments. 2007-12-12 19:22:20 +00:00
fbernon
de11e7fd75 dns.h, dns.c, opt.h: move DNS options to the "right" place. Most visibles are the ones which have ram usage. 2007-12-12 17:56:03 +00:00
fbernon
1dd1064051 Fix err_stderr[] table with new err.h defines. 2007-12-12 08:25:23 +00:00
fbernon
ac10470643 netdb.c: add a LWIP_DNS_API_HOSTENT_STORAGE option to decide to use a static set of variables (=0) or a local one (=1). In this last case, your port should provide a function "struct hostent* sys_thread_hostent( struct hostent* h)" which have to do a copy of "h" and return a pointer ont the "per-thread" copy. 2007-12-05 23:00:02 +00:00
goldsimon
8d3d08e814 fix bug #21699 (segment leak in ooseq): add assert that all segment lists are empty in tcp_pcb_remove before setting pcb to CLOSED state; don't directly set CLOSED state from LAST_ACK in tcp_process 2007-12-04 20:41:12 +00:00
fbernon
3f96a15fd4 Minor changes (tabs) 2007-12-03 21:44:51 +00:00
goldsimon
22f51f953b Added short comment in file description about how to handle MEM_USE_POOLS / MEM_LIBC_MALLOC 2007-12-03 18:01:28 +00:00
goldsimon
f3f7bd00e5 ip_input: check if a packet is for inp first before checking all other netifs on netif_list (speeds up packet receiving in most cases) 2007-12-03 17:55:01 +00:00
fbernon
a72e4a406f Minor changes: coding style (tabs, ident, etc...). 2007-12-02 23:58:11 +00:00
fbernon
2fe1254aae Minor changes: coding style (tabs, ident, etc...). 2007-12-02 23:38:45 +00:00
fbernon
e4590b26fb Include a temporary sample of queue.h to fix build. 2007-12-02 23:33:58 +00:00
fbernon
325d6e7cfa Minor changes: coding style (tabs, ident, etc...). 2007-12-02 23:24:59 +00:00
fbernon
6bce832060 Minor changes: coding style (tabs, ident, etc...). 2007-12-02 22:56:19 +00:00
fbernon
37a5a87057 Minor changes: coding style (tabs, ident, etc...). 2007-12-02 22:35:55 +00:00
fbernon
865f6eb5f3 Changes for coding style (typo, use LINK_STATS_INC, tabs, ident, etc...). Be careful, even if this change is minor, there is lot of lines modified, so, an error is always possible (I hope there is no problems). 2007-12-02 20:38:02 +00:00
fbernon
dde6ddfd7c process "localhost" name in dns_gethostbyname 2007-12-02 17:15:28 +00:00
goldsimon
47d8d69b81 fix bug #21654: exclude definition of struct timeval from #ifndef FD_SET. If including <sys/time.h> for system-struct timeval, LWIP_TIMEVAL_PRIVATE now has to be set to 0 in lwipopts.h 2007-12-02 15:24:02 +00:00
goldsimon
df1b7ea311 Minor fix: #include "lwip/api.h" was missing to compile cleanly 2007-12-02 15:18:08 +00:00
goldsimon
113a52d091 fix bug #21656 (recvmbox problem in netconn API): always allocate a recvmbox in netconn_new_with_proto_and_callback. For a tcp-listen netconn, this recvmbox is later freed and a new mbox is allocated for acceptmbox. This is a fix for thread-safety and allocates all items needed for a netconn when the netconn is created. 2007-12-02 14:53:50 +00:00
goldsimon
081e4d9209 Minor change: use goto instead of redundant code to return on error in dhcp_rev(). 2007-12-02 14:40:32 +00:00
fbernon
e5a98b6a5b Minor changes: fix some problems with PPPoE include path, add small comments in slip.c (unusual octal values?) 2007-11-30 17:22:20 +00:00
fbernon
2942157ca4 Minor changes: dnsserver initialization with DNS_SERVER_ADDRESS in dns_init 2007-11-30 16:40:46 +00:00
goldsimon
6746beb2a3 Compacted code: moved the code creating a netconn (without pcb) from netconn_new_with_proto_and_callback to new (synchroneous) function netconn_alloc_with_proto_and_callback and call this function from netconn_new_with_proto_and_callback and accept_function. 2007-11-30 12:54:10 +00:00
goldsimon
92aa004b75 connect the UDP pcb to the DNS server (IPaddress and port) to receive faster (unconnected pcbs are very inefficient in udp_input) 2007-11-30 12:46:30 +00:00
goldsimon
b28cd02149 task #7497: Sort lists (pcb, netif, ...) for faster access UDP: move a (connected) pcb selected for input to the front of the list of pcbs so that it is found faster next time. Same for RAW pcbs that have eaten a packet. 2007-11-30 09:44:18 +00:00
goldsimon
cedd5c21e6 first attempt to fix bug #21655 (DHCP doesn't work reliably with multiple netifs): if LWIP_DHCP is enabled, UDP packets to DHCP_CLIENT_PORT are passed to netif->dhcp->pcb only (if that exists) and not to any other pcb for the same port (only solution to let UDP pcbs 'bind' to a netif instead of an IP address) 2007-11-30 08:55:15 +00:00
fbernon
b714cd5f4b First fix for bug #21664 "PPP code is broken". 2007-11-29 22:19:56 +00:00
goldsimon
788892ee7c Minor coding style changes 2007-11-28 21:44:17 +00:00
goldsimon
1b07fecbf3 Introduced ETHARP_STATS 2007-11-28 21:25:06 +00:00
goldsimon
4a01122fb7 Use ICMP_STATS_INC instead of #if ICMP_STATS... 2007-11-28 21:21:06 +00:00
goldsimon
4211da00b3 Use IP_STATS_INC instead of #if IP_STATS... 2007-11-28 21:18:37 +00:00
goldsimon
7f3cff6e09 Use LINK_STATS_INC instead of #if LINK_STATS... 2007-11-28 21:15:55 +00:00
goldsimon
6e612e5def mem_malloc with MEM_USE_POOLS=1: if size > size of biggest pool and custom pools (in addition to the MEM_POOLs) were defined, the first custom pool was used instead of asserting 2007-11-28 18:24:08 +00:00
jgrubb
a7718b2ef3 Minor change: remove unused #define 2007-11-28 17:19:39 +00:00
jgrubb
472407c719 Fix typo (MEMP_POOL_START/END to FIRST/LAST) 2007-11-28 17:19:15 +00:00
goldsimon
f07c1cf874 fixed bug #21643 (udp_send/raw_send don't fail if netif is down) by letting ip_route only use netifs that are up. 2007-11-28 06:48:50 +00:00
jgrubb
ce7c311ecf Add two more sanity checks on memory settings 2007-11-28 00:11:05 +00:00
fbernon
499c63bd0a Fix macro ERR_IS_FATAL (else, no error is fatal). 2007-11-27 21:54:58 +00:00
goldsimon
03777ccb21 Changed error handling: ERR_MEM, ERR_BUF and ERR_RTE are seen as non-fatal, all other errors are fatal. netconns and sockets block most operations once they have seen a fatal error. 2007-11-27 21:15:44 +00:00
goldsimon
b4741332e0 Implemented new function udp_sendto_if which takes the netif to send as an argument (to be able to send on netifs that are down). 2007-11-27 20:13:16 +00:00
goldsimon
3874f5f5e8 Minor coding style changes 2007-11-27 19:55:31 +00:00
fbernon
8c19f9a57e Fix to be able to build SNMP with LWIP_ARP=0. It's not a perfect solution, but I put some @todo points to review them later. 2007-11-27 19:53:47 +00:00
goldsimon
f57c2424cf Fixed bug #21582: pcb->acked accounting can be wrong when ACKs arrive out-of-order 2007-11-26 19:08:39 +00:00
fbernon
181b68b01e Minor change (forgot last CRLF) 2007-11-26 10:24:36 +00:00
fbernon
93d5bed697 Minor change: add #if 0 / #endif in ethernetif.c skeleton to avoid false bug reports. 2007-11-26 10:23:40 +00:00
goldsimon
5743b11925 Check state == CLOSED in tcp_bind and tcp_connect to prevent binding/connecting twice (using LWIP_ERROR: can be disabled) 2007-11-25 18:37:34 +00:00
goldsimon
4dcfdac2f5 initialize netconn->socket to -1 instead of 0 since 0 is a valid socket! 2007-11-25 16:13:56 +00:00
goldsimon
9343b767f8 lock event_callback against lwip_accept for data that arrives right away after an accept (before lwip_accept has processed the new conn) 2007-11-25 16:04:38 +00:00
fbernon
77d9233427 Minor change (redundant code) 2007-11-25 15:32:29 +00:00
goldsimon
f63a3c1f62 Added an explaining comment for the line 'nsock->rcvevent += -1 - newconn->socket;' in lwip_accept 2007-11-25 14:33:23 +00:00
goldsimon
511cdfb951 Minor coding style changes, added some comments 2007-11-25 14:23:59 +00:00
goldsimon
e1f49d990b Fix some warnings discovered by compiling the unixsim under cygwin (gcc pedantic) 2007-11-25 13:57:05 +00:00
goldsimon
1b208d0954 dhcp_unfold_reply() uses pbuf_copy_partial instead of its own copy algorithm; corrected some assert messages 2007-11-25 11:51:44 +00:00
goldsimon
4ac4d56b53 Added documentation / minor code layout changes 2007-11-25 10:43:28 +00:00
goldsimon
c7a0f32c98 Back to old alloc_socket(), lwip_accept had a bug in last revision 2007-11-25 10:04:04 +00:00
goldsimon
be0686d905 Added some more comments and function documentation 2007-11-25 10:01:22 +00:00
fbernon
9940b049ec Minor changes (documentation). 2007-11-25 00:28:06 +00:00
fbernon
3d9c76a69c Minor change (doxygen tags) 2007-11-24 22:13:25 +00:00
goldsimon
7797ada1f5 Added documentation 2007-11-24 21:19:47 +00:00
goldsimon
8cfd923aaa Added some documentation (mainly what is unimplemented in contrast to 'std-BSD'), alloc_socket returns the sock pointer directly (for speedup) 2007-11-24 17:39:53 +00:00
goldsimon
c86b446d4c Moved lwip_gethostbyname from sockets.c to the new file netdb.c; included lwip_getaddrinfo. 2007-11-24 16:12:02 +00:00
goldsimon
32a09370e1 tcpip.h was not compilable with both NO_SYS and LWIP_NETCONN set to 0 (include sys.h was missing) 2007-11-24 14:50:26 +00:00
fbernon
32c6893081 Minor changes (typo and wrong defines names in sanity checks) 2007-11-22 10:17:16 +00:00
goldsimon
95425552d7 Implemented calculating the effective send-mss based on the MTU of the netif used to send. Enabled by default. Disable by setting LWIP_CALCULATE_EFF_SEND_MSS to 0. This fixes bug #21535. 2007-11-21 18:37:23 +00:00
goldsimon
dc515c7ad3 Fixed bug #20287: tcp_output_nagle sends too early. This fixes the nagle algorithm; nagle now also works for all raw API applications and has to be explicitly disabled with 'tcp_pcb->flags |= TF_NODELAY' 2007-11-21 17:59:03 +00:00
fbernon
c31b405af6 Minor changes in DNS client. 2007-11-20 21:37:04 +00:00
goldsimon
e7483f2e64 Added return value comments to netconn_gethostbyname 2007-11-20 21:23:24 +00:00
goldsimon
9a524dac86 Adopted lwip_gethostbyname and lwip_gethostbyname_r to the new return values of dns_gethostbyname/netconn_gethostbyname 2007-11-20 21:22:45 +00:00
goldsimon
b3c52f574a Added function documentation to dns.c, removed function documentation from dns.h (functions should be documented where they are implemented!), dns_table_entry doesn't have to be packed (slower, bigger code for most machines), converted dns_init to return void, dns_table is implicitly initialized to zero, dns_lookup can be static, dns_send returns correct error values, added some asserts, compacted dns_recv using some (ugly) gotos, compacted dns_gethostbyname by combining the same return value 2007-11-20 20:28:01 +00:00
fbernon
f58515b51e api_msg.c, dns.h, dns.c: Implement DNS_DOES_NAME_CHECK option (check if name received match the name query), implement DNS_USES_STATIC_BUF (the place where copy dns payload to parse the response), return an error if there is no place for a new query, and fix some minor problems. 2007-11-19 22:42:01 +00:00
fbernon
da4df1f414 Fix DNS client TTL processing. 2007-11-18 21:30:45 +00:00
fbernon
7f0640b040 Minor changes on DNS. 2007-11-18 21:04:53 +00:00
fbernon
8c0e6de00a fix DNS problem with pbuf chain. 2007-11-18 20:54:44 +00:00
fbernon
8ff1194b6a Changes on DNS client. Add multiples dns servers support. 2007-11-18 20:30:12 +00:00
goldsimon
9dd4ad6c1f Added thread-safe function gethostbyname_r (as in glibc) 2007-11-18 16:36:34 +00:00
fbernon
4e398e2aa9 Minor changes on DNS client. Coding style & add "response" checking 2007-11-18 15:51:34 +00:00
fbernon
92401faa72 Minor changes on DNS client. Note that "compressed answers are fixed". 2007-11-18 15:01:45 +00:00
fbernon
edc46281a4 Minor changes on DNS client. 2007-11-18 14:19:27 +00:00
goldsimon
6c8b3e3b58 Deleted old inet.c/inet6.c files 2007-11-16 19:32:19 +00:00
goldsimon
1faf0ab9e3 Moved inet files into ipv4/ipv6 directory; splitted inet.c/inet.h into inet and chksum part; changed includes in all lwIP files as appropriate 2007-11-16 19:31:10 +00:00
goldsimon
e6ec23d7cc Added sequential (socket API) function gethostbyname and the struct hostent it uses 2007-11-16 17:29:30 +00:00
goldsimon
e2cd201f6a Added sequential dns resolver function for netconn api (netconn_gethostbyname) 2007-11-16 17:16:17 +00:00
goldsimon
7e447c83fb Turned all hostname variables and parameters into (const char*) 2007-11-16 17:08:03 +00:00
fbernon
0c0e8d6544 opt.h, init.c, tcpip.c, dhcp.c, dns.h, dns.c: add DNS client for simple name requests with RAW api interface. Initialization is done in lwip_init() with build time options. DNS timer is added in tcpip_thread context. DHCP can set DNS server ip addresses when options are received. You need to set LWIP_DNS=1 in your lwipopts.h file (LWIP_DNS=0 in opt.h). DNS_DEBUG can be set to get some traces with LWIP_DEBUGF. Sanity check have been added. There is a "todo" list with points to improve. 2007-11-14 23:27:13 +00:00
fbernon
a4d14722f3 sockets.c, api.h, api_lib.c, api_msg.h, api_msg.c: Fixed bug #20900. Now, most of the netconn_peer and netconn_addr processing is done inside tcpip_thread context in do_getaddr. 2007-11-12 22:39:24 +00:00
goldsimon
8020ba2dc5 tcp_send_ctrl(): call tcp_enqueue with the new flag TCP_WRITE_FLAG_COPY instead of 1 2007-11-12 19:38:25 +00:00
goldsimon
21bbc9a81a Fixed bug: assert fired when MEMP_ARP_QUEUE was empty (which can happen any time). Now the packet simply isn't enqueued when out of memory. 2007-11-10 17:41:46 +00:00
goldsimon
bfe24b138d Patch #6215: added ifAdminStatus write support (if explicitly enabled by defining SNMP_SAFE_REQUESTS to 0); added code to check link status for ifOperStatus if LWIP_NETIF_LINK_CALLBACK is defined. 2007-11-06 20:53:37 +00:00
goldsimon
f3dbd986cb Task #7410: Removed the need to include core header files in api.h (ip/tcp/udp/raw.h) to hide the internal implementation from netconn api applications. 2007-11-06 20:31:28 +00:00
fbernon
ecce865cfe api.h, api_lib.c, api_msg.c, sockets.c, opt.h: add SO_RCVBUF option for UDP & RAW netconn. You need to set LWIP_SO_RCVBUF=1 in your lwipopts.h (it's disabled by default). Netconn API users can use the netconn_recv_bufsize macro to access it. This is a first release which have to be improve for TCP. Note it used the netconn::recv_avail which need to be more "thread-safe" (note there is already the problem for FIONREAD with lwip_ioctl/ioctlsocket). 2007-11-02 10:37:08 +00:00
fbernon
4a6f60937a Minor change, add comment for "apiflags" parameters. 2007-11-01 19:38:01 +00:00
fbernon
cbe9b050a9 sockets.h, sockets.c, api.h, api_lib.c, api_msg.h, api_msg.c, tcp.h, tcp_out.c: Integrate "patch #6250 : MSG_MORE flag for send". MSG_MORE is used at socket api layer, NETCONN_MORE at netconn api layer, and TCP_WRITE_FLAG_MORE at raw api layer. This option enable to delayed TCP PUSH flag on multiple "write" calls. Note that previous "copy" parameter for "write" APIs is now called "apiflags". 2007-11-01 17:37:50 +00:00
goldsimon
2d5908f4de Fixed bug #21494: The send mss (pcb->mss) is set to 536 (or TCP_MSS if that is smaller) as long as no MSS option is received from the remote host. 2007-11-01 16:53:43 +00:00
goldsimon
298d5cf042 Fixed bug #21491: The MSS option sent (with SYN) is now based on TCP_MSS instead of pcb->mss (on passive open now effectively sending our configured TCP_MSS instead of the one received). 2007-11-01 16:23:32 +00:00
goldsimon
853765954e Fixed bug #21181: On active open, the initial congestion window was calculated based on the configured TCP_MSS, not on the MSS option received with SYN+ACK. 2007-11-01 15:51:43 +00:00
goldsimon
7a99d73092 Added some explaining comments. 2007-10-28 17:43:21 +00:00
fbernon
7077d51f1f api.h, api_lib.c, api_msg.c: Add macro API_EVENT in the same spirit than TCP_EVENT_xxx macros to get a code more readable. It could also help to remove some code (like we have talk in "patch #5919 : Create compile switch to remove select code"), but it could be done later. 2007-10-24 12:09:18 +00:00
goldsimon
270c7c1110 Removed check for conn->err for functions whose counterparts in api_msg.c also do the check (1. remove redundant code, 2. check is better done in tcpip thread context) 2007-10-22 20:01:16 +00:00
goldsimon
2d3a64815f Minor coding style fixes, added comment 2007-10-22 19:59:52 +00:00
fbernon
86dc53b72a Minor change (coding style, #if/#endif to include icmp.h is not necessary) 2007-10-16 07:11:35 +00:00
fbernon
649d43c2c5 Minor change (define DHCP_COARSE_TIMER_MSECS - using DHCP_COARSE_TIMER_SECS - to use milliseconds like all others timers) 2007-10-15 21:31:42 +00:00
goldsimon
6d9b44e243 IP_REASSEMBLY: send ICMP time exceeded when discarding datagrams for which the first fragment was received; try to keep the header of the first (octet 0) fragment; combined code to make it smaller; fixed bug in timer: when freeing packets, counter was not updated correctly 2007-10-15 19:33:16 +00:00
goldsimon
e864ba6c91 IP_REASSEMBLY: Changed 'packet' to 'datagram' to match the names used in the RFCs 2007-10-15 19:28:09 +00:00
goldsimon
0686380302 Removed bug on memory failure introduced 3 months ago in rev 1.34 (input pbuf was freed on puf_alloc failure) 2007-10-15 19:18:02 +00:00
fbernon
282e9ead17 Minor change (sanity check for MEMP_NUM_REASSDATA only done if IP_REASSEMBLY=1) 2007-10-12 06:50:16 +00:00
goldsimon
1f08a5e5f5 Added code to free the oldest packets if the IP_REASS_MAX_PBUFS limit is reached or MEMP_REASSDATA is empty. 2007-10-11 19:49:06 +00:00
goldsimon
c41508cc8d Added check that MEMP_NUM_REASSDATA is bigger than IP_REASS_MAX_PBUFS (because each MEMP_NUM_REASSDATA has one pbuf at least!) 2007-10-11 19:26:04 +00:00
goldsimon
187df4464e Added description for MEMP_NUM_REASSDATA and changed the default value to 5. 2007-10-11 19:24:59 +00:00
goldsimon
c94d640e2a Gave the parameters of pbuf_cat() and pbuf_chain() better names to make the use more clear. 2007-10-11 19:24:23 +00:00
fbernon
cf998b7bf8 Minor fix (remove warning) 2007-10-10 08:13:58 +00:00
fbernon
ebd167b658 Add sanity checking on TCP_MAXRTX and TCP_SYNMAXRTX 2007-10-09 20:48:28 +00:00
goldsimon
c13ec867c9 Forgot two explicit initializations... 2007-10-09 20:00:55 +00:00
goldsimon
199648ff37 Changed initialization: many init functions are not needed any more since we now rely on the compiler initializing global and static variables to zero! 2007-10-09 19:59:56 +00:00
goldsimon
536f2e42d2 Fixed UDPLite receive: checksum was calculated wrong if checksum coverage != tot_len 2007-10-09 19:43:29 +00:00
goldsimon
0f9799d7e0 Added todo: free the oldest entry when the MEMP_REASSDATA pool is empty or the IP_REASS_MAX_PBUFS limit is reached 2007-10-09 19:31:54 +00:00
goldsimon
b1a4b00091 Preprocessor statements have to start at the beginning of a line for old compilers! 2007-10-09 19:30:17 +00:00
goldsimon
c1c9983cfe Removed <warning: potential uninitialized reference to
"buf" in function "lwip_recvfrom">
2007-10-09 19:29:54 +00:00
goldsimon
8980c3f74e Typo in chain_frag_into_packet_and_validate (but obviously worked anyway...) 2007-10-09 06:13:12 +00:00
goldsimon
418f57dd6a Removed type conversion warning in debug statement. 2007-10-08 19:06:58 +00:00
goldsimon
9ef005454a lfree was not updated in mem_realloc! 2007-10-08 18:39:44 +00:00
fbernon
afad35a8ac Minor change (add a default value to tune for MEMP_NUM_REASSDATA in opt.h) 2007-10-08 07:39:24 +00:00
goldsimon
2ca113a218 Fixed UDPLite SENDING: Checksum was always generated too short and also was generated wrong if checksum coverage != tot_len. 2007-10-07 20:19:23 +00:00
fbernon
911ee4d9f9 Minor change (coding style) 2007-10-07 17:41:21 +00:00
fbernon
87e16a8f47 sockets.c, api.h, api_lib.c: First step to fix "bug #20900 : Potential crash error problem with netconn_peer & netconn_addr". VERY IMPORTANT: this change cause an API breakage for netconn_peer, since a parameter type change. Any compiler should cause an error without any changes in yours netconn_peer calls (so, it can't be a "silent change"). It also reduce a little bit the footprint for socket layer (lwip_getpeername & lwip_getsockname use now a common lwip_getaddrname function since netconn_peer & netconn_addr have the same parameters). 2007-10-07 17:26:54 +00:00
goldsimon
e561c7b49d Added check for overlapping or duplicate fragments. ip_reass_init() is not needed any more (the check is done in chain_frag_into_packet_and_validate()). 2007-10-07 11:52:32 +00:00
goldsimon
8cd65eaf46 Check for TCP_SND_QUEUELEN overflow. 2007-10-07 11:27:45 +00:00
goldsimon
b7ef6077df Changed IP_REASSEMBLY to enqueue the received pbufs so that multiple packets can be reassembled simultaneously and no static reassembly buffer is needed. 2007-10-06 15:24:43 +00:00
goldsimon
cb71d6d393 Moved ethernet_input from tcpip.c to etharp.c so all netifs (or ports) can use it. 2007-10-05 14:00:48 +00:00
fbernon
79c00be516 netifapi.h, netifapi.c: add function netifapi_netif_set_default. Change the common function to reduce a little bit the footprint (for all functions using only the "netif" parameter). 2007-10-05 13:34:48 +00:00
fbernon
949efb414a netifapi.h, netifapi.c: add functions netifapi_netif_set_up, netifapi_netif_set_down, netifapi_autoip_start and netifapi_autoip_stop. Use a common function to reduce a little bit the footprint (for all functions using only the "netif" parameter). 2007-10-03 16:54:27 +00:00
jifl
5dd1256769 Small tweak: clarify use of link speed in comments for NETIF_INIT_SNMP. 2007-10-03 09:10:28 +00:00
fbernon
c52ef1d2b3 Minor changes for debug (indent, and set LWIP_DBG_TYPES_ON to LWIP_DBG_ON to have all traces selected display per default, in the same spirit that LWIP_DBG_MIN_LEVEL is set per default to LWIP_DBG_LEVEL_OFF) 2007-09-22 11:16:07 +00:00
fbernon
c7e91d3302 Minor change, sys_prot_t is undefined is NO_SYS=1 2007-09-21 21:23:39 +00:00
jifl
c1bbcf5ed3 Add further checking that MEMP_NUM_SYS_TIMEOUT is high enough 2007-09-21 14:39:03 +00:00
fbernon
87c5a61d07 Minor changes by Andrew Dennison: add sanity check, improve debug messages for memp, fix some warnings... 2007-09-21 12:36:35 +00:00
goldsimon
0aa3d89134 Fixed bug #21080 (tcp_bind without check pcbs in TIME_WAIT state) by checking tcp_tw_pcbs also 2007-09-20 18:27:50 +00:00
goldsimon
0bf32b957d Fixed bug #21107 (didn't reset IP TTL in ICMP echo replies) 2007-09-19 06:12:34 +00:00
fbernon
2bdd916b06 udp.h, udp.c, sockets.c: Changes for "#20503 IGMP Improvement". Add IP_MULTICAST_IF option in socket API, and a new field "multicast_ip" in "struct udp_pcb" (for netconn and raw API users), only if LWIP_IGMP=1. Add getsockopt processing for IP_MULTICAST_TTL and IP_MULTICAST_IF. 2007-09-15 15:19:41 +00:00
kleshov
93c487fb75 Fix bug #21077: inaccuracy in calculation of lwip_stat.mem.used 2007-09-15 11:34:06 +00:00
fbernon
036d1aae50 Fix "bug #21075 : pbuf_realloc() use with PBUF_RAM and MEM_LIBC_MALLOC fails" signaled by Bill Florac 2007-09-15 06:53:16 +00:00
kleshov
f600a868f5 Indentation fix 2007-09-13 17:46:13 +00:00
fbernon
95f2d48ac4 Avoid to lost previous error codes in sockets.c and api_lib.c. 2007-09-13 15:03:42 +00:00
fbernon
8c847a85ae Add a sanity check for PPP, and a #if !NO_SYS/#endif for slipif_loop 2007-09-12 19:16:44 +00:00
fbernon
c265fa3331 Add missing #if/#endif to fix build problems with:
#define NO_SYS 0
#define LWIP_SOCKET 0
#define LWIP_NETCONN 0
2007-09-12 09:19:43 +00:00
fbernon
6aab0332e8 Add missing #if/#endif to fix build problems 2007-09-12 09:02:26 +00:00
fbernon
47ae677652 enable to remove SNMP timer (which consumne several cycles even when it's not necessary). snmp_agent.txt tell to call snmp_inc_sysuptime() each 10ms (but, it's intrusive if you use sys_timeout feature). Now, you can decide to call snmp_add_sysuptime(100) each 1000ms (which is bigger "step", but call to a lower frequency). Or, you can decide to not call snmp_inc_sysuptime() or snmp_add_sysuptime(), and to define the SNMP_GET_SYSUPTIME(sysuptime) macro. This one is undefined by default in mib2.c. SNMP_GET_SYSUPTIME is called inside snmp_get_sysuptime(u32_t *value), and enable to change "sysuptime" value only when it's queried (any direct call to "sysuptime" is changed by a call to snmp_get_sysuptime). 2007-09-10 18:50:44 +00:00
jgrubb
54e1b79ac5 Make pbuf_alloc a bit easier to read (change parameter name from "l" to "layer" and use LWIP_MIN instead of ternary operatory) 2007-09-10 18:25:15 +00:00
jgrubb
6afe1f3597 DHCP_DOES_ARP_CHECK is set to 1 by default -- the compile-time checks fail if DHCP is off... So this patch sets the default to be 1 only if both DHCP and ARP are set. 2007-09-10 18:12:13 +00:00
fbernon
4466260480 Remove CVS keyword 2007-09-10 07:56:16 +00:00
fbernon
1c6e31173d Add missing include files. 2007-09-09 22:34:55 +00:00
fbernon
939180c1a1 igmp.h, igmp.c, netif.h, netif.c, ip.c: To enable to have interfaces with IGMP, and others without it, there is a new NETIF_FLAG_IGMP flag to set in netif->flags if you want IGMP on an interface. igmp_stop() is now called inside netif_remove(). igmp_report_groups() is now called inside netif_set_link_up() (need to have LWIP_NETIF_LINK_CALLBACK=1) to resend reports once the link is up (avoid to wait the next query message to receive the matching multicast streams). 2007-09-09 20:46:33 +00:00
fbernon
8205737fdb sockets.c, ip.h, api.h, tcp.h: declare a "struct ip_pcb" which only contains IP_PCB. Add in the netconn's "pcb" union a "struct ip_pcb *ip;" (no size change). Use this new field to access to common pcb fields (ttl, tos, so_options, etc...). Enable to access to these fields with LWIP_TCP=0. 2007-09-07 23:47:02 +00:00
fbernon
75d4c9b446 Add some deprecated options from "task #7142 : Sanity check user-configurable values". 2007-09-07 23:28:02 +00:00
fbernon
e3cd1ac1f9 Minor changes (but in lot of files): add #if/#endif for options where they could miss. #if LWIP_xxx if always put after #include "lwip/opt.h" (note this one indirectly include cc.h). Move others includes inside #if/#endif block. 2007-09-07 23:01:59 +00:00
fbernon
027a70a415 Last sanity checking centralization for "task #7142 : Sanity check user-configurable values". 2007-09-07 17:59:30 +00:00
fbernon
3dfe5f993b DON'T WORRY, it's just a test on CVS keywords (I will remove) 2007-09-07 12:32:40 +00:00
fbernon
f5991dd9b6 DON'T WORRY, it's just a test on CVS keywords (I will remove) 2007-09-07 12:31:50 +00:00
fbernon
58c5d008d5 DON'T WORRY, it's just a test on CVS keywords (I will remove) 2007-09-07 09:23:51 +00:00
fbernon
ac1149156d several-files: replace some #include "arch/cc.h" by "lwip/arch.h", or simply remove it as long as "lwip/opt.h" is included before (this one include "lwip/debug.h" which already include "lwip/arch.h"). Like that, default defines are provided by "lwip/arch.h" if they are not defined in cc.h, in the same spirit than "lwip/opt.h" for lwipopts.h. 2007-09-06 16:43:43 +00:00
fbernon
ca866c0d7d Integrate "task #7272 : LWIP_ICMP option". The new option LWIP_ICMP enable/disable ICMP module inside the IP stack (enable per default). Be careful, disabling ICMP make your product non-compliant to RFC1122, but help to reduce footprint, and to reduce "visibility" on the Internet. 2007-09-05 17:20:45 +00:00
fbernon
90a3f88c08 Change parameters list for sys_thread_new (see "task #7252 : Create sys_thread_new_ex()"). Two new parameters have to be provided: a task name, and a task stack size. For this one, since it's platform dependant, you could define the best one for you in your lwipopts.h. For port maintainers, you can just add these new parameters in your sys_arch.c file, and but it's not mandatory, use them in your OS specific functions. 2007-09-05 16:14:28 +00:00
fbernon
c1f89c5640 Move some build time checkings inside init.c for task #7142 "Sanity check user-configurable values". 2007-09-05 13:19:25 +00:00
fbernon
5865a78c1e Minor fix (add some parenthesis where macro expansion could cause problems) 2007-09-05 10:18:39 +00:00
fbernon
d4616a7fc6 Replace mem_malloc call by memp_malloc, and use a new MEMP_NUM_IGMP_GROUP option (see opt.h to define the value). It will avoid potential fragmentation problems, use a counter to know how many times a group is used on an netif, and free it when all applications leave it. MEMP_NUM_IGMP_GROUP got 8 as default value (and init.c got a sanity check if LWIP_IGMP!=0). 2007-09-04 15:15:20 +00:00
fbernon
d794357504 Fix warnings inside sockets.c with "gcc" compilers. See "Description" in http://www.opengroup.org/onlinepubs/007908799/xns/syssocket.h.html : 2007-09-04 14:30:26 +00:00
fbernon
79b0484e20 Minor changes (fix some warnings like "function declaration isn't a prototype" and "no previous prototype for 'lwip_init'"...) 2007-09-04 13:51:48 +00:00
fbernon
62b4741b19 Changes for "#20503 IGMP Improvement". Initialize igmp_mac_filter to NULL in netif_add (this field should be set in the netif's "init" function). Use the "imr_interface" field (for socket layer) and/or the "interface" field (for netconn layer), for join/leave operations. The igmp_join/leavegroup first parameter change from a netif to an ipaddr. This field could be a netif's ipaddr, or "any" (same meaning than ip_addr_isany). 2007-09-03 14:53:18 +00:00
fbernon
327f06bbaf Replace "netif_default = NULL;" by "netif_set_default(NULL);" in netif_remove (do some processing, like for SNMP...) 2007-09-03 12:22:00 +00:00
fbernon
d7cd90b5b8 Add in igmp_joingroup & igmp_leavegroup a LWIP_ERROR checking on netif value. 2007-09-03 09:56:38 +00:00
fbernon
85fef90c94 Add enum snmp_ifType in snmp.h, and use it in network interfaces for NETIF_INIT_SNMP 2007-08-31 10:14:09 +00:00
fbernon
fca25479ad Minor fix (else, cause build error). Since SO_REUSE is always used in the code (even if the current code is not working), it is defined in opt.h with 0 as default value (it's normal). So, the error is not if it is defined, but if it is defined to 1. 2007-08-31 09:42:32 +00:00
fbernon
231d965bcb Minor fix (use ETHARP_HWADDR_LEN) 2007-08-31 09:02:53 +00:00
jgrubb
6c10282f9a Put back in SO_REUSE 2007-08-30 22:41:24 +00:00
jgrubb
cb399272fd Move deprecated options from opt.h to init.c 2007-08-30 22:33:55 +00:00
fbernon
245bce04d1 Add netbuf.h, netbuf.c, Change api.h, api_lib.c: #7249 "Split netbuf functions from api/api_lib". Now netbuf API is independant of netconn, and can be used with other API (application based on raw API, or future "socket2" API). Ports maintainers just have to add src/api/netbuf.c in their makefile/projects. 2007-08-30 16:55:10 +00:00
fbernon
3101bdf127 Add some others sanity checkings 2007-08-30 16:06:51 +00:00
fbernon
384ae9c407 Minor change (ident, remove comment, change trace text) 2007-08-30 15:53:15 +00:00
fbernon
c671f8e7ef Replace API programmation error checking for IGMP join/leave (ismulticast(addr)) by LWIP_ERROR checking. 2007-08-30 15:48:14 +00:00
jifl
f39b9c85fe Add further checks. Move compile-time checks out of LWIP_DEBUG ifdef 2007-08-30 15:33:51 +00:00
fbernon
ab36270885 igmp.h, igmp.c: Some changes to remove some redundant code, add some traces, and fix some coding style. 2007-08-30 14:20:54 +00:00
fbernon
bd65dd8098 init.c: Add first version of lwip_sanity_check for task #7142 "Sanity check user-configurable values". 2007-08-30 10:15:17 +00:00
fbernon
36b6f308e6 Minor fix (coding style, comments, spaces, endline...) 2007-08-30 09:14:28 +00:00
fbernon
cd208314e0 igmp.h, igmp.c, tcpip.c, init.c, netif.c: change igmp_init and add igmp_start. igmp_start is call inside netif_add. Now, igmp initialization is in the same spirit than the others modules. Modify some IGMP debug traces. 2007-08-29 21:12:32 +00:00
fbernon
da7b5135de Minor Fix (ident) 2007-08-29 20:50:53 +00:00
fbernon
cb3d2b327a Minor fix: replace C++ comments by C comments. 2007-08-29 09:25:17 +00:00
fbernon
48db3a3e92 Add init.h, init.c, Change opt.h, tcpip.c: Task #7213 "Add a lwip_init function" Add lwip_init function to regroup all modules initializations, and to provide a place to add code for task #7142 "Sanity check user-configurable values". Ports maintainers should remove direct initializations calls from their code, and add init.c in their makefiles. Note that lwip_init() function is called inside tcpip_init, but can also be used by raw api users since all calls are disabled when matching options are disabled. Also note that their is new options in opt.h, you should configure in your lwipopts.h (they are enabled per default). 2007-08-29 08:11:06 +00:00
fbernon
7182fb8fb0 tcpip.c: Fix TCPIP_MSG_INPKT processing: now, tcpip_input can be used for any kind of packets. These packets are considered like Ethernet packets (payload pointing to ethhdr) if the netif got the NETIF_FLAG_ETHARP flag. Else, packets are considered like IP packets (payload pointing to iphdr). 2007-08-29 07:51:20 +00:00
fbernon
d7da390ae9 Fix coding style (use #if and not #ifdef) for IPv6 2007-08-28 16:03:53 +00:00
fbernon
54c1025ec0 First fix for "bug #20900 : Potential crash error problem with netconn_peer & netconn_addr". Introduce NETCONN_LISTEN netconn_state and remove obsolete ones (NETCONN_RECV & NETCONN_ACCEPT). 2007-08-27 10:08:53 +00:00
jifl
5e7b7cba31 "Fix" a few more cases where Paradigm C++ may mis-compile 16-bit right shifts on 32-bit quantities 2007-08-27 01:59:52 +00:00
marcbou
180e6d2c75 Reset the callbacks and arg (conn) to NULL in do_close_internal(), because
TCP callbacks in api_msg.c can under certain circumstances be called with an
invalid conn pointer after the connection has been closed (and conn has been
freed).
2007-08-26 23:58:33 +00:00
fbernon
acbf25f2eb netif.h, netif.c: Integrate "patch #6163 : Function to check if link layer is up". Add a netif_is_link_up() function if LWIP_NETIF_LINK_CALLBACK option is set. 2007-08-25 10:43:19 +00:00
kieranm
7c90cc6aac inet.c Modify (acc >> 16) test to ((acc >> 16) != 0) to help buggy
compiler (Paradigm C++)
2007-08-24 14:31:53 +00:00
fbernon
261af8dc07 netif.h, netif.c, opt.h: Rename LWIP_NETIF_CALLBACK in LWIP_NETIF_STATUS_CALLBACK to be coherent with new LWIP_NETIF_LINK_CALLBACK option before next release. 2007-08-22 11:26:01 +00:00
fbernon
2f344268ff Minor fix (spaces and comment) 2007-08-22 11:00:02 +00:00
fbernon
42f3c24fc4 tcpip.h, tcpip.c, ethernetif.c, opt.h: remove options ETHARP_TCPIP_INPUT & ETHARP_TCPIP_ETHINPUT, now, only "ethinput" code is supported, even if the name is tcpip_input (we keep the name of 1.2.0 function). 2007-08-22 10:04:35 +00:00
fbernon
c4b97a1710 Forget to rename this line (pbuf->flgs->pbuf->flags) 2007-08-22 08:47:48 +00:00
fbernon
4f76bc42d7 Rename pbuf's "flgs" in "flags" (see in [lwip-devel] Last changes by Marc) 2007-08-20 19:15:43 +00:00
fbernon
fbd5600563 Force a build error if MEMP_NUM_TCPIP_MSG is always defined 2007-08-20 18:53:33 +00:00
fbernon
3259e2eac9 Replace PBUF_LINK_HLEN before PBUF_POOL_BUFSIZE, restore PPP options changed by Marc Boucher but lost with last Jared changes... 2007-08-20 17:05:01 +00:00
jgrubb
baca292f47 Task #7136: Fix bug of wrong file name for centralized mempool settings. 2007-08-20 16:42:16 +00:00
fbernon
8babf0ec73 Fix wrong define for both pool "struct tcpip_msg" + minor fix (coding style) 2007-08-20 16:25:15 +00:00
fbernon
c07d124d4b Minor change (fix comment) 2007-08-20 16:22:17 +00:00
marcbou
a0db1eaa32 Removed PBUF_FLAG_LINK_BROADCAST. 2007-08-17 22:23:42 +00:00
marcbou
dbd61d129d Fix potential pbuf leaks. 2007-08-17 22:15:24 +00:00
jgrubb
21b5fb5ddb Task #7143: Clean up opt.h. Made all the comment formats the same (uses Doxygen style), a couple minor reorderings. Changed a few of the default stats variables to depend on whether the modules were even used (i.e. #define TCP_STATS (LWIP_TCP) ). PPP options could still use some cleaning. 2007-08-17 18:31:05 +00:00
jgrubb
768843f1f0 Task #7136: Centralize mempool settings into new memp_std.h and optional user file lwippools.h. (Remove MEMP_POOL_SIZE/NUM flags, add new MEMP_USE_CUSTOM_POOLS option) 2007-08-17 18:18:58 +00:00
jgrubb
cc7d1226ee Task #7136: Centralize mempool settings into new memp_std.h and optional user file lwippools.h. 2007-08-17 17:49:17 +00:00
fbernon
8abafc54a6 Fix comment 2007-08-17 10:49:35 +00:00
fbernon
885695fa67 Minor changes (tabs) 2007-08-17 10:46:07 +00:00
fbernon
e0bf309bb5 Add raw_init in tcpip_init + minor changes (tabs, ident, coding style...) 2007-08-17 09:57:37 +00:00
marcbou
d907bcd57a lwip_recvfrom() tweaks. 2007-08-17 05:55:24 +00:00
marcbou
0167bbb89a Per Frederic's suggestion, renamed
[MEMP_[NUM_]]TCPIP_MSG to [MEMP_[NUM_]]TCPIP_MSG_API
and
    [MEMP_[NUM_]]TCPIP_MSG_INPUT to [MEMP_[NUM_]]TCPIP_MSG_INPKT.

Added defines in opt.h for temporary compatibility with older lwipopts.h.
2007-08-17 02:46:43 +00:00
marcbou
0471aaec52 Use enum pbuf_flag as pbuf_type.
Renumber PBUF_FLAG_*.
2007-08-17 02:09:43 +00:00
marcbou
18636a4df5 Fixed misplaced #endif. 2007-08-17 02:07:26 +00:00
fbernon
2be122875a Minor changes (tabs, ident, coding style...) 2007-08-17 00:30:27 +00:00
marcbou
c517f6daf9 Backed out lwip_close() change after discussion with Frederic. 2007-08-16 23:09:04 +00:00
marcbou
07223bf5ef Backed out last change to netconn_delete() after discussion with Frederic. 2007-08-16 23:06:42 +00:00
marcbou
7862ba583e Moved lwip/src/netif/ppp/ppp_oe.h to lwip/src/include/netif/ppp_oe.h 2007-08-16 21:12:24 +00:00
marcbou
8c10d91135 ethbroadcast now a shared global provided by etharp. 2007-08-16 20:52:59 +00:00
marcbou
c81d0f3393 fix ethernet_input() return code warning. 2007-08-16 20:50:43 +00:00
marcbou
0b8b9e8033 Changed // style comment to /* style */ comment. 2007-08-16 20:41:56 +00:00
marcbou
b73198d5ef Provide default value for MEMP_NUM_TCPIP_MSG_INPUT if not defined. 2007-08-16 20:39:29 +00:00
marcbou
4236699052 Split pbuf flags in pbuf type and flgs.
Improved lwip_recvfrom(). TCP push now propagated.
2007-08-16 20:22:15 +00:00
marcbou
75935ad251 Changed // style comments to /* style */ comments. 2007-08-16 20:17:50 +00:00
marcbou
a3c3f47e17 lwip_close(): call netconn_delete() under socksem to properly handle
concurrent closes.
2007-08-16 20:08:33 +00:00
marcbou
17f07a36ef netconn_delete(): unblock potentially waiting recv. 2007-08-16 20:03:23 +00:00
marcbou
557a0c7ae3 Removed TCPIP_MSG_ETHINPUT. TCPIP_MSG_INPUT now used for
both ETHARP_TCPIP_INPUT and  ETHARP_TCPIP_ETHINPUT.
2007-08-16 19:55:30 +00:00
marcbou
1b98df4a0d Added distinct memp (MEMP_TCPIP_MSG_INPUT) for input packets to prevent
floods from consuming all of MEMP_TCPIP_MSG and starving other message types.
2007-08-16 19:49:08 +00:00
marcbou
58bfb0458e Added PPPoE support to ethernet_input() 2007-08-16 19:16:03 +00:00
marcbou
95cbf95c50 Added mem_calloc(). 2007-08-16 18:37:15 +00:00
marcbou
0b4402ebc8 lwip_accept(): check netconn_peer() error return. 2007-08-16 18:29:37 +00:00
marcbou
d64b3f21e6 Initialize newconn->state to NETCONN_NONE in accept_function;
otherwise it was left to NETCONN_CLOSE and sent_tcp() could prematurely
close the connection.
2007-08-16 18:24:29 +00:00
marcbou
931fcfd0f5 Added PPPoE support and various PPP improvements. 2007-08-16 18:12:20 +00:00
kieranm
a6ca9aa306 * tcp_in.c: Fix for bug #19953 - correct TCP state machine when
* receiving FIN+ACK in SYN_RECV state
2007-08-16 15:57:31 +00:00
fbernon
40ef282982 Minor change: add in tcp_in.c in tcp_input(), some calls to handle error statistics (stats & snmp) 2007-08-14 18:01:34 +00:00
fbernon
9152d6671c Comments Fix for Doxygen documentation 2007-08-09 22:21:44 +00:00
fbernon
d057e95ce3 Minor Fix (remove unused USE_ROUTER_ALERT and some coding style) 2007-08-09 20:21:59 +00:00
fbernon
ac2932bac3 stats.h, stats.c, igmp.h, igmp.c, opt.h: Fix for bug #20503 : IGMP Improvement. Introduce IGMP_STATS to centralize statistics management. 2007-08-09 20:09:22 +00:00
fbernon
118331207b udp.c: Fix for bug #20503 : IGMP Improvement. Enable to receive a multicast packet on a udp pcb binded on an netif's IP address, and not on "any". 2007-08-09 18:34:03 +00:00
fbernon
7c104c8fbb igmp.h, igmp.c, ip.c: Fix minor changes from bug #20503 : IGMP Improvement. This is mainly on using lookup/lookfor, and some coding styles... 2007-08-09 16:53:47 +00:00
fbernon
11c94b6566 Minor fix (spaces) 2007-08-09 10:51:26 +00:00
jgrubb
c555b532a2 Add NETIF_LINK_CALLBACK into the netif_set_link_up/down functions 2007-08-08 18:22:08 +00:00
fbernon
fdc4c25e67 Minor fix (warnings on unused args, wrong type, cast u32_t to u16_t...) 2007-08-01 13:41:31 +00:00
fbernon
083134bc12 Minor fix (warning when LWIP_DEBUG is undefined) 2007-07-29 09:25:19 +00:00
fbernon
f1c4a9ebfa Minor fix (warning when LWIP_DEBUG is undefined) 2007-07-29 08:31:31 +00:00
fbernon
1edd2ed3db Minor fix on pbuf_init (fix warning) and use same coding style that mem.h, sys.h, tcp.h, etc... 2007-07-29 08:23:57 +00:00
fbernon
b8b04271b5 Minor fix (warning, linker helper) signaled by Bill Florac 2007-07-29 08:11:33 +00:00
jifl
f0b33f5ced Make pbuf_init() call be an empty macro for now 2007-07-27 15:06:03 +00:00
fbernon
42eead8f41 igmp.c: Fix bug #20595 to accept IGMPv3 "Query" messages. 2007-07-26 17:10:56 +00:00
goldsimon
33054a18db Added a better comment to explain why tcp_close doesn't care for the return value of tcp_output 2007-07-26 09:31:09 +00:00
goldsimon
f4036e8352 Another fix for bug #20021: by not returning an error if tcp_output fails in tcp_close, the code in do_close_internal gets simpler (tcp_output is called again later from tcp timers). 2007-07-25 19:24:27 +00:00
goldsimon
f9c30017b0 Fixed bug #20429: use the new pbuf_copy_partial instead of the old copy_from_pbuf, which illegally modified the given pbuf; Introduced pbuf_copy_partial, making netbuf_copy_partial use this function. 2007-07-25 18:53:45 +00:00
goldsimon
8be76ed450 tcp_enqueue: pcb->snd_queuelen didn't work for chaine PBUF_RAMs: changed snd_queuelen++ to snd_queuelen += pbuf_clen(p). 2007-07-25 08:46:41 +00:00
fbernon
328b25d561 Minor Fix: remove obsolete MEMP_NUM_API_MSG define and update comment 2007-07-25 07:46:44 +00:00