Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
Socket options for IPv6

Macros

#define ZSOCK_IPV6_UNICAST_HOPS   16
 Set the unicast hop limit for the socket.
#define ZSOCK_IPV6_MULTICAST_IF   17
 Set multicast output network interface index for the socket.
#define ZSOCK_IPV6_MULTICAST_HOPS   18
 Set the multicast hop limit for the socket.
#define ZSOCK_IPV6_MULTICAST_LOOP   19
 Set the multicast loop bit for the socket.
#define ZSOCK_IPV6_ADD_MEMBERSHIP   20
 Join IPv6 multicast group.
#define ZSOCK_IPV6_DROP_MEMBERSHIP   21
 Leave IPv6 multicast group.
#define ZSOCK_IPV6_JOIN_GROUP   ZSOCK_IPV6_ADD_MEMBERSHIP
 Join IPv6 multicast group.
#define ZSOCK_IPV6_LEAVE_GROUP   ZSOCK_IPV6_DROP_MEMBERSHIP
 Leave IPv6 multicast group.
#define ZSOCK_IPV6_MTU   24
 For getsockopt(), retrieve the current known IPv6 path MTU of the given socket.
#define ZSOCK_IPV6_DONTFRAG   62
 Disable local IPv6 fragmentation for packets sent on this socket.
#define ZSOCK_IPV6_V6ONLY   26
 Don't support IPv4 access.
#define ZSOCK_IPV6_RECVPKTINFO   49
 Pass an IPV6_RECVPKTINFO ancillary message that contains a in6_pktinfo structure that supplies some information about the incoming packet.
#define ZSOCK_IPV6_PKTINFO   50
 Option which returns an in6_pktinfo structure in ancillary data.
#define ZSOCK_IPV6_RECVHOPLIMIT   51
 Pass an IPV6_RECVHOPLIMIT ancillary message that contains information about the hop limit of the incoming packet.
#define ZSOCK_IPV6_HOPLIMIT   52
 Set or receive the hoplimit value for an outgoing packet.
#define ZSOCK_IPV6_ADDR_PREFERENCES   72
 RFC5014: Source address selection.
#define ZSOCK_IPV6_PREFER_SRC_TMP   0x0001
 Prefer temporary address as source.
#define ZSOCK_IPV6_PREFER_SRC_PUBLIC   0x0002
 Prefer public address as source.
#define ZSOCK_IPV6_PREFER_SRC_PUBTMP_DEFAULT   0x0100
 Either public or temporary address is selected as a default source depending on the output interface configuration (this is the default value).
#define ZSOCK_IPV6_PREFER_SRC_COA   0x0004
 Prefer Care-of address as source.
#define ZSOCK_IPV6_PREFER_SRC_HOME   0x0400
 Prefer Home address as source.
#define ZSOCK_IPV6_PREFER_SRC_CGA   0x0008
 Prefer CGA (Cryptographically Generated Address) address as source.
#define ZSOCK_IPV6_PREFER_SRC_NONCGA   0x0800
 Prefer non-CGA address as source.
#define ZSOCK_IPV6_TCLASS   67
 Set or receive the traffic class value for an outgoing packet.

Detailed Description

Macro Definition Documentation

◆ ZSOCK_IPV6_ADD_MEMBERSHIP

#define ZSOCK_IPV6_ADD_MEMBERSHIP   20

#include <zephyr/net/socket.h>

Join IPv6 multicast group.

◆ ZSOCK_IPV6_ADDR_PREFERENCES

#define ZSOCK_IPV6_ADDR_PREFERENCES   72

#include <zephyr/net/socket.h>

RFC5014: Source address selection.

◆ ZSOCK_IPV6_DONTFRAG

#define ZSOCK_IPV6_DONTFRAG   62

#include <zephyr/net/socket.h>

Disable local IPv6 fragmentation for packets sent on this socket.

Takes an integer boolean (0 = allow fragmentation, non-zero = disable). When enabled, datagrams larger than the interface MTU are rejected locally with errno set to EMSGSIZE instead of being fragmented by the stack.

Valid for setsockopt() and getsockopt() at the NET_IPPROTO_IPV6 level.

◆ ZSOCK_IPV6_DROP_MEMBERSHIP

#define ZSOCK_IPV6_DROP_MEMBERSHIP   21

#include <zephyr/net/socket.h>

Leave IPv6 multicast group.

◆ ZSOCK_IPV6_HOPLIMIT

#define ZSOCK_IPV6_HOPLIMIT   52

#include <zephyr/net/socket.h>

Set or receive the hoplimit value for an outgoing packet.

◆ ZSOCK_IPV6_JOIN_GROUP

#define ZSOCK_IPV6_JOIN_GROUP   ZSOCK_IPV6_ADD_MEMBERSHIP

#include <zephyr/net/socket.h>

Join IPv6 multicast group.

◆ ZSOCK_IPV6_LEAVE_GROUP

#define ZSOCK_IPV6_LEAVE_GROUP   ZSOCK_IPV6_DROP_MEMBERSHIP

#include <zephyr/net/socket.h>

Leave IPv6 multicast group.

◆ ZSOCK_IPV6_MTU

#define ZSOCK_IPV6_MTU   24

#include <zephyr/net/socket.h>

For getsockopt(), retrieve the current known IPv6 path MTU of the given socket.

Valid only when the socket has been connected. For setsockopt(), set the MTU to be used for the socket. The MTU is limited by the device MTU or the path MTU when path MTU discovery is enabled.

◆ ZSOCK_IPV6_MULTICAST_HOPS

#define ZSOCK_IPV6_MULTICAST_HOPS   18

#include <zephyr/net/socket.h>

Set the multicast hop limit for the socket.

◆ ZSOCK_IPV6_MULTICAST_IF

#define ZSOCK_IPV6_MULTICAST_IF   17

#include <zephyr/net/socket.h>

Set multicast output network interface index for the socket.

◆ ZSOCK_IPV6_MULTICAST_LOOP

#define ZSOCK_IPV6_MULTICAST_LOOP   19

#include <zephyr/net/socket.h>

Set the multicast loop bit for the socket.

◆ ZSOCK_IPV6_PKTINFO

#define ZSOCK_IPV6_PKTINFO   50

#include <zephyr/net/socket.h>

Option which returns an in6_pktinfo structure in ancillary data.

◆ ZSOCK_IPV6_PREFER_SRC_CGA

#define ZSOCK_IPV6_PREFER_SRC_CGA   0x0008

#include <zephyr/net/socket.h>

Prefer CGA (Cryptographically Generated Address) address as source.

Ignored in Zephyr.

◆ ZSOCK_IPV6_PREFER_SRC_COA

#define ZSOCK_IPV6_PREFER_SRC_COA   0x0004

#include <zephyr/net/socket.h>

Prefer Care-of address as source.

Ignored in Zephyr.

◆ ZSOCK_IPV6_PREFER_SRC_HOME

#define ZSOCK_IPV6_PREFER_SRC_HOME   0x0400

#include <zephyr/net/socket.h>

Prefer Home address as source.

Ignored in Zephyr.

◆ ZSOCK_IPV6_PREFER_SRC_NONCGA

#define ZSOCK_IPV6_PREFER_SRC_NONCGA   0x0800

#include <zephyr/net/socket.h>

Prefer non-CGA address as source.

Ignored in Zephyr.

◆ ZSOCK_IPV6_PREFER_SRC_PUBLIC

#define ZSOCK_IPV6_PREFER_SRC_PUBLIC   0x0002

#include <zephyr/net/socket.h>

Prefer public address as source.

◆ ZSOCK_IPV6_PREFER_SRC_PUBTMP_DEFAULT

#define ZSOCK_IPV6_PREFER_SRC_PUBTMP_DEFAULT   0x0100

#include <zephyr/net/socket.h>

Either public or temporary address is selected as a default source depending on the output interface configuration (this is the default value).

This is Linux specific option not found in the RFC.

◆ ZSOCK_IPV6_PREFER_SRC_TMP

#define ZSOCK_IPV6_PREFER_SRC_TMP   0x0001

#include <zephyr/net/socket.h>

Prefer temporary address as source.

◆ ZSOCK_IPV6_RECVHOPLIMIT

#define ZSOCK_IPV6_RECVHOPLIMIT   51

#include <zephyr/net/socket.h>

Pass an IPV6_RECVHOPLIMIT ancillary message that contains information about the hop limit of the incoming packet.

See RFC 3542.

◆ ZSOCK_IPV6_RECVPKTINFO

#define ZSOCK_IPV6_RECVPKTINFO   49

#include <zephyr/net/socket.h>

Pass an IPV6_RECVPKTINFO ancillary message that contains a in6_pktinfo structure that supplies some information about the incoming packet.

See RFC 3542.

◆ ZSOCK_IPV6_TCLASS

#define ZSOCK_IPV6_TCLASS   67

#include <zephyr/net/socket.h>

Set or receive the traffic class value for an outgoing packet.

◆ ZSOCK_IPV6_UNICAST_HOPS

#define ZSOCK_IPV6_UNICAST_HOPS   16

#include <zephyr/net/socket.h>

Set the unicast hop limit for the socket.

◆ ZSOCK_IPV6_V6ONLY

#define ZSOCK_IPV6_V6ONLY   26

#include <zephyr/net/socket.h>

Don't support IPv4 access.