Compare commits

..

4 Commits

Author SHA1 Message Date
Simon Goldschmidt
0a0452b2c3 Prepare 2.2.0 release 2023-09-25 21:25:35 +02:00
Simon Goldschmidt
c0cf130bb7 Prepare changelog for 2.2.0 release 2023-09-22 10:02:18 +02:00
Simon Goldschmidt
3eeda139bc minor coding style/spelling fixes 2023-09-22 09:54:36 +02:00
Simon Goldschmidt
b92faffaaa LWIP_VLAN_PCP==1: initialize tci correctly (disabled); add pcb_tci_*() functions to access the tci 2023-09-22 09:53:13 +02:00
11 changed files with 111 additions and 12 deletions

View File

@@ -6,11 +6,92 @@ HISTORY
* [Enter new changes just after this line - do not remove this line]
(STABLE-2.2.0):
2018-10-02: Dirk Ziegelmeier
* Integrate contrib repository into main lwIP repository
++ New features:
2022-04-05: David Cermak
* contrib/addons: Add example of using DHCP extra options hooks
2023-05-11: David Cermak
* dhcp: Add macro for appending extra client's request options
2023-05-11: xueyunfei
* dhcp: Enable custom config for timeouts, thresholds, backoff time
2021-04-26
* test/unit: added more unit tests
2020-03-27: Simon Goldschmidt
* test/fuzz: improve fuzz test
2019-12-11: Simon Goldschmidt
* ip6addr_aton: support scoped address strings (via '%')
2019-08-28: Joan Lledó
* Contrib: Add kFreeBSD to the Unix port
2019-07-14: Joan Lledó
* Unix port: improve support for the Hurd
++ Bugfixes:
2019-12-11: David Girault
* altcp_tls: support for saving/restoring session information
2018-11-16: Craig McQUeen
* dns: allow a DNS look-up with a trailing dot in the name
2018-10-19: Timmy Brolin
* Add outgoing VLAN PCP support for Ethernet level QoS
2018-10-08: Ben Wijen
* apps/tftp: added TFTP client
2018-10-04: Jasper Verschueren
* Implement IPv4 ACD (Address Conflict Detection)
2018-10-02: Dirk Ziegelmeier
* Integrate contrib repository into main lwIP rep, tag STABLE-2_1_0_RELEASE
2023-05-10
* altcp_tls_mbedtls: note which version of mbedtls we are compatible to
* altcp_tls_mbedtls: multiple compatibility fixes
2023-04-26: Jan Breuer, Harrold Spier, Ognjen Bjelica, Dirk Ziegelmeier, Simon Goldschmidt
* apps/snmp: multiple fixes and improvements to snmp
2022-01-12: Simon Goldschmidt
* httpd: clean up custom file handling
2021-11-25: quanjia
* ping: fix sockaddr len in ping_send() for PING_USE_SOCKETS==1
2021-11-12: Bas Prins
* http_client: reset timeout when receiving data
2020-07-07: Erik Ekman
* Rename IP and Ethernet equality checkers from _cmp to _eq
2020-03-05: Simon Goldschmidt
* tcp: tighten up checks for received SYN
2020-01-30: Simon Goldschmidt, David Girault, David J. Fiddes, Tom Ferrin
* apps/sntp: multiple fixes and improvements for sntp
2020-01-30: Simon Goldschmidt
* ip_forward: fix IPv4 forwarding with multiple netifs/offloading
2019-06-11: David Girault, Giuseppe Modugno
* apps/mqtt: multiple fixes for mqtt
2019-05-19: Joan Lledó
* New function tcpip_callback_wait()
Call a function inside the tcpip thread and block the calling thread until
the callback finishes
2018-08-15: Jasper Verschueren, David Girault, Our Air Quality
* apps/mdns: greatly improved the mdns client
(STABLE-2.1.2):

View File

@@ -38,7 +38,7 @@ PROJECT_NAME = "lwIP"
# could be handy for archiving the generated documentation or if some version
# control system is used.
PROJECT_NUMBER = "2.2.0.rc1"
PROJECT_NUMBER = "2.2.0"
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a

View File

@@ -102,7 +102,7 @@ Archive the current directory using tar, gzip'd, bzip2'd and zip'd.
tar cjvf lwip-1.4.1.tar.bz2 lwip-1.4.1
zip -r lwip-1.4.1.zip lwip-1.4.1
Alterntively, archive the current directory using git
Alternatively, archive the current directory using git
git archive -o lwip-1.4.1.tar.gz --prefix lwip-1.4.1/ STABLE-1_4_1
Now, sign the archives with a detached GPG binary signature as follows:

View File

@@ -18,7 +18,7 @@ set(LWIP_VERSION_REVISION "0")
# LWIP_VERSION_RC is set to LWIP_RC_RELEASE for official releases
# LWIP_VERSION_RC is set to LWIP_RC_DEVELOPMENT for Git versions
# Numbers 1..31 are reserved for release candidates
set(LWIP_VERSION_RC "1")
set(LWIP_VERSION_RC "LWIP_RC_RELEASE")
if ("${LWIP_VERSION_RC}" STREQUAL "LWIP_RC_RELEASE")
set(LWIP_VERSION_STRING

View File

@@ -351,7 +351,9 @@ icmp_send_response(struct pbuf *p, u8_t type, u8_t code)
/* Keep IP header + up to 8 bytes */
response_pkt_len = IP_HLEN + ICMP_DEST_UNREACH_DATASIZE;
if (p->tot_len < response_pkt_len) response_pkt_len = p->tot_len;
if (p->tot_len < response_pkt_len) {
response_pkt_len = p->tot_len;
}
/* ICMP header + part of original packet */
q = pbuf_alloc(PBUF_IP, sizeof(struct icmp_hdr) + response_pkt_len, PBUF_RAM);

View File

@@ -610,6 +610,7 @@ raw_new(u8_t proto)
#if LWIP_MULTICAST_TX_OPTIONS
raw_set_multicast_ttl(pcb, RAW_TTL);
#endif /* LWIP_MULTICAST_TX_OPTIONS */
pcb_tci_init(pcb);
pcb->next = raw_pcbs;
raw_pcbs = pcb;
}

View File

@@ -1929,6 +1929,7 @@ tcp_alloc(u8_t prio)
pcb->keep_intvl = TCP_KEEPINTVL_DEFAULT;
pcb->keep_cnt = TCP_KEEPCNT_DEFAULT;
#endif /* LWIP_TCP_KEEPALIVE */
pcb_tci_init(pcb);
}
return pcb;
}

View File

@@ -1238,6 +1238,7 @@ udp_new(void)
#if LWIP_MULTICAST_TX_OPTIONS
udp_set_multicast_ttl(pcb, UDP_TTL);
#endif /* LWIP_MULTICAST_TX_OPTIONS */
pcb_tci_init(pcb);
}
return pcb;
}

View File

@@ -58,7 +58,7 @@ extern "C" {
/** For release candidates, this is set to 1..254
* For official releases, this is set to 255 (LWIP_RC_RELEASE)
* For development versions (Git), this is set to 0 (LWIP_RC_DEVELOPMENT) */
#define LWIP_VERSION_RC 1
#define LWIP_VERSION_RC LWIP_RC_RELEASE
/** LWIP_VERSION_RC is set to LWIP_RC_RELEASE for official releases */
#define LWIP_RC_RELEASE 255

View File

@@ -93,6 +93,17 @@ struct ip_pcb {
IP_PCB;
};
#if LWIP_VLAN_PCP
#define pcb_has_tci(pcb) ((pcb)->netif_hints.tci >= 0)
#define pcb_tci_get(pcb) ((pcb)->netif_hints.tci)
#define pcb_tci_clear(pcb) do { (pcb)->netif_hints.tci = -1; } while(0)
#define pcb_tci_set(pcb, tci_val) do { (pcb)->netif_hints.tci = (tci_val) & 0xffff; } while(0)
#define pcb_tci_set_pcp_dei_vid(pcb, pcp, dei, vid) pcb_tci_set(pcb, (((pcp) & 7) << 13) | (((dei) & 1) << 12) | ((vid) & 0xFFF))
#define pcb_tci_init(pcb) pcb_tci_clear(pcb)
#else
#define pcb_tci_init(pcb)
#endif
/*
* Option flags per-socket. These are the same like SO_XXX in sockets.h
*/

View File

@@ -672,11 +672,13 @@
/**
* LWIP_VLAN_PCP==1: Enable outgoing VLAN taggning of frames on a per-PCB basis
* for QoS purposes. With this feature enabled, each PCB has a new variable: "tci".
* (Tag Control Identifier). The TCI contains three fields: VID, CFI and PCP.
* VID is the VLAN ID, which should be set to zero.
* The "CFI" bit is used to enable or disable VLAN tags for the PCB.
* PCP (Priority Code Point) is a 3 bit field used for Ethernet level QoS.
* for QoS purposes. With this feature enabled, each PCB has a new variable:
* "netif_hints.tci" (Tag Control Identifier).
* The TCI contains three fields: VID, CFI and PCP.
* - VID is the VLAN ID, which should be set to zero.
* - The "CFI" bit is used to enable or disable VLAN tags for the PCB.
* - PCP (Priority Code Point) is a 3 bit field used for Ethernet level QoS.
* See pcb_tci_*() functions to get/set/clear this.
*/
#ifndef LWIP_VLAN_PCP
#define LWIP_VLAN_PCP 0