diff options
author | Donnie Savage <diivious@hotmail.com> | 2020-12-11 21:16:58 +0100 |
---|---|---|
committer | Donald Sharp <sharpd@nvidia.com> | 2021-01-12 13:43:32 +0100 |
commit | f9db3455cc179dfe1a69d522b4d7b6d655dd4014 (patch) | |
tree | 5aed0e46778c6554a55b1405d538039b292ee528 /eigrpd | |
parent | Merge pull request #7828 from mobash-rasool/pim-fixes-3 (diff) | |
download | frr-f9db3455cc179dfe1a69d522b4d7b6d655dd4014.tar.xz frr-f9db3455cc179dfe1a69d522b4d7b6d655dd4014.zip |
eigrpd: Move `struct eigrp_master` to eigrpd.h
The `struct eigrp_master` data structure belongs in the
eigrpd.h file. Move it over, in addition start forward
thinking about the different TLV versions so we can
track them better in the future.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Signed-off-by: Donnie Savage <diivious@hotmail.com>
Diffstat (limited to 'eigrpd')
-rw-r--r-- | eigrpd/eigrp_structs.h | 20 | ||||
-rw-r--r-- | eigrpd/eigrpd.h | 30 |
2 files changed, 27 insertions, 23 deletions
diff --git a/eigrpd/eigrp_structs.h b/eigrpd/eigrp_structs.h index 82bddaaae..3ac6d0261 100644 --- a/eigrpd/eigrp_structs.h +++ b/eigrpd/eigrp_structs.h @@ -37,26 +37,6 @@ #include "eigrpd/eigrp_const.h" #include "eigrpd/eigrp_macros.h" -/* EIGRP master for system wide configuration and variables. */ -struct eigrp_master { - /* EIGRP instance. */ - struct list *eigrp; - - /* EIGRP thread master. */ - struct thread_master *master; - - /* Zebra interface list. */ - struct list *iflist; - - /* EIGRP start time. */ - time_t start_time; - - /* Various EIGRP global configuration. */ - uint8_t options; - -#define EIGRP_MASTER_SHUTDOWN (1 << 0) /* deferred-shutdown */ -}; - struct eigrp_metrics { uint32_t delay; uint32_t bandwidth; diff --git a/eigrpd/eigrpd.h b/eigrpd/eigrpd.h index 6b4d45d1f..bcf7c4eb2 100644 --- a/eigrpd/eigrpd.h +++ b/eigrpd/eigrpd.h @@ -37,6 +37,30 @@ #define EIGRP_MAJOR_VERSION 1 #define EIGRP_MINOR_VERSION 2 +#define EIGRP_TLV_32B_VERSION 1 /* Original 32bit scaled metrics */ +#define EIGRP_TLV_64B_VERSION 2 /* Current 64bit 'wide' metrics */ +#define EIGRP_TLV_MTR_VERSION 3 /* MTR TLVs with 32bit metric *Not Supported */ +#define EIGRP_TLV_SAF_VERSION 4 /* SAF TLVs with 64bit metric *Not Supported */ + +struct eigrp_master { + /* EIGRP instance. */ + struct list *eigrp; + + /* EIGRP thread master. */ + struct thread_master *master; + + /* Zebra interface list. */ + struct list *iflist; + + /* EIGRP start time. */ + time_t start_time; + + /* Various EIGRP global configuration. */ + uint8_t options; + +#define EIGRP_MASTER_SHUTDOWN (1 << 0) /* deferred-shutdown */ +}; + /* Extern variables. */ extern struct zclient *zclient; extern struct thread_master *master; @@ -46,11 +70,11 @@ extern struct zebra_privs_t eigrpd_privs; /* Prototypes */ extern void eigrp_master_init(void); extern void eigrp_terminate(void); -extern void eigrp_finish_final(struct eigrp *); -extern void eigrp_finish(struct eigrp *); +extern void eigrp_finish_final(struct eigrp *eigrp); +extern void eigrp_finish(struct eigrp *eigrp); extern struct eigrp *eigrp_get(uint16_t as, vrf_id_t vrf_id); extern struct eigrp *eigrp_lookup(vrf_id_t vrf_id); -extern void eigrp_router_id_update(struct eigrp *); +extern void eigrp_router_id_update(struct eigrp *eigrp); /* eigrp_cli.c */ extern void eigrp_cli_show_header(struct vty *vty, struct lyd_node *dnode, |