From 4402f3381b369ae47963ef8936c8f9672697d8db Mon Sep 17 00:00:00 2001 From: Dimitri Staessens Date: Sat, 2 Jan 2021 14:20:25 +0100 Subject: ipcpd: Single UDP port for the ipcpd-udp The UDP layer will now use a single (configurable) UDP port, default 3435. This makes it easer to allocate flows as a client from behind a NAT firewall without having to configure port forwarding rules. So basically, from now on Ouroboros traffic is transported over a bidirectional : UDP tunnel. The reason for not using/allowing different client/server ports is that it would require reading from different sockets using select() or something similar, but since we need the EID anyway (mgmt packets arrive on the same server UDP port), there's not a lot of benefit in doing it. Now the operation is similar to the ipcpd-eth, with the port somewhat functioning as a "layer name", where in UDP, the Ethertype functions as a "layer name". Signed-off-by: Dimitri Staessens Signed-off-by: Sander Vrijders --- src/lib/irm.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src/lib/irm.c') diff --git a/src/lib/irm.c b/src/lib/irm.c index 19bee4d2..b86b02c9 100644 --- a/src/lib/irm.c +++ b/src/lib/irm.c @@ -140,10 +140,8 @@ int irm_bootstrap_ipcp(pid_t pid, config.ip_addr = conf->ip_addr; config.has_dns_addr = true; config.dns_addr = conf->dns_addr; - config.has_srv_port = true; - config.srv_port = conf->srv_port; - config.has_clt_port = true; - config.clt_port = conf->clt_port; + config.has_port = true; + config.port = conf->port; break; case IPCP_LOCAL: case IPCP_BROADCAST: -- cgit v1.2.3