📄 changelog
字号:
2007-09-10 Fr閐閞ic Bernon
* snmp.h, mib2.c: 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-09 Fr閐閞ic Bernon, Bill Florac
* 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-08 Fr閐閞ic Bernon
* 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-05 Fr閐閞ic Bernon
* udp.c, ipv4/icmp.c, ipv4/ip.c, ipv6/icmp.c, ipv6/ip6.c, ipv4/icmp.h,
ipv6/icmp.h, opt.h: 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 Fr閐閞ic Bernon, Bill Florac
* opt.h, sys.h, tcpip.c, slipif.c, ppp.c, sys_arch.txt: 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 Fr閐閞ic Bernon
* inet.c, autoip.c, msg_in.c, msg_out.c, init.c: Move some build time checkings
inside init.c for task #7142 "Sanity check user-configurable values".
2007-09-04 Fr閐閞ic Bernon, Bill Florac
* igmp.h, igmp.c, memp_std.h, memp.c, init.c, opt.h: 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-03 Fr閐閞ic Bernon
* igmp.h, igmp.c, sockets.c, api_msg.c: 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-08-30 Fr閐閞ic Bernon
* 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 Fr閐閞ic Bernon, Jonathan Larmour
* init.c: Add first version of lwip_sanity_check for task #7142 "Sanity check
user-configurable values".
2007-08-29 Fr閐閞ic Bernon
* 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 Fr閐閞ic Bernon
* 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-26 Marc Boucher
* api_msg.c: do_close_internal(): Reset the callbacks and arg (conn) to NULL
since they can under certain circumstances be called with an invalid conn
pointer after the connection has been closed (and conn has been freed).
2007-08-25 Fr閐閞ic Bernon (Artem Migaev's Patch)
* 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-22 Fr閐閞ic Bernon
* 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 Fr閐閞ic Bernon
* 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-17 Jared Grubb
* memp_std.h, memp.h, memp.c, mem.c, stats.c: (Task #7136) Centralize mempool
settings into new memp_std.h and optional user file lwippools.h. This adds
more dynamic mempools, and allows the user to create an arbitrary number of
mempools for mem_malloc.
2007-08-16 Marc Boucher
* api_msg.c: 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 Marc Boucher
* sockets.c: lwip_accept(): check netconn_peer() error return.
2007-08-16 Marc Boucher
* mem.c, mem.h: Added mem_calloc().
2007-08-16 Marc Boucher
* tcpip.c, tcpip.h memp.c, memp.h: Added distinct memp (MEMP_TCPIP_MSG_INPKT)
for input packets to prevent floods from consuming all of MEMP_TCPIP_MSG
and starving other message types.
Renamed MEMP_TCPIP_MSG to MEMP_TCPIP_MSG_API
2007-08-16 Marc Boucher
* pbuf.c, pbuf.h, etharp.c, tcp_in.c, sockets.c: Split pbuf flags in pbuf
type and flgs (later renamed to flags).
Use enum pbuf_flag as pbuf_type. Renumber PBUF_FLAG_*.
Improved lwip_recvfrom(). TCP push now propagated.
2007-08-16 Marc Boucher
* ethernetif.c, contrib/ports/various: ethbroadcast now a shared global
provided by etharp.
2007-08-16 Marc Boucher
* ppp_oe.c ppp_oe.h, auth.c chap.c fsm.c lcp.c ppp.c ppp.h,
etharp.c ethernetif.c, etharp.h, opt.h tcpip.h, tcpip.c:
Added PPPoE support and various PPP improvements.
2007-07-25 Simon Goldschmidt
* api_lib.c, ip_frag.c, pbuf.c, api.h, pbuf.h: Introduced pbuf_copy_partial,
making netbuf_copy_partial use this function.
2007-07-25 Simon Goldschmidt
* tcp_in.c: 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-13 Jared Grubb (integrated by Fr閐閞ic Bernon)
* 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-06-30 Fr閐閞ic Bernon
* sockets.h, sockets.c: Implement MSG_PEEK flag for recv/recvfrom functions.
2007-06-21 Simon Goldschmidt
* etharp.h, etharp.c: Combined etharp_request with etharp_raw for both
LWIP_AUTOIP =0 and =1 to remove redundant code.
2007-06-21 Simon Goldschmidt
* mem.c, memp.c, mem.h, memp.h, opt.h: task #6863: 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 Simon Goldschmidt
* api_lib.c, api_msg.c, api.h, api_msg.h: 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 Simon Goldschmidt
* tcp.h, api_msg.c: 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 Simon Goldschmidt
* api.h, api_lib.c, api_msg.c: 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-18 Simon Goldschmidt
* etharp.c, etharp.h: 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-17 Simon Goldschmidt
* sockets.c, sockets.h: Implemented socket options SO_NO_CHECK for UDP sockets
to disable UDP checksum generation on transmit.
2007-06-13 Fr閐閞ic Bernon, Simon Goldschmidt
* debug.h, api_msg.c: change LWIP_ERROR to use it to check errors like invalid
pointers or parameters, and let the possibility to redefined it in cc.h. Use
this macro to check "conn" parameter in api_msg.c functions.
2007-06-11 Simon Goldschmidt
* sockets.c, sockets.h: Added UDP lite support for sockets
2007-06-10 Simon Goldschmidt
* udp.h, opt.h, api_msg.c, ip.c, udp.c: Included switch LWIP_UDPLITE (enabled
by default) to switch off UDP-Lite support if not needed (reduces udp.c code
size)
2007-06-09 Dominik Spies (integrated by Fr閐閞ic Bernon)
* autoip.h, autoip.c, dhcp.h, dhcp.c, netif.h, netif.c, etharp.h, etharp.c, opt.h:
AutoIP implementation available for IPv4, with new options LWIP_AUTOIP and
LWIP_DHCP_AUTOIP_COOP if you want to cooperate with DHCP. Some tips to adapt
(see TODO mark in the source code).
2007-06-09 Simon Goldschmidt
* etharp.h, etharp.c, ethernetif.c: Modified order of parameters for
etharp_output() to match netif->output so etharp_output() can be used
directly as netif->output to save one function call.
2007-06-08 Simon Goldschmidt
* netif.h, ethernetif.c, slipif.c, loopif.c: Added define
NETIF_INIT_SNMP(netif, type, speed) to initialize per-netif snmp variables,
added initialization of those to ethernetif, slipif and loopif.
2007-05-18 Simon Goldschmidt
* opt.h, ip_frag.c, ip_frag.h, ip.c: Added option IP_FRAG_USES_STATIC_BUF
(defaulting to off for now) that can be set to 0 to send fragmented
packets by passing PBUF_REFs down the stack.
2007-05-23 Fr閐閞ic Bernon
* api_lib.c: Implement SO_RCVTIMEO for accept and recv on TCP
connections, such present in patch #5959.
2007-05-23 Fr閐閞ic Bernon
* api.h, api_lib.c, api_msg.c, sockets.c: group the different NETCONN_UDPxxx
code in only one part...
2007-05-18 Simon Goldschmidt
* opt.h, memp.h, memp.c: Added option MEMP_OVERFLOW_CHECK to check for memp
elements to overflow. This is achieved by adding some bytes before and after
each pool element (increasing their size, of course), filling them with a
prominent value and checking them on freeing the element.
Set it to 2 to also check every element in every pool each time memp_malloc()
or memp_free() is called (slower but more helpful).
2007-05-10 Simon Goldschmidt
* opt.h, memp.h, memp.c, pbuf.c (see task #6831): use a new memp pool for
PBUF_POOL pbufs instead of the old pool implementation in pbuf.c to reduce
code size.
2007-05-11 Fr閐閞ic Bernon
* sockets.c, api_lib.c, api_msg.h, api_msg.c, netifapi.h, netifapi.c, tcpip.c:
Include a function pointer instead of a table index in the message to reduce
footprint. Disable some part of lwip_send and lwip_sendto if some options are
not set (LWIP_TCP, LWIP_UDP, LWIP_RAW).
2007-05-10 Simon Goldschmidt
* *.h (except netif/ppp/*.h): Included patch #5448: include '#ifdef __cplusplus
\ extern "C" {' in all header files. Now you can write your application using
the lwIP stack in C++ and simply #include the core files. Note I have left
out the netif/ppp/*h header files for now, since I don't know which files are
included by applications and which are for internal use only.
2007-05-09 Simon Goldschmidt
* opt.h, *.c/*.h: Included patch #5920: Create define to override C-library
memcpy. 2 Defines are created: MEMCPY() for normal memcpy, SMEMCPY() for
situations where some compilers might inline the copy and save a function
call. Also replaced all calls to memcpy() with calls to (S)MEMCPY().
2007-05-08 Simon Goldschmidt
* mem.h: If MEM_LIBC_MALLOC==1, allow the defines (e.g. mem_malloc() -> malloc())
to be overriden in case the C-library malloc implementation is not protected
against concurrent access.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -