summaryrefslogtreecommitdiff
path: root/include/ouroboros/flow.h
diff options
context:
space:
mode:
authordimitri staessens <dimitri.staessens@intec.ugent.be>2016-04-17 12:08:49 +0200
committerdimitri staessens <dimitri.staessens@intec.ugent.be>2016-04-18 22:25:34 +0200
commit21b304b46a347772c1338b22fba6a15291bb2945 (patch)
treeeb8d0980ded5216b282a7932ecce38fd09473210 /include/ouroboros/flow.h
parentd8e9019fcb56a49c6730bbe7d47e5e1cec682a2d (diff)
downloadouroboros-21b304b46a347772c1338b22fba6a15291bb2945.tar.gz
ouroboros-21b304b46a347772c1338b22fba6a15291bb2945.zip
ipcpd: initial IPC processes
Basic functions for implementation of IPC processes, and implementation of core functions of the shim IPCP over UDP. Updates to the build system to compile these IPC processes, as well as some fixes in the irmd (rudimentary capturing exit signals) and some fixes in the library, mainly relating to the messaging. Basic implementation of creation / bootstrapping / deletion of the shim UDP. Placeholders for other functions.
Diffstat (limited to 'include/ouroboros/flow.h')
-rw-r--r--include/ouroboros/flow.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/include/ouroboros/flow.h b/include/ouroboros/flow.h
index 7d8c311e..000de5ad 100644
--- a/include/ouroboros/flow.h
+++ b/include/ouroboros/flow.h
@@ -24,7 +24,7 @@
#define OUROBOROS_FLOW_H
#include <ouroboros/common.h>
-
+#include <ouroboros/list.h>
#include <pthread.h>
/* same values as fcntl.h */
@@ -39,17 +39,19 @@
#define FLOW_O_INVALID (FLOW_O_WRONLY | FLOW_O_RDWR)
enum flow_state {
- FLOW_INIT = 0,
+ FLOW_NULL = 0,
FLOW_ALLOCATED,
FLOW_PENDING
};
typedef struct flow {
- int32_t port_id;
- uint16_t oflags;
- enum flow_state state;
+ struct list_head list;
+
+ int32_t port_id;
+ uint16_t oflags;
+ enum flow_state state;
- pthread_mutex_t lock;
+ pthread_mutex_t lock;
} flow_t;
flow_t * flow_create(int32_t port_id);