summaryrefslogtreecommitdiff
path: root/include/ouroboros/sockets.h
diff options
context:
space:
mode:
authordimitri staessens <dimitri.staessens@intec.ugent.be>2016-03-30 11:23:52 +0200
committerdimitri staessens <dimitri.staessens@intec.ugent.be>2016-03-30 11:23:52 +0200
commitdd993fcf19f02dc1c694e16cd6fafadceb19dd4e (patch)
tree7231ffd5d341904ae75a6d141c6b36754d1ec4b6 /include/ouroboros/sockets.h
parent8cef483119da184d631634bc98b5236ac54c30ae (diff)
parent1d4442e472d20f261986089ea468daa93631d1f4 (diff)
downloadouroboros-dd993fcf19f02dc1c694e16cd6fafadceb19dd4e.tar.gz
ouroboros-dd993fcf19f02dc1c694e16cd6fafadceb19dd4e.zip
Merge branch 'be' of bitbucket.org:ouroboros-rina/ouroboros into HEAD
Diffstat (limited to 'include/ouroboros/sockets.h')
-rw-r--r--include/ouroboros/sockets.h80
1 files changed, 11 insertions, 69 deletions
diff --git a/include/ouroboros/sockets.h b/include/ouroboros/sockets.h
index 45d7a27d..bb8e6d84 100644
--- a/include/ouroboros/sockets.h
+++ b/include/ouroboros/sockets.h
@@ -28,83 +28,25 @@
#include <sys/types.h>
+#include "irmd_messages.pb-c.h"
+typedef IrmMsg irm_msg_t;
+
+#include "ipcpd_messages.pb-c.h"
+typedef IpcpMsg ipcp_msg_t;
+
#define IRM_SOCK_PATH "/tmp/irm_sock"
#define IRM_MSG_BUF_SIZE 256
#define IPCP_SOCK_PATH_PREFIX "/tmp/ipcp_sock"
#define IPCP_MSG_BUFS_SIZE IRM_MSG_BUF_SIZE
-enum irm_msg_code {
- IRM_CREATE_IPCP,
- IRM_DESTROY_IPCP,
- IRM_BOOTSTRAP_IPCP,
- IRM_ENROLL_IPCP,
- IRM_REG_IPCP,
- IRM_UNREG_IPCP,
- IRM_AP_REG,
- IRM_AP_REG_R,
- IRM_AP_UNREG,
- IRM_FLOW_ACCEPT,
- IRM_FLOW_ACCEPT_R,
- IRM_FLOW_ALLOC_RESP,
- IRM_FLOW_ALLOC,
- IRM_FLOW_ALLOC_R,
- IRM_FLOW_ALLOC_RES,
- IRM_FLOW_ALLOC_RES_R,
- IRM_FLOW_DEALLOC,
- IRM_FLOW_CONTROL,
- IRM_FLOW_WRITE,
- IRM_FLOW_READ
-};
-
-struct irm_msg {
- enum irm_msg_code code;
- rina_name_t * name;
- char * ipcp_type;
- struct dif_config * conf;
- char * dif_name;
- char ** difs;
- size_t difs_size;
- char * ap_name;
- char * ae_name;
- int fd;
- int result;
- struct qos_spec * qos;
- int oflags;
- char * dst_ap_name;
- ssize_t count;
-};
-
-enum ipcp_msg_code {
- IPCP_BOOTSTRAP,
- IPCP_ENROLL,
- IPCP_REG,
- IPCP_UNREG
-};
-
-struct ipcp_msg {
- enum ipcp_msg_code code;
- struct dif_config * conf;
- char * dif_name;
- char * ap_name;
- char ** difs;
- size_t difs_size;
-};
-
/* Returns the full socket path of an IPCP */
-char * ipcp_sock_path(pid_t pid);
-
-int server_socket_open(char * file_name);
-int client_socket_open(char * file_name);
+char * ipcp_sock_path(pid_t pid);
-int send_irmd_msg(struct irm_msg * msg);
-struct irm_msg * send_recv_irmd_msg(struct irm_msg * msg);
+int server_socket_open(char * file_name);
+int client_socket_open(char * file_name);
-/* Caller has to free the buffer */
-buffer_t * serialize_irm_msg(struct irm_msg * msg);
-buffer_t * serialize_ipcp_msg(struct ipcp_msg * msg);
-/* Caller has to free all the allocated fields in the message */
-struct irm_msg * deserialize_irm_msg(buffer_t * data);
-struct ipcp_msg * deserialize_ipcp_msg(buffer_t * data);
+int send_irm_msg(irm_msg_t * msg);
+irm_msg_t * send_recv_irm_msg(irm_msg_t * msg);
#endif