• Home
Name Date Size #Lines LOC

..--

doc/12-May-2024-6,6584,852

src/12-May-2024-135,29184,312

test/12-May-2024-10,5027,882

.gitattributesD12-May-202493 54

.gitignoreD12-May-2024708 2019

0001-add-makefile.patchD12-May-20247.2 KiB235231

0002-adapt-lstack.patchD12-May-2024174 KiB5,5705,349

0003-fix-the-occasional-coredump-when-the-lwip-exits.patchD12-May-20241.7 KiB6458

0004-fix-error-of-deleting-conn-table-in-connect.patchD12-May-20243.7 KiB8073

0005-syn-rcvd-state-reg-conn-into-conntable.patchD12-May-2024672 2823

0006-fix-coredump-in-etharp.patchD12-May-2024870 3023

0007-gazelle-fix-epoll_ctl-EPOLLET-mode-error.patchD12-May-20243 KiB10398

0008-gazelle-fix-lwip_accept-memcpy-sockaddr-large.patchD12-May-2024741 2622

0009-fix-stack-buffer-overflow-when-memcpy-addr.patchD12-May-20241 KiB3631

0010-fix-the-incomplete-release-of-the-conntable.patchD12-May-20244.6 KiB116107

0011-remove-gazelle-tcp-conn-func.patchD12-May-20243.1 KiB117110

0012-fix-incomplete-resource-release-in-lwip-close.patchD12-May-20241.3 KiB5041

0013-remove-gazelle-syscall-thread.patchD12-May-20243.8 KiB127112

0014-fix-some-compile-errors.patchD12-May-20241.9 KiB6353

0015-fix-tcp-port-alloc-issue.patchD12-May-2024730 3730

0016-lstack-support-mysql-mode.patchD12-May-202427.1 KiB944870

0017-support-REUSEPOR-option.patchD12-May-20241.7 KiB5954

0018-exec-gazelle_init_sock-before-read-event.patchD12-May-20241.3 KiB3833

0019-gazelle-reduce-copy-in-send.patchD12-May-20241.7 KiB5145

0020-remove-chose_dlsym_handle-function-set-handle-to-RTL.patchD12-May-20241.7 KiB6456

0021-refactor-event-if-ring-is-full-the-node-is-added-to-.patchD12-May-2024950 3430

0022-notify-app-that-sock-state-changes-to-CLOSE_WAIT.patchD12-May-20241.6 KiB5750

0023-refactor-event-and-checksum-offload-support.patchD12-May-202423.2 KiB699659

0024-refactor-pkt-read-send-performance.patchD12-May-20249.9 KiB321291

0025-Replace-gettid-with-syscall-SYS_gettid.patchD12-May-20241.8 KiB5848

0026-del-redundant-wait_close-and-move-epoll_events-pos.patchD12-May-20241 KiB3126

0027-modify-EISCONN-condition.patchD12-May-20241.4 KiB4035

0028-per-thread-reassdata-variables.patchD12-May-2024887 3125

0029-fix-EISCONN-err-and-remove-same-customized-modificat.patchD12-May-20243.8 KiB115106

0030-refactor-tcp-new-port.patchD12-May-20245.5 KiB196180

0031-refactor-add-event-limit-send-pkts-num.patchD12-May-20242.3 KiB7266

0032-fix-free-pbuf-miss-data.patchD12-May-20242.1 KiB8169

0033-alloc-socket-fail-clean-sock.patchD12-May-20241.3 KiB4034

0034-add-accept4-and-epoll_create1.patchD12-May-20246.1 KiB183169

0035-add-writev-and-readv.patchD12-May-20241.8 KiB4238

0036-add-fs-secure-compilation-option.patchD12-May-2024794 2620

0037-enable-ARP-QUEUE-to-avoid-sync-packet-dropped.patchD12-May-2024688 2822

0038-add-tso.patchD12-May-202411.7 KiB381366

0039-optimize-app-thread-write-buff-block.patchD12-May-20243.2 KiB9585

0040-add-huge-snd_buf.patchD12-May-20243.6 KiB8780

0041-optimite-pcb-list-limit-send-size-and-ack-now.patchD12-May-202412.7 KiB375349

0042-expand-recv-win.patchD12-May-20241 KiB4031

0043-add-prefetch.patchD12-May-20241.7 KiB6355

0044-skip-unnecessary-tcp_route.patchD12-May-20243.1 KiB10492

0045-add-variable-in-struct-sock.patchD12-May-2024767 2723

0046-add-dataack-when-recv-too-many-acks-with-data.patchD12-May-20242.8 KiB9282

0047-reduce-struct-pbuf-size.patchD12-May-2024647 2622

0048-listen-pcb-also-use-pcb_if.patchD12-May-20241.1 KiB3833

0049-expand-recv-mbox-size.patchD12-May-20242 KiB6253

0050-lwip-reuse-ip-port.patchD12-May-20247.9 KiB255240

0051-lwip-add-need_tso_send.patchD12-May-20242.3 KiB7770

0052-lwip_fnctl-only-support-F_SETFL-F_GETFL.patchD12-May-2024876 3127

0053-cleancode-improve-lwipopts.h-readability.patchD12-May-202469.4 KiB2,2532,014

0054-reduce-cpu-usage-when-send.patchD12-May-2024780 3326

0055-add-pbuf-lock-when-aggregate-pbuf.patchD12-May-20241.4 KiB4741

0056-fix-tso-small-packet-drop-in-kernel-server.patchD12-May-202411.2 KiB326310

0057-same-node-gazellectl-a.patchD12-May-202414 KiB457415

0058-lwip-send-recv-thread-bind-numa.patchD12-May-2024652 2520

0059-fix-last_unsent-last_unacked.patchD12-May-20243.8 KiB115106

0060-lwip-add-udp-multicast.patchD12-May-20249.9 KiB338310

0061-fix-pbuf-leak-in-udp-connection.patchD12-May-2024796 3025

0062-drop-netbuf-in-recv_udp-to-fix-mem-overflow.patchD12-May-20248 KiB250229

0063-optimize-avoid-too-many-empty-acks-in-tcp_input.patchD12-May-2024822 3124

0064-fix-udp-send-recv-in-multiple-queue.patchD12-May-20244.8 KiB170155

0065-fix-udp-recvmbox-size-not-set.patchD12-May-2024558 2519

0066-adapt-to-dpdk-19.11-and-dpdk-21.11.patchD12-May-20244.8 KiB145133

0067-fix-null-pointer-when-all-zero-address-listen.patchD12-May-20243.2 KiB10196

0068-enable-UDP-CKSUM-in-lwip.patchD12-May-20241.1 KiB4335

0069-add-error-check-in-hugepage_init-and-sys_mbox_free.patchD12-May-20242.1 KiB7363

0070-add-CHECKSUM_UDP-when-not-support-OFFLOAD_UDP_CHECKS.patchD12-May-20246.9 KiB181161

0071-fix-pbuf-tot_len-incorrect-after-pbuf_split_64k-is-c.patchD12-May-20241.1 KiB3632

0072-add-O_NONBLOCK-and-FIONBIO-when-not-defined.patchD12-May-2024413 1913

0073-lstack_lwip-external-api-start-with-do_lwip_-prefix.patchD12-May-20248.2 KiB209197

0074-gazelle-offloads-are-registered-to-lwip.patchD12-May-20248.9 KiB242232

0075-adapt-read-write-for-rtc-mode.patchD12-May-202414.3 KiB458425

0076-fix-recvmsg-return-EINVAL.patchD12-May-20241.4 KiB3935

0077-adpat-event-for-rtc-mode.patchD12-May-20243.6 KiB124117

0078-posix_api-support-select.patchD12-May-20241.4 KiB3832

0079-enable-vlan-define.patchD12-May-20241.1 KiB4235

0080-enable-ipv6.patchD12-May-202415.6 KiB426390

0081-ip6-hdr.patchD12-May-202413.6 KiB355329

0082-add-vlanid-in-netif.patchD12-May-20243.4 KiB110103

0083-lwipopts-add-lwip-debug-log-macro.patchD12-May-20242.1 KiB7664

0084-add-tcpslowtmr-log-and-tcpfasttmr-cnt.patchD12-May-20246 KiB136125

0085-add-lwip-log-tcp_rst-tcp_abandon-tcp_abort.patchD12-May-20248.7 KiB193184

0086-log-add-errevent-log-and-tcp-exception-statistics.patchD12-May-20242.6 KiB7871

0087-support-vlan-offload.patchD12-May-20241.9 KiB5752

BUILD.gnD12-May-20242 KiB7469

CHANGELOGD12-May-2024180.8 KiB4,5493,373

CMakeLists.txtD12-May-2024763 2116

COPYINGD12-May-20241.5 KiB127

FEATURESD12-May-20241.3 KiB129

FILESD12-May-2024213 64

OAT.xmlD12-May-20246 KiB8538

READMED12-May-20243.9 KiB10778

README.OpenSourceD12-May-2024825 1211

README_en.mdD12-May-20243.9 KiB10778

UPGRADINGD12-May-202412.1 KiB279204

backport-Add-outgoing-VLAN-PCP-support.patchD12-May-20245.1 KiB144133

backport-fix-compiling-ETHARP_SUPPORT_VLAN.patchD12-May-20241.2 KiB3428

backport-tcp-fix-sequence-number-comparison.patchD12-May-20241.7 KiB3733

backport-tcp-tighten-up-checks-for-received-SYN.patchD12-May-20242.1 KiB5956

bundle.jsonD12-May-20241.1 KiB3737

install.shD12-May-2024674 225

lwip-2.1.3.tar.xzD12-May-20244 MiB

lwip.gniD12-May-20246.8 KiB217194

lwip.specD12-May-202415.7 KiB427320

pax_global_headerD12-May-202452 21

README

1INTRODUCTION
2
3lwIP is a small independent implementation of the TCP/IP protocol suite.
4
5The focus of the lwIP TCP/IP implementation is to reduce the RAM usage
6while still having a full scale TCP. This making lwIP suitable for use
7in embedded systems with tens of kilobytes of free RAM and room for
8around 40 kilobytes of code ROM.
9
10lwIP was originally developed by Adam Dunkels at the Computer and Networks
11Architectures (CNA) lab at the Swedish Institute of Computer Science (SICS)
12and is now developed and maintained by a worldwide network of developers.
13
14FEATURES
15
16  * IP (Internet Protocol, IPv4 and IPv6) including packet forwarding over
17    multiple network interfaces
18  * ICMP (Internet Control Message Protocol) for network maintenance and debugging
19  * IGMP (Internet Group Management Protocol) for multicast traffic management
20  * MLD (Multicast listener discovery for IPv6). Aims to be compliant with
21    RFC 2710. No support for MLDv2
22  * ND (Neighbor discovery and stateless address autoconfiguration for IPv6).
23    Aims to be compliant with RFC 4861 (Neighbor discovery) and RFC 4862
24    (Address autoconfiguration)
25  * DHCP, AutoIP/APIPA (Zeroconf) and (stateless) DHCPv6
26  * UDP (User Datagram Protocol) including experimental UDP-lite extensions
27  * TCP (Transmission Control Protocol) with congestion control, RTT estimation
28    fast recovery/fast retransmit and sending SACKs
29  * raw/native API for enhanced performance
30  * Optional Berkeley-like socket API
31  * TLS: optional layered TCP ("altcp") for nearly transparent TLS for any
32    TCP-based protocol (ported to mbedTLS) (see changelog for more info)
33  * PPPoS and PPPoE (Point-to-point protocol over Serial/Ethernet)
34  * DNS (Domain name resolver incl. mDNS)
35  * 6LoWPAN (via IEEE 802.15.4, BLE or ZEP)
36
37
38APPLICATIONS
39
40  * HTTP server with SSI and CGI (HTTPS via altcp)
41  * SNMPv2c agent with MIB compiler (Simple Network Management Protocol), v3 via altcp
42  * SNTP (Simple network time protocol)
43  * NetBIOS name service responder
44  * MDNS (Multicast DNS) responder
45  * iPerf server implementation
46  * MQTT client (TLS support via altcp)
47
48
49LICENSE
50
51lwIP is freely available under a BSD license.
52
53
54DEVELOPMENT
55
56lwIP has grown into an excellent TCP/IP stack for embedded devices,
57and developers using the stack often submit bug fixes, improvements,
58and additions to the stack to further increase its usefulness.
59
60Development of lwIP is hosted on Savannah, a central point for
61software development, maintenance and distribution. Everyone can
62help improve lwIP by use of Savannah's interface, Git and the
63mailing list. A core team of developers will commit changes to the
64Git source tree.
65
66The lwIP TCP/IP stack is maintained in the 'lwip' Git module and
67contributions (such as platform ports) are in the 'contrib' Git module.
68
69See doc/savannah.txt for details on Git server access for users and
70developers.
71
72The current Git trees are web-browsable:
73  http://git.savannah.gnu.org/cgit/lwip.git
74  http://git.savannah.gnu.org/cgit/lwip/lwip-contrib.git
75
76Submit patches and bugs via the lwIP project page:
77  http://savannah.nongnu.org/projects/lwip/
78
79Continuous integration builds (GCC, clang):
80  https://travis-ci.org/yarrick/lwip-merged
81
82
83DOCUMENTATION
84
85Self documentation of the source code is regularly extracted from the current
86Git sources and is available from this web page:
87  http://www.nongnu.org/lwip/
88
89There is now a constantly growing wiki about lwIP at
90  http://lwip.wikia.com/wiki/LwIP_Wiki
91
92Also, there are mailing lists you can subscribe at
93  http://savannah.nongnu.org/mail/?group=lwip
94plus searchable archives:
95  http://lists.nongnu.org/archive/html/lwip-users/
96  http://lists.nongnu.org/archive/html/lwip-devel/
97
98lwIP was originally written by Adam Dunkels:
99  http://dunkels.com/adam/
100
101Reading Adam's papers, the files in docs/, browsing the source code
102documentation and browsing the mailing list archives is a good way to
103become familiar with the design of lwIP.
104
105Adam Dunkels <adam@sics.se>
106Leon Woestenberg <leon.woestenberg@gmx.net>
107

README.OpenSource

1[
2    {
3        "Name"                  : "openEuler:lwip",
4        "License"               : "BSD 3-Clause License",
5        "License File"          : "COPYING",
6        "Version Number"        : "2.1.3-39.oe2203sp1",
7        "Owner"                 : "wangmihu@huawei.com",
8        "Upstream URL"          : "https://repo.openeuler.org/openEuler-22.03-LTS/update/source/Packages/lwip-2.1.3-39.oe2203sp1.src.rpm",
9        "Description"           : "lwIP is a small independent implementation of the TCP/IP protocol suite that has been initially developed by Adam Dunkels. The focus of the lwIP TCP/IP implementation is to reduce resource usage while still having a full scale TCP. This makes lwIP suitable for use in embedded systems with tens of kilobytes of free RAM and room for around 40 kilobytes of code ROM."
10    }
11]
12

README_en.md

1# INTRODUCTION
2
3lwIP is a small independent implementation of the TCP/IP protocol suite.
4
5The focus of the lwIP TCP/IP implementation is to reduce the RAM usage
6while still having a full scale TCP. This making lwIP suitable for use
7in embedded systems with tens of kilobytes of free RAM and room for
8around 40 kilobytes of code ROM.
9
10lwIP was originally developed by Adam Dunkels at the Computer and Networks
11Architectures (CNA) lab at the Swedish Institute of Computer Science (SICS)
12and is now developed and maintained by a worldwide network of developers.
13
14# FEATURES
15
16  * IP (Internet Protocol, IPv4 and IPv6) including packet forwarding over
17    multiple network interfaces
18  * ICMP (Internet Control Message Protocol) for network maintenance and debugging
19  * IGMP (Internet Group Management Protocol) for multicast traffic management
20  * MLD (Multicast listener discovery for IPv6). Aims to be compliant with
21    RFC 2710. No support for MLDv2
22  * ND (Neighbor discovery and stateless address autoconfiguration for IPv6).
23    Aims to be compliant with RFC 4861 (Neighbor discovery) and RFC 4862
24    (Address autoconfiguration)
25  * DHCP, AutoIP/APIPA (Zeroconf) and (stateless) DHCPv6
26  * UDP (User Datagram Protocol) including experimental UDP-lite extensions
27  * TCP (Transmission Control Protocol) with congestion control, RTT estimation
28    fast recovery/fast retransmit and sending SACKs
29  * raw/native API for enhanced performance
30  * Optional Berkeley-like socket API
31  * TLS: optional layered TCP ("altcp") for nearly transparent TLS for any
32    TCP-based protocol (ported to mbedTLS) (see changelog for more info)
33  * PPPoS and PPPoE (Point-to-point protocol over Serial/Ethernet)
34  * DNS (Domain name resolver incl. mDNS)
35  * 6LoWPAN (via IEEE 802.15.4, BLE or ZEP)
36
37
38# APPLICATIONS
39
40  * HTTP server with SSI and CGI (HTTPS via altcp)
41  * SNMPv2c agent with MIB compiler (Simple Network Management Protocol), v3 via altcp
42  * SNTP (Simple network time protocol)
43  * NetBIOS name service responder
44  * MDNS (Multicast DNS) responder
45  * iPerf server implementation
46  * MQTT client (TLS support via altcp)
47
48
49# LICENSE
50
51lwIP is freely available under a BSD license.
52
53
54# DEVELOPMENT
55
56lwIP has grown into an excellent TCP/IP stack for embedded devices,
57and developers using the stack often submit bug fixes, improvements,
58and additions to the stack to further increase its usefulness.
59
60Development of lwIP is hosted on Savannah, a central point for
61software development, maintenance and distribution. Everyone can
62help improve lwIP by use of Savannah's interface, Git and the
63mailing list. A core team of developers will commit changes to the
64Git source tree.
65
66The lwIP TCP/IP stack is maintained in the 'lwip' Git module and
67contributions (such as platform ports) are in the 'contrib' Git module.
68
69See doc/savannah.txt for details on Git server access for users and
70developers.
71
72The current Git trees are web-browsable:
73  http://git.savannah.gnu.org/cgit/lwip.git
74  http://git.savannah.gnu.org/cgit/lwip/lwip-contrib.git
75
76Submit patches and bugs via the lwIP project page:
77  http://savannah.nongnu.org/projects/lwip/
78
79Continuous integration builds (GCC, clang):
80  https://travis-ci.org/yarrick/lwip-merged
81
82
83# DOCUMENTATION
84
85Self documentation of the source code is regularly extracted from the current
86Git sources and is available from this web page:
87  http://www.nongnu.org/lwip/
88
89There is now a constantly growing wiki about lwIP at
90  http://lwip.wikia.com/wiki/LwIP_Wiki
91
92Also, there are mailing lists you can subscribe at
93  http://savannah.nongnu.org/mail/?group=lwip
94plus searchable archives:
95  http://lists.nongnu.org/archive/html/lwip-users/
96  http://lists.nongnu.org/archive/html/lwip-devel/
97
98lwIP was originally written by Adam Dunkels:
99  http://dunkels.com/adam/
100
101Reading Adam's papers, the files in docs/, browsing the source code
102documentation and browsing the mailing list archives is a good way to
103become familiar with the design of lwIP.
104
105Adam Dunkels <adam@sics.se>
106Leon Woestenberg <leon.woestenberg@gmx.net>
107