mirror of
https://git.savannah.nongnu.org/git/lwip.git
synced 2026-05-20 15:17:05 +08:00
Applied patch #5832 from Tai-hwa Liang to keep ipv6 building.
This commit is contained in:
@@ -54,6 +54,19 @@
|
||||
#endif /* IP_HDRINCL */
|
||||
#define IP_HDRINCL NULL
|
||||
|
||||
/* This is the common part of all PCB types. It needs to be at the
|
||||
beginning of a PCB type definition. It is located here so that
|
||||
changes to this common part are made in one location instead of
|
||||
having to change all PCB structs. */
|
||||
#define IP_PCB struct ip_addr local_ip; \
|
||||
struct ip_addr remote_ip; \
|
||||
/* Socket options */ \
|
||||
u16_t so_options; \
|
||||
/* Type Of Service */ \
|
||||
u8_t tos; \
|
||||
/* Time To Live */ \
|
||||
u8_t ttl
|
||||
|
||||
|
||||
/* The IPv6 header. */
|
||||
struct ip_hdr {
|
||||
|
||||
@@ -36,9 +36,33 @@
|
||||
|
||||
#define IP_ADDR_ANY 0
|
||||
|
||||
struct ip_addr {
|
||||
u32_t addr[4];
|
||||
};
|
||||
#ifdef PACK_STRUCT_USE_INCLUDES
|
||||
# include "arch/bpstruct.h"
|
||||
#endif
|
||||
PACK_STRUCT_BEGIN
|
||||
struct ip_addr {
|
||||
PACK_STRUCT_FIELD(u32_t addr[4]);
|
||||
} PACK_STRUCT_STRUCT;
|
||||
PACK_STRUCT_END
|
||||
#ifdef PACK_STRUCT_USE_INCLUDES
|
||||
# include "arch/epstruct.h"
|
||||
#endif
|
||||
|
||||
/*
|
||||
* struct ipaddr2 is used in the definition of the ARP packet format in
|
||||
* order to support compilers that don't have structure packing.
|
||||
*/
|
||||
#ifdef PACK_STRUCT_USE_INCLUDES
|
||||
# include "arch/bpstruct.h"
|
||||
#endif
|
||||
PACK_STRUCT_BEGIN
|
||||
struct ip_addr2 {
|
||||
PACK_STRUCT_FIELD(u16_t addrw[2]);
|
||||
} PACK_STRUCT_STRUCT;
|
||||
PACK_STRUCT_END
|
||||
#ifdef PACK_STRUCT_USE_INCLUDES
|
||||
# include "arch/epstruct.h"
|
||||
#endif
|
||||
|
||||
#define IP6_ADDR(ipaddr, a,b,c,d,e,f,g,h) do { (ipaddr)->addr[0] = htonl((u32_t)((a & 0xffff) << 16) | (b & 0xffff)); \
|
||||
(ipaddr)->addr[1] = htonl(((c & 0xffff) << 16) | (d & 0xffff)); \
|
||||
@@ -51,9 +75,15 @@ u8_t ip_addr_cmp(struct ip_addr *addr1, struct ip_addr *addr2);
|
||||
void ip_addr_set(struct ip_addr *dest, struct ip_addr *src);
|
||||
u8_t ip_addr_isany(struct ip_addr *addr);
|
||||
|
||||
|
||||
#if IP_DEBUG
|
||||
void ip_addr_debug_print(struct ip_addr *addr);
|
||||
#endif /* IP_DEBUG */
|
||||
#define ip_addr_debug_print(debug, ipaddr) \
|
||||
LWIP_DEBUGF(debug, ("%"X32_F":%"X32_F":%"X32_F":%"X32_F":%"X32_F":%"X32_F":%"X32_F":%"X32_F"\n", \
|
||||
(ntohl(ipaddr->addr[0]) >> 16) & 0xffff, \
|
||||
ntohl(ipaddr->addr[0]) & 0xffff, \
|
||||
(ntohl(ipaddr->addr[1]) >> 16) & 0xffff, \
|
||||
ntohl(ipaddr->addr[1]) & 0xffff, \
|
||||
(ntohl(ipaddr->addr[2]) >> 16) & 0xffff, \
|
||||
ntohl(ipaddr->addr[2]) & 0xffff, \
|
||||
(ntohl(ipaddr->addr[3]) >> 16) & 0xffff, \
|
||||
ntohl(ipaddr->addr[3]) & 0xffff));
|
||||
|
||||
#endif /* __LWIP_IP_ADDR_H__ */
|
||||
|
||||
Reference in New Issue
Block a user