summaryrefslogtreecommitdiff
path: root/include/ouroboros/ipcp.h
diff options
context:
space:
mode:
authorSander Vrijders <sander.vrijders@intec.ugent.be>2016-04-08 16:32:35 +0200
committerSander Vrijders <sander.vrijders@intec.ugent.be>2016-04-08 16:36:39 +0200
commit6ad0fcf2f32f412091d0dfd58da1d8f5dc474809 (patch)
treeeb10657a977c7c4c410ae15216d4068535a9f058 /include/ouroboros/ipcp.h
parentaffea724d1810410186b10c93c64b7a8ddbe7aca (diff)
downloadouroboros-6ad0fcf2f32f412091d0dfd58da1d8f5dc474809.tar.gz
ouroboros-6ad0fcf2f32f412091d0dfd58da1d8f5dc474809.zip
lib, irmd, irm: Add dif_config
This adds dif_config to the prototype, in which one is able to specify the parameters a DIF should have. The bootstrap operation of an IPCP takes this as parameter and is oblivious to whether it is a shim or a normal IPCP. The dif_config struct is also correctly serialized and deserialized and passed opaquely to the correct IPCP. This IPCP is in charge of deserializing it correctly.
Diffstat (limited to 'include/ouroboros/ipcp.h')
-rw-r--r--include/ouroboros/ipcp.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/include/ouroboros/ipcp.h b/include/ouroboros/ipcp.h
index fdaf5c4a..3198a882 100644
--- a/include/ouroboros/ipcp.h
+++ b/include/ouroboros/ipcp.h
@@ -24,7 +24,9 @@
#define OUROBOROS_IPCP_H
#include <ouroboros/common.h>
+#include <ouroboros/dif_config.h>
#include <ouroboros/instance_name.h>
+#include <ouroboros/sockets.h>
#include <sys/types.h>
@@ -32,7 +34,8 @@ struct ipcp;
/* Returns the process id */
pid_t ipcp_create(instance_name_t * api,
- char * ipcp_type);
+ enum ipcp_type ipcp_type);
+
int ipcp_destroy(pid_t pid);
int ipcp_reg(pid_t pid,
@@ -42,12 +45,13 @@ int ipcp_unreg(pid_t pid,
char ** difs,
size_t difs_size);
-int ipcp_bootstrap(pid_t pid,
- struct dif_config * conf);
int ipcp_enroll(pid_t pid,
char * member_name,
char * n_1_dif);
+int ipcp_bootstrap(pid_t pid,
+ dif_config_msg_t * conf);
+
/* Flow related ops, these go from IRMd to IPCP */
int ipcp_ap_reg(pid_t pid,