Rtos API example
net_ipv6_api.h File Reference
IPv6 configuration API. More...
Go to the source code of this file.
Functions | |
int8_t | arm_nwk_ipv6_frag_mru (uint16_t frag_mru) |
Set maximum IPv6 fragmented datagram reception size. | |
void | arm_nwk_ipv6_auto_flow_label (bool auto_flow_label) |
Configure automatic flow label calculation. | |
int8_t | arm_nwk_ipv6_opaque_iid_key (const void *secret_key, uint8_t key_len) |
Set the key for opaque IPv6 interface identifiers. | |
int8_t | arm_nwk_ipv6_opaque_iid_enable (int8_t interface_id, bool enable) |
Enable/disable opaque IPv6 interface identifiers by interface. |
Detailed Description
IPv6 configuration API.
Definition in file net_ipv6_api.h.
Function Documentation
void arm_nwk_ipv6_auto_flow_label | ( | bool | auto_flow_label ) |
Configure automatic flow label calculation.
Enable or disable automatic generation of IPv6 flow labels for outgoing packets.
- Parameters:
-
auto_flow_label True to enable auto-generation.
int8_t arm_nwk_ipv6_frag_mru | ( | uint16_t | frag_mru ) |
Set maximum IPv6 fragmented datagram reception size.
Set the maximum size limit for fragmented datagram reception.
RFC 2460 requires this to be at least 1500. It should also be at least as large as the MTU of each attached link.
- Parameters:
-
frag_mru The fragmented Maximum Receive Unit in octets.
- Returns:
- 0 Change OK - actual MRU is at least the requested value.
- <0 Change invalid - unable to set the specified MRU.
int8_t arm_nwk_ipv6_opaque_iid_enable | ( | int8_t | interface_id, |
bool | enable | ||
) |
Enable/disable opaque IPv6 interface identifiers by interface.
Enable or disable RFC 7217 opaque IIDs generated by SLAAC, per interface. By default opaque IIDs are enabled if the opaque key is set. If disabled, SLAAC IIDs will be EUI-64-based as per RFC 4291.
- Parameters:
-
interface_id Interface ID. enable True to enable.
- Returns:
- 0 enabled/disabled OK.
- <0 failed (for example invalid interface ID).
int8_t arm_nwk_ipv6_opaque_iid_key | ( | const void * | secret_key, |
uint8_t | key_len | ||
) |
Set the key for opaque IPv6 interface identifiers.
This call sets the secret key used to generate opaque interface identifiers, as per RFC 7217. Once this has been set, all interfaces will use opaque interface identifiers by default. If secret_key is NULL, opaque interface identifiers will be disabled.
Correct implementation of RFC 7217 would require that this key be randomly generated at first bootstrap, and thereafter remain constant, which would require non-volatile storage. The next closest alternative would be to base this on a MAC address.
- Parameters:
-
secret_key A pointer to secret key (will be copied by call). key_len The length of the key.
- Returns:
- 0 key set okay.
- <0 key set failed (for example due to memory allocation).
Generated on Sun Jul 17 2022 08:25:35 by 1.7.2