From 373efaf24d3600fe4dadf6bfaaee8d19e2ec32d7 Mon Sep 17 00:00:00 2001 From: dimitri staessens Date: Mon, 6 Feb 2017 16:05:44 +0100 Subject: ipcpd, lib: Revise normal IPCP This PR updates the normal IPCP to use the new RIB. The old ribmgr is removed and replaced by a stub that needs to be implemented. All components (dir, fmgr, frct) were adapted to the new RIB API. A lot of functionality was moved outside of the ribmgr, such as the addr_auth, which is now a component of the IPCP. The address is also stored to the ipcpi struct. The irm tool has an option to set the gam policy of the rib manager. --- src/ipcpd/normal/ribmgr.h | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) (limited to 'src/ipcpd/normal/ribmgr.h') diff --git a/src/ipcpd/normal/ribmgr.h b/src/ipcpd/normal/ribmgr.h index 22212de9..12f407ab 100644 --- a/src/ipcpd/normal/ribmgr.h +++ b/src/ipcpd/normal/ribmgr.h @@ -24,27 +24,29 @@ #include #include +#include -#include "dt_const.h" +enum diss_target { + NONE = 0, + NEIGHBORS, + ALL_MEMBERS +}; -int ribmgr_init(void); +enum diss_freq { + SINGLE = 0, + PERIODIC +}; -int ribmgr_fini(void); +int ribmgr_init(void); -int ribmgr_add_nm1_flow(int fd); +void ribmgr_fini(void); -int ribmgr_nm1_mgt_flow(char * dst_name); +int ribmgr_flow_arr(int fd, + qosspec_t qs); -int ribmgr_bootstrap(struct dif_config * conf); - -int ribmgr_enrol(void); - -int ribmgr_start_policies(void); - -struct dt_const * ribmgr_dt_const(void); - -uint64_t ribmgr_address(void); - -enum pol_gam ribmgr_dt_gam(void); +int ribmgr_disseminate(char * path, + enum diss_target target, + enum diss_freq freq, + size_t delay); #endif /* OUROBOROS_IPCPD_NORMAL_RIBMGR_H */ -- cgit v1.2.3