summaryrefslogtreecommitdiff
path: root/src/ipcpd/normal/frct.h
diff options
context:
space:
mode:
authorSander Vrijders <[email protected]>2016-08-22 11:13:31 +0200
committerSander Vrijders <[email protected]>2016-08-23 22:40:01 +0200
commitbb0a01dbb52cb0a02ce684b6fef3ec85e6c1918a (patch)
treee378c45c9f834ae8155096387c90b905714abc81 /src/ipcpd/normal/frct.h
parente2fd96f11b6a90d92f2d33627cb57ebf266e62ef (diff)
downloadouroboros-bb0a01dbb52cb0a02ce684b6fef3ec85e6c1918a.tar.gz
ouroboros-bb0a01dbb52cb0a02ce684b6fef3ec85e6c1918a.zip
ipcpd: normal: Add initial steps for N+1 flow allocation
This adds the initial framework for flow allocation between two N+1 endpoints. The FMGR will receive flow allocation requests and will create a connection as a result, addressed to the right address, it will also pass a flow allocation message to this address. Upon receipt on the other side, the FMGR will be receive a flow allocation message and a pointer to a new connection. The FMGR can then accept or destroy the connection. This commit also introduces the RMT function, which is needed by the FRCT to forward its SDUs on the right file descriptor.
Diffstat (limited to 'src/ipcpd/normal/frct.h')
-rw-r--r--src/ipcpd/normal/frct.h20
1 files changed, 17 insertions, 3 deletions
diff --git a/src/ipcpd/normal/frct.h b/src/ipcpd/normal/frct.h
index 2e965d38..91b2dfc7 100644
--- a/src/ipcpd/normal/frct.h
+++ b/src/ipcpd/normal/frct.h
@@ -24,6 +24,7 @@
#define OUROBOROS_IPCP_FRCT_H
#include <ouroboros/shared.h>
+#include <ouroboros/common.h>
#include "dt_const.h"
@@ -33,10 +34,23 @@ int frct_init(struct dt_const * dtc,
uint32_t address);
int frct_fini();
-struct frct_i * frct_i_create(int port_id,
+int frct_dt_flow(int fd,
+ enum qos_cube qos);
+/*
+ * FIXME: Will take the index in the DU map,
+ * possibly cep-ids and address
+ */
+int frct_rmt_post();
+
+struct frct_i * frct_i_create(uint32_t address,
+ buffer_t * buf,
enum qos_cube cube);
-int frct_i_destroy(struct frct_i * instance);
+/* FIXME: Hand QoS cube here too? We received it in the flow alloc message. */
+int frct_i_accept(struct frct_i * instance,
+ buffer_t * buf);
+int frct_i_destroy(struct frct_i * instance,
+ buffer_t * buf);
-int frct_dt_flow(int fd);
+/* FIXME: Add read/write ops for frct instances */
#endif