summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/ouroboros/cacep.h6
-rw-r--r--include/ouroboros/ipcp.h16
-rw-r--r--include/ouroboros/irm.h13
3 files changed, 21 insertions, 14 deletions
diff --git a/include/ouroboros/cacep.h b/include/ouroboros/cacep.h
index d2b0de9a..4b557b46 100644
--- a/include/ouroboros/cacep.h
+++ b/include/ouroboros/cacep.h
@@ -29,9 +29,11 @@
#include <stdint.h>
#include <sys/types.h>
+#define CACEP_BUF_STRLEN 64
+
struct conn_info {
- char ae_name[64];
- char protocol[64];
+ char ae_name[CACEP_BUF_STRLEN + 1];
+ char protocol[CACEP_BUF_STRLEN + 1];
uint32_t pref_version;
enum proto_concrete_syntax pref_syntax;
struct proto_field fixed_conc_syntax[PROTO_MAX_FIELDS];
diff --git a/include/ouroboros/ipcp.h b/include/ouroboros/ipcp.h
index 11095ba6..2d785fbb 100644
--- a/include/ouroboros/ipcp.h
+++ b/include/ouroboros/ipcp.h
@@ -27,15 +27,17 @@
#include <unistd.h>
#include <stdbool.h>
+#define DIF_NAME_SIZE 256
+
/*
* NOTE: the IRMd uses this order to select an IPCP
- * for flow allocation
+ * for flow allocation.
*/
enum ipcp_type {
IPCP_LOCAL = 0,
+ IPCP_NORMAL,
IPCP_SHIM_ETH_LLC,
- IPCP_SHIM_UDP,
- IPCP_NORMAL
+ IPCP_SHIM_UDP
};
/* Normal IPCP policies */
@@ -43,10 +45,6 @@ enum pol_addr_auth {
FLAT_RANDOM = 0
};
-enum pol_gam {
- COMPLETE = 0
-};
-
enum pol_routing {
LINK_STATE = 0
};
@@ -58,8 +56,6 @@ enum pol_dir_hash {
DIR_HASH_SHA3_512
};
-#define DIF_NAME_SIZE 256
-
/* Info reported back to the IRMd about the DIF on enrollment */
struct dif_info {
char dif_name[DIF_NAME_SIZE];
@@ -78,8 +74,6 @@ struct ipcp_config {
bool has_ttl;
enum pol_addr_auth addr_auth_type;
- enum pol_gam dt_gam_type;
- enum pol_gam rm_gam_type;
enum pol_routing routing_type;
/* Shim UDP */
diff --git a/include/ouroboros/irm.h b/include/ouroboros/irm.h
index 5ad8f754..dc723fc0 100644
--- a/include/ouroboros/irm.h
+++ b/include/ouroboros/irm.h
@@ -28,8 +28,11 @@
#include <sys/types.h>
-/* Name binding options */
+/* Normal IPCP components. */
+#define DT_AE "Data Transfer"
+#define MGMT_AE "Management"
+/* Name binding options. */
#define BIND_AP_AUTO 0x01
#define BIND_AP_UNIQUE 0x02
@@ -50,6 +53,14 @@ int irm_enroll_ipcp(pid_t api,
int irm_bootstrap_ipcp(pid_t api,
const struct ipcp_config * conf);
+int irm_connect_ipcp(pid_t api,
+ const char * component,
+ const char * dst);
+
+int irm_disconnect_ipcp(pid_t api,
+ const char * component,
+ const char * dst);
+
int irm_bind_ap(const char * ap,
const char * name,
uint16_t opts,