UbixOS  2.0
ip6.h File Reference
#include "lwip/arch.h"
#include "lwip/ip6_addr.h"
Include dependency graph for ip6.h:

Go to the source code of this file.

Data Structures

struct  ip6_addr_packed
 
struct  ip6_frag_hdr
 
struct  ip6_hbh_hdr
 
struct  ip6_hdr
 

Macros

#define IP6_FRAG_HLEN   8
 
#define IP6_FRAG_MORE_FLAG   0x0001
 
#define IP6_FRAG_OFFSET_MASK   0xfff8
 
#define IP6_HBH_HLEN   8
 
#define IP6_HLEN   40
 
#define IP6_NEXTH_DESTOPTS   60
 
#define IP6_NEXTH_ENCAPS   41
 
#define IP6_NEXTH_FRAGMENT   44
 
#define IP6_NEXTH_HOPBYHOP   0
 
#define IP6_NEXTH_ICMP6   58
 
#define IP6_NEXTH_NONE   59
 
#define IP6_NEXTH_ROUTING   43
 
#define IP6_NEXTH_TCP   6
 
#define IP6_NEXTH_UDP   17
 
#define IP6_NEXTH_UDPLITE   136
 
#define IP6_PAD1_OPTION   0
 
#define IP6_PADN_ALERT_OPTION   1
 
#define IP6_ROUTER_ALERT_OPTION   5
 
#define IP6_ROUTER_ALERT_VALUE_MLD   0
 
#define IP6H_FL(hdr)   (lwip_ntohl((hdr)->_v_tc_fl) & 0x000fffff)
 
#define IP6H_HOPLIM(hdr)   ((hdr)->_hoplim)
 
#define IP6H_HOPLIM_SET(hdr, hl)   (hdr)->_hoplim = (u8_t)(hl)
 
#define IP6H_NEXTH(hdr)   ((hdr)->_nexth)
 
#define IP6H_NEXTH_P(hdr)   ((u8_t *)(hdr) + 6)
 
#define IP6H_NEXTH_SET(hdr, nexth)   (hdr)->_nexth = (nexth)
 
#define IP6H_PLEN(hdr)   (lwip_ntohs((hdr)->_plen))
 
#define IP6H_PLEN_SET(hdr, plen)   (hdr)->_plen = lwip_htons(plen)
 
#define IP6H_TC(hdr)   ((lwip_ntohl((hdr)->_v_tc_fl) >> 20) & 0xff)
 
#define IP6H_V(hdr)   ((lwip_ntohl((hdr)->_v_tc_fl) >> 28) & 0x0f)
 
#define IP6H_VTCFL_SET(hdr, v, tc, fl)   (hdr)->_v_tc_fl = (lwip_htonl((((u32_t)(v)) << 28) | (((u32_t)(tc)) << 20) | (fl)))
 

Typedefs

typedef typedefPACK_STRUCT_END struct ip6_addr_packed ip6_addr_p_t
 

Variables

PACK_STRUCT_BEGIN struct ip6_addr_packed PACK_STRUCT_STRUCT
 

Detailed Description

IPv6 protocol definitions

Definition in file ip6.h.

Macro Definition Documentation

◆ IP6_FRAG_HLEN

#define IP6_FRAG_HLEN   8

Definition at line 130 of file ip6.h.

◆ IP6_FRAG_MORE_FLAG

#define IP6_FRAG_MORE_FLAG   0x0001

Definition at line 132 of file ip6.h.

◆ IP6_FRAG_OFFSET_MASK

#define IP6_FRAG_OFFSET_MASK   0xfff8

Definition at line 131 of file ip6.h.

◆ IP6_HBH_HLEN

#define IP6_HBH_HLEN   8

Definition at line 99 of file ip6.h.

◆ IP6_HLEN

#define IP6_HLEN   40

Definition at line 62 of file ip6.h.

◆ IP6_NEXTH_DESTOPTS

#define IP6_NEXTH_DESTOPTS   60

Definition at line 72 of file ip6.h.

◆ IP6_NEXTH_ENCAPS

#define IP6_NEXTH_ENCAPS   41

Definition at line 67 of file ip6.h.

◆ IP6_NEXTH_FRAGMENT

#define IP6_NEXTH_FRAGMENT   44

Definition at line 69 of file ip6.h.

◆ IP6_NEXTH_HOPBYHOP

#define IP6_NEXTH_HOPBYHOP   0

Definition at line 64 of file ip6.h.

◆ IP6_NEXTH_ICMP6

#define IP6_NEXTH_ICMP6   58

Definition at line 70 of file ip6.h.

◆ IP6_NEXTH_NONE

#define IP6_NEXTH_NONE   59

Definition at line 71 of file ip6.h.

◆ IP6_NEXTH_ROUTING

#define IP6_NEXTH_ROUTING   43

Definition at line 68 of file ip6.h.

◆ IP6_NEXTH_TCP

#define IP6_NEXTH_TCP   6

Definition at line 65 of file ip6.h.

◆ IP6_NEXTH_UDP

#define IP6_NEXTH_UDP   17

Definition at line 66 of file ip6.h.

◆ IP6_NEXTH_UDPLITE

#define IP6_NEXTH_UDPLITE   136

Definition at line 73 of file ip6.h.

◆ IP6_PAD1_OPTION

#define IP6_PAD1_OPTION   0

Definition at line 100 of file ip6.h.

◆ IP6_PADN_ALERT_OPTION

#define IP6_PADN_ALERT_OPTION   1

Definition at line 101 of file ip6.h.

◆ IP6_ROUTER_ALERT_OPTION

#define IP6_ROUTER_ALERT_OPTION   5

Definition at line 102 of file ip6.h.

◆ IP6_ROUTER_ALERT_VALUE_MLD

#define IP6_ROUTER_ALERT_VALUE_MLD   0

Definition at line 103 of file ip6.h.

◆ IP6H_FL

#define IP6H_FL (   hdr)    (lwip_ntohl((hdr)->_v_tc_fl) & 0x000fffff)

Definition at line 154 of file ip6.h.

◆ IP6H_HOPLIM

#define IP6H_HOPLIM (   hdr)    ((hdr)->_hoplim)

Definition at line 158 of file ip6.h.

◆ IP6H_HOPLIM_SET

#define IP6H_HOPLIM_SET (   hdr,
  hl 
)    (hdr)->_hoplim = (u8_t)(hl)

Definition at line 163 of file ip6.h.

◆ IP6H_NEXTH

#define IP6H_NEXTH (   hdr)    ((hdr)->_nexth)

Definition at line 156 of file ip6.h.

◆ IP6H_NEXTH_P

#define IP6H_NEXTH_P (   hdr)    ((u8_t *)(hdr) + 6)

Definition at line 157 of file ip6.h.

◆ IP6H_NEXTH_SET

#define IP6H_NEXTH_SET (   hdr,
  nexth 
)    (hdr)->_nexth = (nexth)

Definition at line 162 of file ip6.h.

◆ IP6H_PLEN

#define IP6H_PLEN (   hdr)    (lwip_ntohs((hdr)->_plen))

Definition at line 155 of file ip6.h.

◆ IP6H_PLEN_SET

#define IP6H_PLEN_SET (   hdr,
  plen 
)    (hdr)->_plen = lwip_htons(plen)

Definition at line 161 of file ip6.h.

◆ IP6H_TC

#define IP6H_TC (   hdr)    ((lwip_ntohl((hdr)->_v_tc_fl) >> 20) & 0xff)

Definition at line 153 of file ip6.h.

◆ IP6H_V

#define IP6H_V (   hdr)    ((lwip_ntohl((hdr)->_v_tc_fl) >> 28) & 0x0f)

Definition at line 152 of file ip6.h.

◆ IP6H_VTCFL_SET

#define IP6H_VTCFL_SET (   hdr,
  v,
  tc,
  fl 
)    (hdr)->_v_tc_fl = (lwip_htonl((((u32_t)(v)) << 28) | (((u32_t)(tc)) << 20) | (fl)))

Definition at line 160 of file ip6.h.

Typedef Documentation

◆ ip6_addr_p_t

typedef typedefPACK_STRUCT_END struct ip6_addr_packed ip6_addr_p_t

Definition at line 60 of file ip6.h.

Variable Documentation

◆ PACK_STRUCT_STRUCT

PACK_STRUCT_BEGIN struct ip6_frag_hdr PACK_STRUCT_STRUCT