Flag definitions for Network interface API. More...

Detailed Description

Flag definitions for Network interface API.

Author
Martine Lenders m.len.nosp@m.ders.nosp@m.@fu-b.nosp@m.erli.nosp@m.n.de

Definition in file flags.h.

+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

enum  { GNRC_NETIF_AAC_NONE = 0, GNRC_NETIF_AAC_AUTO, GNRC_NETIF_AAC_DHCP }
 Auto-address configuration modes. More...
 

Network interface flags

#define GNRC_NETIF_FLAGS_HAS_L2ADDR   (0x00000001U)
 Network interface has link-layer address. More...
 
#define GNRC_NETIF_FLAGS_IPV6_FORWARDING   (0x00000002U)
 Network interface is enabled for IPv6 forwarding.
 
#define GNRC_NETIF_FLAGS_IPV6_RTR_ADV   (0x00000004U)
 Network interface advertises itself as an IPv6 router (implies GNRC_NETIF_FLAGS_IPV6_FORWARDING to be set)
 
#define GNRC_NETIF_FLAGS_IPV6_ADV_MTU   (0x00000008U)
 This interface advertises its gnrc_netif_t::mtu to other nodes (implies GNRC_NETIF_FLAGS_IPV6_RTR_ADV to be set)
 
#define GNRC_NETIF_FLAGS_IPV6_ADV_CUR_HL   (0x00000010U)
 This interface advertises its gnrc_netif_t::cur_hl to other nodes (implies GNRC_NETIF_FLAGS_IPV6_RTR_ADV to be set)
 
#define GNRC_NETIF_FLAGS_IPV6_ADV_REACH_TIME   (0x00000020U)
 This interface advertises its reachable time to other nodes (implies GNRC_NETIF_FLAGS_IPV6_RTR_ADV to be set)
 
#define GNRC_NETIF_FLAGS_IPV6_ADV_RETRANS_TIMER   (0x00000040U)
 This interface advertises its retransmission timer to other nodes (implies GNRC_NETIF_FLAGS_IPV6_RTR_ADV to be set)
 
#define GNRC_NETIF_FLAGS_IPV6_ADV_O_FLAG   (0x00000080U)
 If gnrc_netif_t::ipv6::aac_mode == GNRC_NETIF_AAC_DHCP then this flag indicates that other configuration information is available via DHCPv6 (e.g. More...
 
#define GNRC_NETIF_FLAGS_6LO_HC   (0x00000100U)
 This interface uses 6Lo header compression. More...
 
#define GNRC_NETIF_FLAGS_6LO_ABR   (0x00000200U)
 This interface acts as a 6Lo border router to the LLN.
 
#define GNRC_NETIF_FLAGS_6LO_MESH   (0x00000400U)
 This interface acts as a mesh-under node (route-over topology when unset)
 
#define GNRC_NETIF_FLAGS_6LO_BACKBONE   (0x00000800U)
 Interface supports 6LoWPAN general header compression. More...
 
#define GNRC_NETIF_FLAGS_6LN   (0x00001000U)
 This interface represents a 6Lo node (6LN) according to RFC 6775. More...
 
#define GNRC_NETIF_FLAGS_6LO   (0x00002000U)
 6Lo is activated for this interface More...
 
#define GNRC_NETIF_FLAGS_RAWMODE   (0x00010000U)
 Network interface is configured in raw mode.
 

Macro Definition Documentation

◆ GNRC_NETIF_FLAGS_6LN

#define GNRC_NETIF_FLAGS_6LN   (0x00001000U)

This interface represents a 6Lo node (6LN) according to RFC 6775.

See also
RFC 6775, section 2

Definition at line 126 of file flags.h.

◆ GNRC_NETIF_FLAGS_6LO

#define GNRC_NETIF_FLAGS_6LO   (0x00002000U)

6Lo is activated for this interface

Note
Most devices supporting 6Lo actually require 6Lo so this flag should not be configurable for them. As a consequence, this flag must only be changed by a NETOPT_6LO message to the interface.

Definition at line 136 of file flags.h.

◆ GNRC_NETIF_FLAGS_6LO_BACKBONE

#define GNRC_NETIF_FLAGS_6LO_BACKBONE   (0x00000800U)

Interface supports 6LoWPAN general header compression.

Attention
6CIO (which propagates this flag throughout) not implemented yet
See also
RFC 7400, section 3.3
draft-ietf-6lo-rfc6775-update-09, section 6.3

Definition at line 119 of file flags.h.

◆ GNRC_NETIF_FLAGS_6LO_HC

#define GNRC_NETIF_FLAGS_6LO_HC   (0x00000100U)

This interface uses 6Lo header compression.

See also
RFC 6282

Definition at line 98 of file flags.h.

◆ GNRC_NETIF_FLAGS_HAS_L2ADDR

#define GNRC_NETIF_FLAGS_HAS_L2ADDR   (0x00000001U)

Network interface has link-layer address.

There are link-layers (e.g. SLIP) that do not have (nor require) link-layer addresses. This flag signifies this fact to upper layers by leaving it unset.

Definition at line 47 of file flags.h.

◆ GNRC_NETIF_FLAGS_IPV6_ADV_O_FLAG

#define GNRC_NETIF_FLAGS_IPV6_ADV_O_FLAG   (0x00000080U)

If gnrc_netif_t::ipv6::aac_mode == GNRC_NETIF_AAC_DHCP then this flag indicates that other configuration information is available via DHCPv6 (e.g.

DNS-related information)

See also
RFC 4861, section 4.2

Definition at line 91 of file flags.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Auto-address configuration modes.

Enumerator
GNRC_NETIF_AAC_NONE 

no configuration

GNRC_NETIF_AAC_AUTO 

Use some automatic bootstrapping (e.g.

SLAAC with IPv6)

GNRC_NETIF_AAC_DHCP 

Use DHCP(v6)

Definition at line 29 of file flags.h.