From fe6b60909d455abdac7885ceaba1097749e7aeb1 Mon Sep 17 00:00:00 2001 From: Dimitri Staessens Date: Mon, 24 Feb 2020 22:30:22 +0100 Subject: lib, ipcpd: piggyback ECDHE on flow allocation The initial implementation for the ECDHE key exchange was doing the key exchange after a flow was established. The public keys are now sent allowg on the flow allocation messages, so that an encrypted tunnel can be created within 1 RTT. The flow allocation steps had to be extended to pass the opaque data ('piggybacking'). Signed-off-by: Dimitri Staessens Signed-off-by: Sander Vrijders --- include/ouroboros/ipcp-dev.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/ouroboros/ipcp-dev.h b/include/ouroboros/ipcp-dev.h index 59e594fe..d60e0b45 100644 --- a/include/ouroboros/ipcp-dev.h +++ b/include/ouroboros/ipcp-dev.h @@ -30,10 +30,14 @@ int ipcp_create_r(int result); int ipcp_flow_req_arr(const uint8_t * dst, size_t len, - qosspec_t qs); - -int ipcp_flow_alloc_reply(int fd, - int response); + qosspec_t qs, + const void * data, + size_t dlen); + +int ipcp_flow_alloc_reply(int fd, + int response, + const void * data, + size_t len); int ipcp_flow_read(int fd, struct shm_du_buff ** sdb); -- cgit v1.2.3