From 15e9b779385c71d366776b83540e19e0735c4e66 Mon Sep 17 00:00:00 2001 From: Sander Vrijders Date: Wed, 11 Jan 2017 18:59:11 +0100 Subject: ipcpd: normal: Create policies for GAM This allows the selection of a policy for the graph adjacency manager. Currently we only support constructing a complete graph. --- include/ouroboros/cacep.h | 6 +++--- include/ouroboros/irm.h | 4 ++-- include/ouroboros/irm_config.h | 32 ++++++++++++++++++-------------- 3 files changed, 23 insertions(+), 19 deletions(-) (limited to 'include') diff --git a/include/ouroboros/cacep.h b/include/ouroboros/cacep.h index 7b22b4a2..ae615e6e 100644 --- a/include/ouroboros/cacep.h +++ b/include/ouroboros/cacep.h @@ -34,9 +34,9 @@ struct cacep_info { uint64_t addr; }; -struct cacep * cacep_create(int fd, - char * name, - uint64_t address); +struct cacep * cacep_create(int fd, + const char * name, + uint64_t address); int cacep_destroy(struct cacep * instance); diff --git a/include/ouroboros/irm.h b/include/ouroboros/irm.h index b281d4c5..79e3e7c9 100644 --- a/include/ouroboros/irm.h +++ b/include/ouroboros/irm.h @@ -50,10 +50,10 @@ int irm_bind_ap(char * ap, int irm_unbind_ap(char * ap, char * name); -int irm_bind_api(pid_t api, +int irm_bind_api(pid_t api, char * name); -int irm_unbind_api(pid_t api, +int irm_unbind_api(pid_t api, char * name); int irm_reg(char * name, diff --git a/include/ouroboros/irm_config.h b/include/ouroboros/irm_config.h index ac94e9c8..c4a81c23 100644 --- a/include/ouroboros/irm_config.h +++ b/include/ouroboros/irm_config.h @@ -43,36 +43,40 @@ enum pol_addr_auth { FLAT_RANDOM = 0 }; +enum pol_gam { + COMPLETE = 0 +}; + struct dif_config { - char * dif_name; + char * dif_name; enum ipcp_type type; union { /* Normal DIF */ struct { - uint8_t addr_size; - uint8_t cep_id_size; - uint8_t pdu_length_size; - uint8_t qos_id_size; - uint8_t seqno_size; + uint8_t addr_size; + uint8_t cep_id_size; + uint8_t pdu_length_size; + uint8_t qos_id_size; + uint8_t seqno_size; - /* DUP constants */ - bool has_ttl; - bool has_chk; + bool has_ttl; + bool has_chk; - uint32_t min_pdu_size; - uint32_t max_pdu_size; + uint32_t min_pdu_size; + uint32_t max_pdu_size; enum pol_addr_auth addr_auth_type; + enum pol_gam dt_gam_type; }; /* Shim UDP */ struct { - uint32_t ip_addr; - uint32_t dns_addr; + uint32_t ip_addr; + uint32_t dns_addr; }; /* Shim Ethernet LLC */ struct { - char * if_name; + char * if_name; }; }; }; -- cgit v1.2.3