Cleaned up code style, comments, and print outs. Set default DAG parameters when the DIO configuration option is missing.
This commit is contained in:
parent
6e41f6fbe9
commit
d0e2d9b47e
7 changed files with 102 additions and 107 deletions
|
@ -97,24 +97,24 @@
|
|||
/*
|
||||
* Maximum of concurent dodag inside an instance
|
||||
*/
|
||||
#ifndef RPL_CONF_MAX_DODAG_PER_INSTANCE
|
||||
#define RPL_MAX_DODAG_PER_INSTANCE 2
|
||||
#ifndef RPL_CONF_MAX_DAG_PER_INSTANCE
|
||||
#define RPL_MAX_DAG_PER_INSTANCE 2
|
||||
#else
|
||||
#define RPL_MAX_DODAG_PER_INSTANCE RPL_CONF_MAX_DODAG_PER_INSTANCE
|
||||
#endif /* !RPL_CONF_MAX_DODAG_PER_INSTANCE */
|
||||
#define RPL_MAX_DAG_PER_INSTANCE RPL_CONF_MAX_DAG_PER_INSTANCE
|
||||
#endif /* !RPL_CONF_MAX_DAG_PER_INSTANCE */
|
||||
|
||||
/*
|
||||
*
|
||||
*/
|
||||
#ifndef RPL_CONF_DAO_SPECIFY_DODAG
|
||||
#if RPL_MAX_DODAG_PER_INSTANCE > 1
|
||||
#define RPL_DAO_SPECIFY_DODAG 1
|
||||
#else /* RPL_MAX_DODAG_PER_INSTANCE > 1*/
|
||||
#define RPL_DAO_SPECIFY_DODAG 0
|
||||
#endif /* RPL_MAX_DODAG_PER_INSTANCE > 1 */
|
||||
#else /* RPL_CONF_DAO_SPECIFY_DODAG */
|
||||
#define RPL_DAO_SPECIFY_DODAG RPL_CONF_DAO_SPECIFY_DODAG
|
||||
#endif /* RPL_CONF_DAO_SPECIFY_DODAG */
|
||||
#ifndef RPL_CONF_DAO_SPECIFY_DAG
|
||||
#if RPL_MAX_DAG_PER_INSTANCE > 1
|
||||
#define RPL_DAO_SPECIFY_DAG 1
|
||||
#else /* RPL_MAX_DAG_PER_INSTANCE > 1*/
|
||||
#define RPL_DAO_SPECIFY_DAG 0
|
||||
#endif /* RPL_MAX_DAG_PER_INSTANCE > 1 */
|
||||
#else /* RPL_CONF_DAO_SPECIFY_DAG */
|
||||
#define RPL_DAO_SPECIFY_DAG RPL_CONF_DAO_SPECIFY_DAG
|
||||
#endif /* RPL_CONF_DAO_SPECIFY_DAG */
|
||||
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
|
@ -123,20 +123,6 @@
|
|||
/*---------------------------------------------------------------------------*/
|
||||
typedef uint16_t rpl_rank_t;
|
||||
typedef uint16_t rpl_ocp_t;
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/* Lollipop counters */
|
||||
|
||||
#define RPL_LOLLIPOP_MAX_VALUE 255
|
||||
#define RPL_LOLLIPOP_CIRCULAR_REGION 127
|
||||
#define RPL_LOLLIPOP_SEQUENCE_WINDOWS 16
|
||||
#define RPL_LOLLIPOP_INIT RPL_LOLLIPOP_MAX_VALUE - RPL_LOLLIPOP_SEQUENCE_WINDOWS + 1
|
||||
#define RPL_LOLLIPOP_INCREMENT(ctr) (ctr > RPL_LOLLIPOP_CIRCULAR_REGION ? \
|
||||
++ctr & RPL_LOLLIPOP_MAX_VALUE : \
|
||||
++ctr & RPL_LOLLIPOP_CIRCULAR_REGION)
|
||||
|
||||
#define RPL_LOLLIPOP_IS_INIT(counter) (counter > RPL_LOLLIPOP_CIRCULAR_REGION)
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/* DAG Metric Container Object Types, to be confirmed by IANA. */
|
||||
#define RPL_DAG_MC_NONE 0 /* Local identifier for empty MC */
|
||||
|
@ -217,7 +203,7 @@ typedef struct rpl_prefix rpl_prefix_t;
|
|||
/* Directed Acyclic Graph */
|
||||
struct rpl_dag {
|
||||
uip_ipaddr_t dag_id;
|
||||
rpl_rank_t min_rank; /* should be reset per DODAG iteration! */
|
||||
rpl_rank_t min_rank; /* should be reset per DAG iteration! */
|
||||
uint8_t version;
|
||||
uint8_t grounded;
|
||||
uint8_t preference;
|
||||
|
@ -286,7 +272,7 @@ struct rpl_instance {
|
|||
rpl_metric_container_t mc;
|
||||
rpl_of_t *of;
|
||||
rpl_dag_t *current_dag;
|
||||
rpl_dag_t dag_table[RPL_MAX_DODAG_PER_INSTANCE];
|
||||
rpl_dag_t dag_table[RPL_MAX_DAG_PER_INSTANCE];
|
||||
/* The current default router - used for routing "upwards" */
|
||||
uip_ds6_defrt_t *def_route;
|
||||
uint8_t instance_id;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue