goldsimon
|
9dd4ad6c1f
|
Added thread-safe function gethostbyname_r (as in glibc)
|
2007-11-18 16:36:34 +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 |
|
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
|
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
|
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 |
|
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
|
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
|
9ef005454a
|
lfree was not updated in mem_realloc!
|
2007-10-08 18:39:44 +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
|
9804b25acc
|
Fix CHANGELOG entry
|
2007-10-07 17:30:50 +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
|
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 |
|
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 |
|
kleshov
|
4ffafdeb86
|
Fixed bug #21077: inaccuracy in calculation of lwip_stat.mem.used
|
2007-09-19 17:56:39 +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 |
|
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 |
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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 |
|
marcbou
|
5a6b1cbf66
|
Added CHANGELOG entries for my recent contributions.
|
2007-08-27 00:14:21 +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 |
|