dodag.h¶
DODAG-related functions for RPL.
Header file, which defines all public known DODAG-related functions for RPL.
-
GNRC_RPL_INSTANCES_NUMOF¶ Number of RPL instances.
1
(1)
-
GNRC_RPL_PARENTS_NUMOF¶ Number of RPL parents.
1
(3)
-
structs.h::gnrc_rpl_instance_tgnrc_rpl_instances()¶ RPL instance table.
-
structs.h::gnrc_rpl_parent_tgnrc_rpl_parents()¶ RPL parent table.
-
bool
gnrc_rpl_instance_add(uint8_t instance_id,structs.h::gnrc_rpl_instance_t** inst)¶ Add a new RPL instance with the id
instance_id.Parameters
instance_id: The instance id of the new RPL instance. inst: Pointer to an existing or new instance. Otherwise NULL. Return values
- true, if instance could be created.
- false, if instance could not be created or exists already.
-
bool
gnrc_rpl_instance_remove_by_id(uint8_t instance_id)¶ Remove a RPL instance with the id
instance_id.Parameters
instance_id: The instance id of the RPL instance to remove. Return values
- true, on success.
- false, otherwise.
-
bool
gnrc_rpl_instance_remove(structs.h::gnrc_rpl_instance_t* inst)¶ Remove a RPL instance with the pointer
inst.Parameters
inst: Pointer to the the RPL instance to remove. Return values
- true, on success.
- false, otherwise.
-
structs.h::gnrc_rpl_instance_t*gnrc_rpl_instance_get(uint8_t instance_id)¶ Get the RPL instance with the id
instance_id.Parameters
instance_id: The instance id of the RPL instance to get. Return values
- Pointer to the RPL instance, on success.
- NULL, otherwise.
-
bool
gnrc_rpl_dodag_init(structs.h::gnrc_rpl_instance_t* instance, ipv6_addr_t * dodag_id,kernel_types.h::kernel_pid_tiface)¶ Initialize a new RPL DODAG with the id
dodag_idfor the instanceinstance.Parameters
instance: Pointer to the instance to add the DODAG to dodag_id: The DODAG-ID of the new DODAG iface: Interface PID where the DODAG operates Return values
- true, if DODAG could be created.
- false, if DODAG could not be created or exists already.
-
void
gnrc_rpl_dodag_remove_all_parents(structs.h::gnrc_rpl_dodag_t* dodag)¶ Remove all parents from the
dodag.Parameters
dodag: Pointer to the dodag.
-
bool
gnrc_rpl_parent_add_by_addr(structs.h::gnrc_rpl_dodag_t* dodag, ipv6_addr_t * addr,structs.h::gnrc_rpl_parent_t** parent)¶ Add a new parent with the IPv6 address
addrto thedodag.Parameters
dodag: Pointer to the DODAG addr: IPV6 address of the parent parent: Pointer to an existing or new parent. Otherwise NULL. Return values
- true. if parent could be created.
- false, if parent could not be created or exists already.
-
bool
gnrc_rpl_parent_remove(structs.h::gnrc_rpl_parent_t* parent)¶ Remove the
parentfrom its DODAG.Parameters
parent: Pointer to the parent. Return values
- true, on success.
- false, otherwise.
-
void
gnrc_rpl_parent_update(structs.h::gnrc_rpl_dodag_t* dodag,structs.h::gnrc_rpl_parent_t* parent)¶ Update a
parentof thedodag.Parameters
dodag: Pointer to the DODAG parent: Pointer to the parent
-
void
gnrc_rpl_local_repair(structs.h::gnrc_rpl_dodag_t* dodag)¶ Start a local repair.
Parameters
dodag: Pointer to the DODAG
-
void
gnrc_rpl_leaf_operation(structs.h::gnrc_rpl_dodag_t* dodag)¶ Operate as leaf.
Parameters
dodag: Pointer to the DODAG
-
void
gnrc_rpl_router_operation(structs.h::gnrc_rpl_dodag_t* dodag)¶ Operate as router.
Parameters
dodag: Pointer to the DODAG