Lines Matching refs:to

21     which are a simple wrapper to the correct lwIP include files.
27 * ip.h: implemented API functions to access so_options of IP pcbs (UDP, TCP, RAW)
43 * ppp.h, ppp_impl.h: splitted ppp.h to an internal and external header file
44 to get a clear separation of which functions an application or port may use
48 * opt.h, tcp_impl.h, tcp.c, udp.h/.c: Added a config option to randomize
64 Added pbuf flags to mark incoming packets as link-layer broadcast/multicast.
65 Also added code to allow ip_forward() to forward non-broadcast packets to
69 * tcp.c, tcp_out.c: bug #33604: added some more asserts to check that
113 * etharp.c: fixed bug #35595: Impossible to send broadcast without a gateway
121 * etharp.c: fixed bug #35531: Impossible to send multicast without a gateway
136 * tcp.c: fixed bug #35435: No pcb state check before adding it to time-wait
156 * sys.c: fixed bug #34884: sys_msleep() body needs to be surrounded with
168 LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT set to 1
235 * opt.h: fixed default value of TCP_SND_BUF to not violate the sanity checks
251 is aggregated and sent to application
255 to other options
258 * tcp_in.c: fixed bug #34111 RST for ACK to listening pcb has wrong seqno
323 * dhcp.c/.h: Added a function to deallocate the struct dhcp from a netif
332 link-layer-addressed UDP traffic to be received while a netif is down (just
346 instead of the heap (moved struct pppoe_softc from ppp_oe.c to ppp_oe.h)
354 new option SO_REUSE_RXTOALL to pass received UDP broadcast/multicast
355 packets to more than one pcb.
363 take a precalculated checksum, added pbuf_fill_chksum() to copy data
371 * ip.c: Inline generating IP checksum to save a function call
374 * tcpip.h/.c, timers.c: Added an overridable define to get informed when the
375 tcpip_thread processes messages or timeouts to implement a watchdog.
382 * etharp.c: Speedup TX by moving code from find_entry to etharp_output/
383 etharp_query to prevent unnecessary function calls (inspired by
387 * opt.h, tcpip.c/.h: Added an option to disable tcpip_(un)timeout code
388 since the linker cannot do this automatically to save space.
399 on change) plus use SYS_LIGHTWEIGHT_PROT to protect the select code.
404 * tcp_out.c: task #7013 (Create option to have all packets delivered to
405 netif->output in one piece): Always copy to try to create single pbufs
411 for tcp netconns to receive pbufs, not netbufs; use that function
417 added option TCP_OVERSIZE to prevent creating many small pbufs when
419 allocated larger than needed and the space is used for later calls to
423 * stats.c/.h: Added const char* name to mem- and memp-stats for easier
428 implementation of tcp to make API usage cleare to application programmers
432 macro to copy addresses that cannot be NULL
439 * sockets.c/.h: Added a minimal version of posix fctl() to have a
440 standardised way to set O_NONBLOCK for nonblocking sockets.
444 memory): added autoip_set_struct() and dhcp_set_struct() to let autoip
449 SOF_REUSEADDR set, allow binding to endpoint in TIME_WAIT
453 mbox and semaphore functions to take pointers to sys_mbox_t/sys_sem_t;
454 converted sys_mbox_new/sys_sem_new to take pointers and return err_t;
456 to let sys.h use binary semaphores instead of mutexes - as before)
464 netif.c) - loopif does not have to be created by the port any more,
465 just define LWIP_HAVE_LOOPIF to 1.
475 * netif.h: Added function-like macros to get/set the hostname on a netif
478 * nearly every file: Replaced struct ip_addr by typedef ip_addr_t to
488 the need for mem_malloc from dhcp_recv and makes it possible to
492 * sockets.c: Use SYS_LIGHTWEIGHT_PROT instead of a semaphore to protect
506 to TCP_SNDLOWAT and added tcp_sndqueuelen() - this fixes bug #28605
516 * mem.c: The heap now may be moved to user-defined memory by defining
517 LWIP_RAM_HEAP_POINTER as a void pointer to that memory's address
521 * opt.h, memp.c: patch #6822 (Add option to place memory pools in
526 LWIP_RAND() for lwip-wide randomization (to be defined in cc.h)
531 implementation, moved timer implementation to timers.c/.h, timers are
537 LWIP_ETHERNET to support ethernet without ARP (necessary for pure PPPoE)
588 * tcp.c: tcp_bind: return ERR_VAL instead of ERR_ISCONN when trying to bind
596 * many files: Added missing U/UL modifiers to fix 16-bit-arch portability.
599 * sockets.c: Fixed bug #31741: lwip_select seems to have threading problems
609 * etharp.c: Fixed bug #31720: ARP-queueing: RFC 1122 recommends to queue at
632 * sockets.h: Fixed bug #31304: Changed SHUT_RD, SHUT_WR and SHUT_RDWR to
674 * msg_in.c: Fixed SNMP ASN constant defines to not use ! operator
688 NO_SYS_NO_TIMERS to drop timer support for NO_SYS==1 for easier upgrading
698 IP_FRAG_USES_STATIC_BUF=0 as default to be on the safe side.
714 * def.h/.c: changed the semantics of LWIP_PREFIX_BYTEORDER_FUNCS to prevent
715 "symbol already defined" i.e. when linking to winsock
753 where ETH_PAD_SIZE > 0) by moving definition of ETH_PAD_SIZE to opt.h
766 * ipv4/ip.c: Don't try to forward link-local addresses
770 addresses to gw
778 into multiple calls to tcp_write.
790 * mem.c/.h, pbuf.c: Renamed mem_realloc() to mem_trim() to prevent
846 * igmp.c/.h, ip.h: Moved most defines from igmp.h to igmp.c for clarity
859 to work with IP addresses (preparation for bug #27352 - Change ip_addr
860 from struct to typedef (u32_t) - and better code).
869 functions to def.h (and the new def.c - they are not ipv4 dependent),
878 callback can lead to accessing unallocated memory. As a consequence,
887 * snmp: Renamed the private mib node from 'private' to 'mib_private' to
902 * src/netif/ppp: reorganised PPP sourcecode to 2.3.11 including some
911 error return value to struct api_msg_msg
915 to return err_t (bugs #27709 and #28087)
932 * tcp.h/.c: bug #28127 (remove call to tcp_output() from tcp_ack(_now)())
939 passed to dns_local_addhost() might be volatile
948 * many ppp files: Reorganised PPP source code from ucip structure to pppd
949 structure to easily compare our code against the pppd code (around v2.3.1)
964 * api_msg.c, netbuf.c/.h, opt.h: patch #6888: Patch for UDP Netbufs to
978 * autoip.c, dhcp.c, netif.c: patch #6725: Teach AutoIP and DHCP to respond
979 to netif_set_link_up().
982 * tcp.h/.c: Added function tcp_debug_state_str() to convert a tcp state
983 to a human-readable string.
988 * tcp_in.c Apply patches from Oleg Tyshev to improve OOS processing
1012 queueing a call into tcpip_thread to free ooseq-bufs if the pool is empty
1019 * tcp.h, sockets.c: Fixed bug #28099: API required to disable Nagle
1037 * opt.h: Increased default value for TCP_MSS to 536, updated default
1038 value for TCP_WND to 4*TCP_MSS to keep delayed ACK working.
1042 to follow algorithm from TCP/IP Illustrated
1048 * tcp.h: bug-fix in the TCP_EVENT_RECV macro (has to call tcp_recved if
1049 pcb->recv is NULL to keep rcv_wnd correct)
1066 conditional code to assert where applicable), check pbuf length before
1070 * dhcp.c: Removed most calls to udp_connect since they aren't necessary
1071 when using udp_sendto_if() - always stay connected to IP_ADDR_ANY.
1074 * ip.c: Fixed bug #27390: Source IP check in ip_input() causes it to drop
1095 * opt.h: Fixed default values of some stats to only be enabled if used
1103 * dhcp.c: fixed invalid dependency to etharp_query if DHCP_DOES_ARP_CHECK==0
1120 * many ppp files: bug #27267: Added include to string.h where needed
1132 LWIP_NETIF_TX_SINGLE_PBUF to try to create transmit packets from only
1133 one pbuf to help MACs that don't support scatter-gather DMA.
1136 * icmp.h, icmp.c: Shrinked ICMP code, added option to NOT check icoming
1140 * ip.h, ip.c: Added ip_current_netif() & ip_current_header() to receive
1147 * mem.c, opt.h: Added option MEM_USE_POOLS_TRY_BIGGER_POOL to try the next
1157 * dhcp.c: patch #6763: Global DHCP XID can be redefined to something more unique
1161 TCP timestamp options, off by default. Rework tcp_enqueue() to
1168 * icmp.c, opt.h: patch #6539: (configurable) response to broadcast- and multicast
1172 * init.h: Added LWIP_VERSION to get the current version of the stack
1175 * opt.h, memp.h/.c: added MEMP_MEM_MALLOC to use mem_malloc/mem_free instead
1195 mem_free to run between mem_malloc iterations. Added illegal counter for
1200 Added defines to display each module's statistic individually, added stats
1204 * err.h: patch #6459: Made err_t overridable to use a more efficient type
1209 to loopif
1213 modified version of patch # 6370: Moved loopif code to netif.c so that
1215 Added option to limit loopback packets for each netifs.
1235 sent to mbox
1255 to the IP header (used by igmp_ip_output_if)
1259 defined) for SWAP_BYTES_IN_WORD to speed up checksumming.
1263 to crash
1292 which want to enable this filter have to set IP_SOF_BROADCAST=1 in opt.h.
1294 have to set IP_SOF_BROADCAST_RECV=1 in opt.h.
1297 * dhcp.c: patch #6721, bugs #25575, #25576: Some small fixes to DHCP and
1301 * tcp_out.c: bug #24212: Deadlocked tcp_retransmit due to exceeded pcb->cwnd
1331 * sockets.c: tried to fix bug #23559: lwip_recvfrom problem with tcp
1345 Converted constant OPTION_MAX_MSG_SIZE to netif->mtu, check if netif->mtu
1352 * sockets.c, ppp.c: bug #25763: corrected 4 occurrences of SMEMCPY to MEMCPY
1362 * tcp.h: Patch#6802 Add do-while-clauses to those function like
1379 * tcp.c, tcp_in.c, tcp.h: add tcp_abandon() to cope with dropping
1390 * sockets.h/.c, api_*.h/.c: fixed arguments of socket functions to match the standard;
1391 converted size argument of netconn_write to 'size_t'
1395 by moving accept callback function pointer to TCP_PCB_COMMON
1436 * dns.c: Hard-code structure sizes, to avoid issues on some compilers where
1448 inet.h -> moved declaration of struct in_addr from ip_addr.h to inet.h
1464 and created defines for swapping bytes and folding u32 to u16.
1472 * mem.h: Fix BUG#23254. Change macro definition of mem_* to allow
1476 * err.h, err.c, sockets.c: Fix bug #23119: Reorder timeout error code to
1485 from interrupt context isn't safe): set LWIP_USE_HEAP_FROM_INTERRUPT to 1
1486 in lwipopts.h or use pbuf_free_callback(p)/mem_free_callback(m) to free pbufs
1499 * inet_chksum.c: Allow choice of one of the sample algorithms to be
1500 made from lwipopts.h. Fix comment on how to override LWIP_CHKSUM.
1504 TCP_CALCULATE_EFF_SEND_MSS to have coherent TCP options names.
1508 to refuse data on a TCP_EVENT_RECV call". Important, behavior changes for the
1517 "Add return value to sys_mbox_post".
1521 DEFAULT_UDP_RECVMBOX_SIZE and DEFAULT_RAW_RECVMBOX_SIZE (to optimize queues
1522 sizes), like suggested for the task #7490 "Add return value to sys_mbox_post".
1526 "Add return value to sys_mbox_post". tcpip_callback is always defined as
1532 "Add return value to sys_mbox_post".
1536 Introduce changes for task #7490 "Add return value to sys_mbox_post" with some
1539 in opt.h to indicate sizes for tcpip::mbox, netconn::recvmbox, and for the
1540 netconn::acceptmbox. Port maintainers, you can decide to just add this new
1541 parameter in your implementation, but to ignore it to keep the previous behavior.
1542 The new sys_mbox_trypost function return a value to know if the mailbox is
1543 full or if the message is posted. Take a look to sys_arch.txt for more details.
1558 in autoip". The change in etharp_raw could be removed, since all calls to
1563 * ip.c: Fix bug #21846 "LwIP doesn't appear to perform any IP Source Address
1569 applications have to call 'tcp_accepted(pcb)' in their accept callback to
1577 * dns.h, dns.c, opt.h: move DNS options to the "right" place. Most visibles
1581 * netdb.c: add a LWIP_DNS_API_HOSTENT_STORAGE option to decide to use a static
1584 which have to do a copy of "h" and return a pointer ont the "per-thread" copy.
1592 UDP: move a (connected) pcb selected for input to the front of the list of
1605 to the new file netdb.c; included lwip_getaddrinfo.
1609 based on the MTU of the netif used to send. Enabled by default. Disable by
1610 setting LWIP_CALCULATE_EFF_SEND_MSS to 0. This fixes bug #21492.
1615 copy dns payload to parse the response), return an error if there is no place
1633 DNS server ip addresses when options are received. You need to set LWIP_DNS=1
1634 in your lwipopts.h file (LWIP_DNS=0 in opt.h). DNS_DEBUG can be set to get
1636 list with points to improve.
1640 enabled by defining SNMP_SAFE_REQUESTS to 0); added code to check link status
1644 * api.h, api_msg.h and dependent files: Task #7410: Removed the need to include
1645 core header files in api.h (ip/tcp/udp/raw.h) to hide the internal
1650 RAW netconn. You need to set LWIP_SO_RCVBUF=1 in your lwipopts.h (it's disabled
1651 by default). Netconn API users can use the netconn_recv_bufsize macro to access
1652 it. This is a first release which have to be improve for TCP. Note it used the
1653 netconn::recv_avail which need to be more "thread-safe" (note there is already
1660 layer. This option enable to delayed TCP PUSH flag on multiple "write" calls.
1665 TCP_EVENT_xxx macros to get a code more readable. It could also help to remove
1666 some code (like we have talk in "patch #5919 : Create compile switch to remove
1672 variables to zero!
1676 to enqueue the received pbufs so that multiple packets can be reassembled
1680 * tcpip.c, etharp.h, etharp.c: moved ethernet_input from tcpip.c to etharp.c so
1685 common function to reduce a little bit the footprint (for all functions using
1690 netifapi_autoip_start and netifapi_autoip_stop. Use a common function to reduce
1700 * snmp.h, mib2.c: enable to remove SNMP timer (which consumne several cycles
1701 even when it's not necessary). snmp_agent.txt tell to call snmp_inc_sysuptime()
1703 decide to call snmp_add_sysuptime(100) each 1000ms (which is bigger "step", but
1704 call to a lower frequency). Or, you can decide to not call snmp_inc_sysuptime()
1705 or snmp_add_sysuptime(), and to define the SNMP_GET_SYSUPTIME(sysuptime) macro.
1707 snmp_get_sysuptime(u32_t *value), and enable to change "sysuptime" value only
1708 when it's queried (any direct call to "sysuptime" is changed by a call to
1712 * igmp.h, igmp.c, netif.h, netif.c, ip.c: To enable to have interfaces with IGMP,
1713 and others without it, there is a new NETIF_FLAG_IGMP flag to set in netif->flags
1715 igmp_report_groups() is now called inside netif_set_link_up() (need to have
1716 LWIP_NETIF_LINK_CALLBACK=1) to resend reports once the link is up (avoid to wait
1717 the next query message to receive the matching multicast streams).
1722 Use this new field to access to common pcb fields (ttl, tos, so_options, etc...).
1723 Enable to access to these fields with LWIP_TCP=0.
1729 Be careful, disabling ICMP make your product non-compliant to RFC1122, but
1730 help to reduce footprint, and to reduce "visibility" on the Internet.
1735 parameters have to be provided: a task name, and a task stack size. For this
1747 memp_malloc, and use a new MEMP_NUM_IGMP_GROUP option (see opt.h to define the
1748 value). It will avoid potential fragmentation problems, use a counter to know
1755 Initialize igmp_mac_filter to NULL in netif_add (this field should be set in
1758 The igmp_join/leavegroup first parameter change from a netif to an ipaddr.
1765 maintainers just have to add src/api/netbuf.c in their makefile/projects.
1778 Add lwip_init function to regroup all modules initializations, and to provide
1779 a place to add code for task #7142 "Sanity check user-configurable values".
1787 * api_msg.c: do_close_internal(): Reset the callbacks and arg (conn) to NULL
1792 * netif.h, netif.c: Integrate "patch #6163 : Function to check if link layer is up".
1797 to be coherent with new LWIP_NETIF_LINK_CALLBACK option before next release.
1807 more dynamic mempools, and allows the user to create an arbitrary number of
1811 * api_msg.c: Initialize newconn->state to NETCONN_NONE in accept_function;
1812 otherwise it was left to NETCONN_CLOSE and sent_tcp() could prematurely
1823 for input packets to prevent floods from consuming all of MEMP_TCPIP_MSG
1825 Renamed MEMP_TCPIP_MSG to MEMP_TCPIP_MSG_API
1829 type and flgs (later renamed to flags).
1848 2 * mss (instead of 1 * mss previously) to comply with some newer RFCs and
1852 * opt.h, netif.h, netif.c, ethernetif.c: Add new configuration option to add
1853 a link callback in the netif struct, and functions to handle it. Be carefull
1854 for port maintainers to add the NETIF_FLAG_LINK_UP flag (like in ethernetif.c)
1855 if you want to be sure to be compatible with future changes...
1862 LWIP_AUTOIP =0 and =1 to remove redundant code.
1866 MEM_USE_POOLS to use 4 pools with different sized elements instead of a
1873 int to be able to send a bigger buffer than 64K with one time (mainly
1878 into a define (tcp_output_nagle) in tcp.h to provide it to raw api users, too.
1882 netconn_write from api_lib.c to api_msg.c to also prevent multiple context-
1886 * etharp.c, etharp.h: Changed etharp to use a defined hardware address length
1887 of 6 to avoid loading netif->hwaddr_len every time (since this file is only
1892 to disable UDP checksum generation on transmit.
1895 * debug.h, api_msg.c: change LWIP_ERROR to use it to check errors like invalid
1896 pointers or parameters, and let the possibility to redefined it in cc.h. Use
1897 this macro to check "conn" parameter in api_msg.c functions.
1904 by default) to switch off UDP-Lite support if not needed (reduces udp.c code
1910 LWIP_DHCP_AUTOIP_COOP if you want to cooperate with DHCP. Some tips to adapt
1915 etharp_output() to match netif->output so etharp_output() can be used
1916 directly as netif->output to save one function call.
1920 NETIF_INIT_SNMP(netif, type, speed) to initialize per-netif snmp variables,
1921 added initialization of those to ethernetif, slipif and loopif.
1925 (defaulting to off for now) that can be set to 0 to send fragmented
1937 * opt.h, memp.h, memp.c: Added option MEMP_OVERFLOW_CHECK to check for memp
1938 elements to overflow. This is achieved by adding some bytes before and after
1941 Set it to 2 to also check every element in every pool each time memp_malloc()
1946 PBUF_POOL pbufs instead of the old pool implementation in pbuf.c to reduce
1951 Include a function pointer instead of a table index in the message to reduce
1963 * opt.h, *.c/*.h: Included patch #5920: Create define to override C-library
1966 call. Also replaced all calls to memcpy() with calls to (S)MEMCPY().
1970 to be overriden in case the C-library malloc implementation is not protected
1974 * etharp.c: Introduced fast one-entry-cache to speed up ARP lookup when sending
1975 multiple packets to the same host.
1979 to corrupt remote addr/port connection state". Reduce problems "not enought memory" with
1982 Warning, if you directly access to "fromaddr" & "fromport" field from netbuf struct,
1986 * sys.h, api_lib.c: Provide new sys_mbox_tryfetch function. Require ports to provide new
1987 sys_arch_mbox_tryfetch function to get a message if one is there, otherwise return
1993 allow to use thread-safe functions to add/remove netif in list, and to start/stop dhcp
1994 clients, using new functions from netifapi.h. Disable as default (no port change to do).
1997 * sockets.c: remplace ENOBUFS errors on alloc_socket by ENFILE to be more BSD compliant.
2001 use this for and architecture-independent form to tell the compiler you intentionally
2005 * opt.h, netif.h, dhcp.h, dhcp.c: New configuration option LWIP_NETIF_HOSTNAME allow to
2008 It will be used by DHCP to register a client hostname, but can also be use when you call
2012 * netif.h, netif.c: A new NETIF_FLAG_ETHARP flag is defined in netif.h, to allow to
2014 device, and we can use ARP with it to do a "gratuitous ARP" (RFC 3220 "IP Mobility
2018 * opt.h, tcpip.c: New configuration option LWIP_ARP allow to disable ARP init at build
2019 time if you only use PPP or SLIP. The default is enable. Note we don't have to call
2024 * stats.h, stats.c, msg_in.c: Stats counters can be change to u32_t if necessary with the
2025 new option LWIP_STATS_LARGE. If you need this option, define LWIP_STATS_LARGE to 1 in
2037 New configuration option LWIP_IGMP to enable IGMP processing. Based on only one
2038 filter per all network interfaces. Declare a new function in netif to enable to
2039 control the MAC filter (to reduce lwIP traffic processing).
2045 that TCP_KEEPIDLE and TCP_KEEPINTVL have to be set in seconds.
2053 Implement LWIP_SO_RCVTIMEO configuration option to enable/disable SO_RCVTIMEO
2068 * sockets.h, sockets.c: Move socket initialization to new
2070 NOTE: this changes the API with ports. Ports will have to be
2071 updated to call lwip_socket_init() now.
2081 some problems to fill the IP header on some targets, use now the
2082 ip.h macros to do it).
2089 good lwip way to do it (so, using recv is faster on tcp sockets).
2098 * mem.c, stats.c, mem.h: apply patch #6414 to avoid compiler errors
2103 * Numerous small compiler error/warning fixes from contributions to
2110 * tcp_out.c: BUG20511. Modify persist timer to start when we are
2115 * opt.h, ip.c: Rename IP_OPTIONS define to IP_OPTIONS_ALLOWED to avoid
2124 is not protected" by using new macros for interlocked access to modify/test
2137 tcp_pcb_remove before setting pcb to CLOSED state; don't directly set CLOSED
2143 has to be set to 0 in lwipopts.h
2153 * udp.c: first attempt to fix bug #21655 (DHCP doesn't work reliably with multiple
2154 netifs): if LWIP_DHCP is enabled, UDP packets to DHCP_CLIENT_PORT are passed
2155 to netif->dhcp->pcb only (if that exists) and not to any other pcb for the same
2156 port (only solution to let UDP pcbs 'bind' to a netif instead of an IP address)
2169 netif to send as an argument (to be able to send on netifs that are down).
2178 and has to be explicitly disabled with 'tcp_pcb->flags |= TF_NODELAY'
2190 * tcp.c, tcp_in.c: Fixed bug #21494: The send mss (pcb->mss) is set to 536 (or
2213 * sockets.c, api.h, api_lib.c: First step to fix "bug #20900 : Potential
2239 * igmp.h, igmp.c: Some changes to remove some redundant code, add some traces,
2245 pointing to ethhdr) if the netif got the NETIF_FLAG_ETHARP flag. Else, packets
2246 are considered like IP packets (payload pointing to iphdr).
2254 * inet.c Modify (acc >> 16) test to ((acc >> 16) != 0) to help buggy
2259 Introduce IGMP_STATS to centralize statistics management.
2262 * udp.c: Fix for bug #20503 : IGMP Improvement. Enable to receive a multicast
2270 * igmp.c: Fix bug #20595 to accept IGMPv3 "Query" messages.
2283 changed snd_queuelen++ to snd_queuelen += pbuf_clen(p).
2286 * api_msg.c, tcp.c: Fix bug #20480: Check the pcb passed to tcp_listen() for the
2302 * src/core/tcp_in.c Apply patch#5741 from Oleg Tyshev to fix bug in
2308 assumptions clash with the possibility of converting to fully pool-based
2320 to cache ARP table indices with each pcb instead of single-entry cache for
2324 * tcp.h, tcp.c, tcp_in.c, tcp_out.c: Added some ASSERTS and casts to prevent
2325 warnings when assigning to smaller types.
2328 * tcp_out.c: Added check to prevent tcp_pcb->snd_queuelen from overflowing.
2337 possible to define this macro in your own lwipopts.h to always use C library's
2341 * netifapi.h, netifapi.c, tcpip.h, tcpip.c: Update code to handle the option
2342 LWIP_TCPIP_CORE_LOCKING, and do some changes to be coherent with last modifications
2367 conn->err was reset to ERR_OK without any reasons (and error was lost)...
2371 MEM_ALIGN in LWIP_MEM_ALIGN and MEM_ALIGN_SIZE in LWIP_MEM_ALIGN_SIZE to avoid
2390 * icmp.c: Corrected bug #19937: For responding to an icmp echo request, icmp
2391 re-used the input pbuf even if that didn't have enough space to include the
2405 * api_lib.c: Fixed bug #5957 "Safe-thread problem inside netconn_recv" to return
2406 an error code if it's impossible to fetch a pbuf on a TCP connection (and not
2420 * api.h, api_lib.c, api_msg.h, api_msg.c: change the struct api_msg_msg to see
2421 which parameters are used by which do_xxx function, and to avoid "misusing"
2426 changed raw_pcb.protocol from u16_t to u8_t since for IPv4 and IPv6, proto
2431 * memp.c: addition to patch #5913: smaller pointer was returned but
2440 as the one of the netif used for sending to prevent sending from old
2446 tcpip_init) because we have to be sure that network interfaces are already
2451 into sys_arch_sem_wait calls to prevent timers from running while waiting
2457 tcp.h to sockets.h.
2460 * mem.c: Another attempt to fix bug #17922.
2463 * pbuf.c, pbuf.h, etharp.c: Further update to ARP queueing: Changed pbuf_copy()
2469 to save a little RAM (next pointer of memp is not used while not in pool).
2477 in NULL reference for incoming TCP packets". Loopif has to be configured
2478 (using LWIP_LOOPIF_MULTITHREADING) to directly call netif->input()
2480 putting packets on a list that is fed to the stack by calling loopif_poll()
2487 * sockets.h: FD_SETSIZE needs to match number of sockets, which is
2495 timer is reset to fix bug#19434, with help from Oleg Tyshev.
2499 previously thought need to be copied (everything but PBUF_ROM!). Cleaned up
2508 * api_msg.c: Fix bug #16830: "err_tcp() posts to connection mailbox when no pend on
2517 * api_msg.c: add a "pcb_new" helper function to avoid redundant code, and to add
2521 * most of files: prefix all debug.h define with "LWIP_" to avoid any conflict with
2529 * sockets.c Remove "#include <errno.h>" from sockets.c to avoid multiple
2535 * opt.h Change default PBUF_POOL_BUFSIZE (again) to accomodate default MSS +
2540 to send some garbage. It is not a definitive solution, but the patch does solve
2551 * ethernetif.c: update netif->input calls to check return value. In older ports,
2552 it's a good idea to upgrade them, even if before, there could be another problem
2553 (access to an uninitialized mailbox).
2557 by casting to unsigned).
2561 api_lib.c to tcpip.c's tcpip_apimsg(). Now, use a local variable and not a
2562 dynamic one from memp to send tcpip_msg to tcpip_thread in a synchrone call.
2567 * opt.h: Add LWIP_NETIF_CALLBACK (to avoid compiler warning) and set it to 0.
2573 * opt.h Change default PBUF_POOL_BUFSIZE to accomodate default MSS +
2577 * Fix all uses of pbuf_header to check the return value. In some
2578 cases just assert if it fails as I'm not sure how to fix them, but
2592 tcpip_ethinput, tcpip_callback, tcpip_apimsg, to fix a init problem with
2596 * udp.c: Only try and use pbuf_header() to make space for headers if
2600 * api_msg.h, api_msg.c, tcpip.h, tcpip.c: Add return types to tcpip_apimsg()
2612 (missing `const' qualifier in socket functions), to get more compatible to
2616 * sockets.c: Add asserts inside bind, connect and sendto to check input
2626 * tcpip.c: Initialize dhcp timers in tcpip_thread (if LWIP_DHCP) to protect
2631 call to "lwip_stats.link.recv++;" in low_level_input() & ethernetif_input().
2640 Allow to do ARP processing for incoming packets inside tcpip_thread
2642 old code using tcp_input with new define ETHARP_TCPIP_INPUT set to 0.
2643 Older ports have to use tcpip_ethinput.
2660 The api_msg struct stay on the stack (not moved to netconn struct).
2669 existing pbuf chain when enqueuing multiple pbufs to a pending ARP request
2676 * tcpip.c: Moved call to ip_init(), udp_init() and tcp_init() from
2677 tcpip_thread() to tcpip_init(). This way, raw API connections can be
2704 * ipv4/ip_frag.c: rename MAX_MTU to IP_FRAG_MAX_MTU and move define
2705 to include/lwip/opt.h.
2707 Move IP_REASS_MAXAGE and IP_REASS_BUFSIZE to include/lwip/opt.h.
2716 * etharp.{c,h}: added etharp_find_addr() to read
2722 * netif.{c,h}, netif/ethernetif.c: added SNMP statistics to netif struct
2734 Added LWIP_PLATFORM_BYTESWAP define (defaults to 0) and
2749 identifier from 170 to 136 (bug #17574).
2756 destinations for PCBs bound to a unicast address.
2766 * mem.h: added MEM_SIZE_F alias to fix an ancient cold case (bug #1748),
2770 * api_msg.c: Applied patch #5146 to handle allocation failures
2775 from netconn_write() and added sys_sem_new to netconn_new_*.
2796 * inet.c: Disabled the added summing routine to preserve code space.
2801 inclusion. Need to create test case for unaliged, aligned, odd,
2834 * etharp.*: Fixed race condition from ARP request to ARP timeout.
2838 too little time for ARP responses to be received).
2842 * etharp.c: ETHARP_CREATE is renamed to ETHARP_TRY_HARD.
2843 Do not try hard to insert arbitrary packet's source address,
2848 * ipv4/ip_addr.h: Renamed ip_addr_maskcmp() to _netcmp() as we are
2852 IP address actually belongs to the network of the given interface.
2860 * tcp.c: Add code to tcp_recved() to send an ACK (window update) immediately,
2862 (currently TCP_WND/2). This avoids waiting for a timer to expire to send a
2863 delayed ACK in order to open the window if the stack is only receiving data.
2873 * debug.h: Added (int) cast in LWIP_DEBUGF() to avoid compiler
2880 * inet.c: Added a couple of casts to quiet the compiler.
2881 No need to test isascii(c) before isdigit(c) or isxdigit(c).
2885 Added casts for return values of checksum routines, to pacify compiler.
2887 Small corrections to some debugging statements, to pacify compiler.
2891 * ethernetif.c Updated low_level_output() to match prototype for
2893 * api_msg.c: Changed recv_raw() from int to u8_t, to match prototype
2895 * sockets.c: Added trivial (int) cast to keep compiler happier.
2896 * ip.c, netif.c Changed debug statements to use the tidier ip4_addrN() macros.
2905 defaults to 1.
2911 * dhcp.c: Changes to restart program flow.
2919 * opt.h: ETHARP_ALWAYS_INSERT option removed to comply with ARP RFC.
2920 * etharp.c: update_arp_entry() only adds new ARP entries when adviced to by
2929 is to prefix the 14-bit Ethernet headers with two padding bytes.
2942 * Fixed TCP bug for SYN_SENT to ESTABLISHED state transition.
3013 * TCP has been fixed to deal with the new use of the pbuf->ref
3028 * The packet buffer implementation has been enhanced to support
3033 Use PBUF_REF to make a pbuf refer to RAM. lwIP will use zero-copy
3038 is available to the application directly after calling udp_send()
3050 to a '0.0.0.0' IP address.
3056 * netif drivers have to be changed to set the hardware address length field
3060 * netif's have a dhcp field that must be initialized to NULL by the driver.
3063 (0.5.x) This file has been unmaintained up to 0.6.1. All changes are
3077 * The name of the time variable in arp.c has been changed to ctime
3078 to avoid conflicts with the time() function.
3088 * A bug in tcp_parseopt() could cause the stack to hang because of a
3110 * Possible to run as a user process under Linux.
3129 * Situations when all TCP buffers were used could lead to
3142 * struct eth_addr changed from u16_t[3] array to u8_t[6].
3144 * A ->linkoutput() member was added to struct netif.
3146 * TCP and UDP ->dest_* struct members where changed to ->remote_*.
3154 * Redesigned operating system emulation layer to make porting easier.
3190 * Variables named "data" and "code" have been renamed in order to
3193 * Variable++ have in appliciable cases been translated to ++variable
3210 in 0.4, has now been fixed. Binding to an address that is in use
3230 ints, to specified ones such as u16_t. Functions that return
3240 * Thanks: Huge thanks go to Dagan Galarneau, Horst Garnetzke, Petri
3271 and put to use.
3276 * Bugs related to porting between a 32-bit and a 16-bit architecture
3279 * The license has been changed slightly to conform more with the
3302 keeps a pointer to the lowest free memory block. A new function,
3303 mem_malloc2() tries to allocate memory once, and if it fails tries
3304 to free some memory and retry the allocation.
3309 * Some bugfixes and improvements to the buffer (pbuf) subsystem.
3328 - Out of sequence data was in some cases never delivered to the
3343 * TCP now provides proper feedback to the application when a
3346 * More comments have been added to the code. The code has also been