Commit Graph

1255 Commits

Author SHA1 Message Date
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
goldsimon
9eff9676e9 Fix bug #20506: Slow start / initial congestion window starts with 2 * mss (instead of 1 * mss previously) to comply with some newer RFCs and other stacks. 2007-07-25 07:31:29 +00:00
fbernon
a1d8335a8c Fix do_delconn when used with LWIP_TCPIP_CORE_LOCKING=1 on "non-TCP" connections... 2007-07-24 17:27:48 +00:00
fbernon
d5a174364a Minor fix: debug text inside ethernetif_input 2007-07-24 08:49:00 +00:00
goldsimon
62c3de30b9 Fix bug #20480: Check the pcb passed to tcp_listen() for the correct state (must be CLOSED). 2007-07-24 07:41:55 +00:00
goldsimon
ebcb46cd48 Included the mem_malloc pools in memp_names if MEM_USE_POOLS=1 2007-07-18 20:30:21 +00:00
goldsimon
1689361ff2 Another change for fixing bug #20478 (put the memp += MEMP_SIZE in another place) 2007-07-15 10:54:24 +00:00
jgrubb
eb998bda62 Bug fix #20478: memp_malloc returns NULL+MEMP_SIZE rather than NULL on a failed allocation 2007-07-14 00:07:43 +00:00
fbernon
116bcb9dfb opt.h, netif.h, netif.c, ethernetif.c: Add new configuration option to add a link callback in the netif struct, and functions to handle it. Be carefull for port maintainers to add the NETIF_FLAG_LINK_UP flag (like in ethernetif.c) if you want to be sure to be compatible with future changes... 2007-07-13 15:00:40 +00:00
fbernon
6a452951f5 api_msg.c: Fix bug #20318: api_msg "recv" callbacks don't call pbuf_free in all error cases. 2007-07-13 14:28:15 +00:00
fbernon
a891854ef5 Fix bug #20315: possible memory leak problem if tcp_listen failed, because current code doesn't follow rawapi.txt documentation. 2007-07-13 13:59:11 +00:00
fbernon
a2dffd430b Fix minor patch #5741 build error... 2007-07-13 13:12:07 +00:00
kieranm
4ac0580aa0 2007-07-13 Kieran Mansley
* src/core/tcp_in.c Apply patch#5741 from Oleg Tyshev to fix bug in
    out of sequence processing of received packets
2007-07-13 12:24:32 +00:00
fbernon
5d872b26a1 sockets.c: Fix a possible problem because any new socket can't be created during the "close" (which can be "long" since fix for bug #20021). 2007-07-04 21:13:25 +00:00
goldsimon
8d2c8065eb Removed old debug variables from pbuf_copy() 2007-07-04 16:43:54 +00:00
fbernon
bf176ed712 Minor fix (indent) 2007-07-03 21:27:59 +00:00
goldsimon
eb875de67e Added assertions where PBUF_RAM pbufs are used and an assumption is made that this pbuf is in one piece (i.e. not chained). These assumptions clash with the possibility of converting to fully pool-based pbuf implementations, where PBUF_RAM pbufs might be chained. 2007-07-03 20:28:35 +00:00
goldsimon
2a77b9fcc7 Bug in last version (fix to close problems): netconn thread might get active before calling its callback, so conn was already deallocated. 2007-07-03 20:20:33 +00:00
goldsimon
9a4a5b1816 Final fix for bug #20021 and some other problems when closing tcp netconns: removed conn->sem, less context switches when closing, both netconn_close and netconn_delete should safely close tcp connections. 2007-07-03 19:29:59 +00:00
fbernon
3a0ab861c2 ip.h, etharp.c: Fix warnings & errors about LWIP_NETIF_HWADDRHINT (perhaps compiler dependant) 2007-07-03 10:36:21 +00:00
goldsimon
fdc0d30337 #ifdef LWIP_NETIF_HWADDRHINT around IP_PCB.addr_hint 2007-07-03 08:09:50 +00:00
goldsimon
96e4ec4a15 Added option LWIP_NETIF_HWADDRHINT (default=off) to cache ARP table indices with each pcb instead of single-entry cache for the complete stack. 2007-07-02 20:41:22 +00:00
goldsimon
fa4b711495 Added some ASSERTS and casts to prevent warnings when assigning to smaller types. 2007-07-02 20:13:45 +00:00
goldsimon
0113b735ad Fixed a little cast-warning from u32_t to u16_t 2007-07-02 20:07:19 +00:00
goldsimon
d228ff0f43 Removed warning when assigning from u32_t to u16_t by casting to u16_t. 2007-07-01 16:04:35 +00:00
goldsimon
9abbb581c5 Changed tcp_pcb->snd_queuelen from u8_t to u16_t to prevent overflowing when sending many small packets with big send buffer, added assertions and oveflow checks for snd_queuelen. 2007-07-01 15:56:04 +00:00
goldsimon
d7c50f56d7 Fixed a wrong assert statement in etharp_query when ARP_QUEUEING=1 and packets should be queued. 2007-07-01 14:52:09 +00:00
fbernon
b6750de9e8 sockets.h, sockets.c: Implement MSG_PEEK flag for recv/recvfrom functions. 2007-06-30 13:24:11 +00:00
goldsimon
c91caa06d3 Set/get ARP hwlen and protolen in one piece. 2007-06-30 11:42:41 +00:00
goldsimon
6c3c184bc7 Added check to prevent tcp_pcb->snd_queuelen from overflowing. 2007-06-29 17:09:47 +00:00
fbernon
af71292aba Minor fix (extra spaces) 2007-06-29 13:37:33 +00:00
goldsimon
24e29cecae Fixed bug #20287: Fixed nagle algorithm (sending was done too early if a segment contained chained pbufs) 2007-06-28 20:05:38 +00:00
fbernon
ab4c3a326f autoip.c: replace most of rand() calls by a macro LWIP_AUTOIP_RAND which compute a "pseudo-random" value based on netif's MAC and some autoip fields. It's always possible to define this macro in your own lwipopts.h to always use C library's rand(). Note that autoip_create_rand_addr doesn't use this macro. 2007-06-28 18:05:38 +00:00
goldsimon
d73ca29a07 Fixed minor indentation fault 2007-06-28 10:29:13 +00:00
fbernon
d6fbe45296 netifapi.h, netifapi.c, tcpip.h, tcpip.c: Update code to handle the option LWIP_TCPIP_CORE_LOCKING, and do some changes to be coherent with last modifications in api_lib/api_msg (use pointers and not type with table, etc...) 2007-06-28 10:11:05 +00:00
fbernon
dd1cd5e491 sockets.c: process NETCONN_RAW connections with LWIP_TCPIP_CORE_LOCKING=1 2007-06-28 09:56:37 +00:00
goldsimon
2b02db2675 Remove warning in tcp_enqueue (cast from u32_t to u16_t) 2007-06-27 16:42:20 +00:00
goldsimon
6f93a8f091 Set the err_to_errno_table to be const 2007-06-26 17:38:52 +00:00
goldsimon
47074c897e Removed warning: LWIP_DEBUGF had wrong argument count 2007-06-26 08:12:15 +00:00
goldsimon
2270f0d172 Fixed bug #20259: struct udp_hdr was lacking the packin defines. 2007-06-26 07:32:17 +00:00
goldsimon
1b5d3466ba etharp_arp_input: stricter checking of hwtype, proto, hwlen & protolen allows us to leave some header fields like they are when sending ARP reply (only changing the addresses is needed) 2007-06-25 18:03:23 +00:00
goldsimon
dcc2247a90 Fixed bug #20253: icmp_dest_unreach was called with a wrong p->payload for udp packets with no matching pcb. 2007-06-25 17:30:16 +00:00
goldsimon
00b7aeb49b Fixed bug #20220: UDP PCB search in udp_input(): a non-local match could get udp input packets if the remote side matched. 2007-06-25 17:24:31 +00:00
goldsimon
4f5b781b88 Moved filling of ethernet header for outgoing IP packets into an extra function to reduce code size. 2007-06-25 17:20:10 +00:00
goldsimon
b51d1b79a3 Combined etharp_request with etharp_raw for both LWIP_AUTOIP =0 and =1 to remove redundant code. 2007-06-24 12:51:22 +00:00
goldsimon
4848de3a8e etharp_tmr function had a bug (pending entries were pending for too long) 2007-06-24 12:46:13 +00:00
goldsimon
88b1cebe1d Sorry, checked in some of my local changes with the LWIP_ERROR modification! 2007-06-23 13:09:58 +00:00
goldsimon
bb9e9e5480 Changed the expression of LWIP_ERROR to the same as for LWIP_ASSERT 2007-06-22 20:50:21 +00:00
goldsimon
786a7fbaf4 no-pool-big-enough was not correctly caught 2007-06-22 20:26:30 +00:00
goldsimon
0ce27296aa ASSERTS were using old MEM_ALIGN define, therefore, was not compilable without LWIP_NOASSERT defined 2007-06-22 20:23:26 +00:00
fbernon
a1d176b643 autoip.h/.c: change autoip_init & autoip_create_rand_addr to use netif's MAC address and tried_llipaddr to generate an "autoip"... 2007-06-22 18:54:34 +00:00
goldsimon
0c18e653e8 Introduced the option MEM_USE_POOLS to use 4 pools with different sized elements instead of a heap. This both prevents memory fragmentation and gives a higher speed at the cost of more memory consumption. Turned off by default. 2007-06-21 20:12:11 +00:00
goldsimon
065b8c945b Added ASSERT to check that lwip_send(to) is not called for length not fitting into u16_t (for UDP & RAW sockets) 2007-06-21 19:58:31 +00:00
goldsimon
f49fc35f55 Converted the length argument of netconn_write (and therefore also api_msg_msg.msg.w.len) from u16_t into int to be able to send a bigger buffer than 64K with one time (mainly used from lwip_send). 2007-06-21 19:32:26 +00:00
goldsimon
67795ad26e Corrected do_write for LWIP_TCPIP_CORE_LOCKING=1 2007-06-21 19:14:02 +00:00
goldsimon
2aef8bad55 Moved the nagle algorithm from netconn_write/do_write into a define (tcp_output_nagle) in tcp.h to provide it to raw api users, too. 2007-06-21 18:55:09 +00:00
goldsimon
9f05cabf87 Fixed bug #20021: Moved sendbuf-processing in netconn_write from api_lib.c to api_msg.c to also prevent multiple context-changes on low memory or empty send-buffer. 2007-06-21 18:40:21 +00:00
fbernon
4c07b1606c Minor changes: fix some comments for Doygen documentation 2007-06-21 07:17:29 +00:00
goldsimon
d3f0a3211d Changed etharp to use a defined hardware address length of 6 to avoid loading netif->hwaddr_len every time (since this file is only used for ethernet and struct eth_addr already had a defined length of 6). 2007-06-19 16:22:55 +00:00
fbernon
ec7333d406 Some changes for AutoIP integration in tcpip.c, and some comments. 2007-06-19 10:11:27 +00:00
fbernon
6a40426421 Minor fix: warning, type... for patch #5952 : Integration of AutoIP module 2007-06-18 21:45:34 +00:00
goldsimon
c9ebb895a1 Removed warning "empty body in an if statement" in tcp_receive() for LWIP_DEBUG=0 2007-06-18 20:08:31 +00:00
goldsimon
f66bbda8b1 Ooops, checked in a wrong (test-) version before! 2007-06-18 19:52:55 +00:00
goldsimon
da2d9f3733 Shortened some lines to ~80 2007-06-18 19:36:58 +00:00
goldsimon
9e0252b209 Corrected two formatters in LWIP_DEBUGF calls 2007-06-18 19:23:27 +00:00
goldsimon
531ea17088 Forgot to implement getsockopt for SO_NO_CHECK 2007-06-17 19:18:59 +00:00
fbernon
e89f5983be tcp_in.c: Fix bug #20126 : Zero ssthresh bug (by Per-Henrik Lundblom and Kieran Mansley). 2007-06-17 16:15:34 +00:00
goldsimon
6784fd64f3 Done some work on task #6933: converted some LWIP_ASSERTs to LWIP_ERROR to give back an error return value for LWIP_NOASSERT=1 2007-06-17 15:20:21 +00:00
goldsimon
ced2543be0 Done some work on task #6933: converted some LWIP_ASSERTs to LWIP_ERROR to give back an error return value for LWIP_NOASSERT=1 2007-06-17 14:39:50 +00:00
goldsimon
261e92c57b In accept_function, one LWIP_ERROR had a wrong expression (since it is inverted compared to LWIP_ASSERT...) 2007-06-17 14:38:32 +00:00
goldsimon
55bd48dc10 Always align PBUF_POOL_BUFSIZE, pbuf_init is not needed any more, minor changes to meet coding style requirements 2007-06-17 14:36:19 +00:00
goldsimon
96dc30dea2 Done some work on task #1549 (function documentation) 2007-06-17 12:18:11 +00:00
goldsimon
ea7b0052f3 Implemented socket options SO_NO_CHECK for UDP sockets to disable UDP checksum generation on transmit. 2007-06-17 11:46:30 +00:00
goldsimon
1db9013bc4 Done some work on task #1549 (function documentation) 2007-06-16 15:08:47 +00:00
goldsimon
060cbe15d6 Done some work on task #1549 (function documentation), added some LWIP_ERROR checks, don't call pcb_new() from do_bind() and do_connect() since a netconn without pcb can't exist any more (after the recent changes to netconn_new_*()) 2007-06-16 15:07:11 +00:00
goldsimon
8532d0d152 Added comments for the callback functions included in struct tcp_listen_pcb 2007-06-16 15:04:50 +00:00
goldsimon
173e63f01b Minor fix: coding style 2007-06-16 15:03:09 +00:00
goldsimon
066daf21ef Added comments for the callback functions included in structs tcp_pcb, udp_pcb and raw_pcb. 2007-06-16 14:33:37 +00:00