summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authordimitri staessens <dimitri.staessens@ugent.be>2017-02-20 14:42:43 +0100
committerdimitri staessens <dimitri.staessens@ugent.be>2017-02-20 15:23:30 +0100
commit86f4814245998f4b43e136101897557e4c2f5e54 (patch)
tree5a1f3d4aa8640d0e1e182d33923ec27b30cf7f3f /include
parentee47a0c6478ab4e6478ad3b7fe5a35eb5775decb (diff)
downloadouroboros-86f4814245998f4b43e136101897557e4c2f5e54.tar.gz
ouroboros-86f4814245998f4b43e136101897557e4c2f5e54.zip
lib: Revise CACEP
Revises CACEP policies to stateless library calls. It provides two policies: an anonymous authentication policy that will generate random credentials for the peer, and a simple authentication policy that will return a name for the peer and an address. Changes the normal IPCP to use the updates API calls.
Diffstat (limited to 'include')
-rw-r--r--include/ouroboros/cacep.h20
-rw-r--r--include/ouroboros/irm_config.h3
2 files changed, 10 insertions, 13 deletions
diff --git a/include/ouroboros/cacep.h b/include/ouroboros/cacep.h
index ae615e6e..63418bd3 100644
--- a/include/ouroboros/cacep.h
+++ b/include/ouroboros/cacep.h
@@ -24,24 +24,20 @@
#ifndef OUROBOROS_CACEP_H
#define OUROBOROS_CACEP_H
-#include <stdint.h>
-#include <unistd.h>
-
-struct cacep;
+#include <ouroboros/irm_config.h>
struct cacep_info {
char * name;
uint64_t addr;
+ void * data;
};
-struct cacep * cacep_create(int fd,
- const char * name,
- uint64_t address);
-
-int cacep_destroy(struct cacep * instance);
-
-struct cacep_info * cacep_auth(struct cacep * instance);
+struct cacep_info * cacep_auth(int fd,
+ enum pol_cacep pc,
+ const struct cacep_info * info);
-struct cacep_info * cacep_auth_wait(struct cacep * instance);
+struct cacep_info * cacep_auth_wait(int fd,
+ enum pol_cacep pc,
+ const struct cacep_info * info);
#endif /* OUROBOROS_CACEP_H */
diff --git a/include/ouroboros/irm_config.h b/include/ouroboros/irm_config.h
index 3cc59e20..9a05a434 100644
--- a/include/ouroboros/irm_config.h
+++ b/include/ouroboros/irm_config.h
@@ -48,7 +48,8 @@ enum pol_gam {
};
enum pol_cacep {
- NO_AUTH = 0
+ ANONYMOUS_AUTH = 0,
+ SIMPLE_AUTH
};
struct dif_config {