diff options
Diffstat (limited to 'ecp/src/ecp/vconn/vconn.h')
-rw-r--r-- | ecp/src/ecp/vconn/vconn.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/ecp/src/ecp/vconn/vconn.h b/ecp/src/ecp/vconn/vconn.h new file mode 100644 index 0000000..73d9fd6 --- /dev/null +++ b/ecp/src/ecp/vconn/vconn.h @@ -0,0 +1,22 @@ +#define ECP_CTYPE_VCONN 1 +#define ECP_CTYPE_VLINK 2 + +#define ECP_MTYPE_RELAY 0x08 +#define ECP_MTYPE_EXEC 0x09 + +typedef struct ECPVConnOut { + ECPConnection b; + ECPConnection *next; +} ECPVConnOut; + +typedef struct ECPVConnIn { + ECPConnection b; + unsigned char key_next[ECP_MAX_NODE_KEY][ECP_ECDH_SIZE_KEY]; + unsigned char key_next_curr; + unsigned char key_out[ECP_ECDH_SIZE_KEY]; +} ECPVConnIn; + +ssize_t ecp_vconn_handle_exec(ECPConnection *conn, ecp_seq_t seq, unsigned char mtype, unsigned char *msg, ssize_t size, ECP2Buffer *b); +int ecp_vconn_ctx_init(ECPContext *ctx); +int ecp_vconn_create_parent(ECPConnection *conn, ECPNode *conn_node, ECPVConnOut vconn[], ECPNode vconn_node[], int size); +int ecp_vconn_open(ECPConnection *conn, ECPNode *conn_node, ECPVConnOut vconn[], ECPNode vconn_node[], int size); |