From 8335caf929f21b317a0243a12285e1f04361db25 Mon Sep 17 00:00:00 2001 From: JuanJo Ciarlante Date: Sun, 13 Sep 2009 13:43:04 +0200 Subject: * rebased openvpn-2.1_rc1b.jjo.20061206.d.patch * passes {udp,tcp}x{v4,v6} loopback tests * passes {udp,tcp}x{v6} remote tests --- multi.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'multi.c') diff --git a/multi.c b/multi.c index cc3c4cb..0196be9 100644 --- a/multi.c +++ b/multi.c @@ -1058,8 +1058,8 @@ multi_learn_in_addr_t (struct multi_context *m, struct mroute_addr addr; CLEAR (remote_si); - remote_si.sa.sin_family = AF_INET; - remote_si.sa.sin_addr.s_addr = htonl (a); + remote_si.addr.in4.sin_family = AF_INET; + remote_si.addr.in4.sin_addr.s_addr = htonl (a); ASSERT (mroute_extract_openvpn_sockaddr (&addr, &remote_si, false)); if (netbits >= 0) @@ -2496,9 +2496,9 @@ management_callback_kill_by_addr (void *arg, const in_addr_t addr, const int por int count = 0; CLEAR (saddr); - saddr.sa.sin_family = AF_INET; - saddr.sa.sin_addr.s_addr = htonl (addr); - saddr.sa.sin_port = htons (port); + saddr.addr.in4.sin_family = AF_INET; + saddr.addr.in4.sin_addr.s_addr = htonl (addr); + saddr.addr.in4.sin_port = htons (port); if (mroute_extract_openvpn_sockaddr (&maddr, &saddr, true)) { hash_iterator_init (m->iter, &hi); @@ -2675,6 +2675,12 @@ tunnel_server (struct context *top) { ASSERT (top->options.mode == MODE_SERVER); +#ifdef USE_PF_INET6 + if (proto_is_dgram(top->options.ce.proto)) + tunnel_server_udp(top); + else + tunnel_server_tcp(top); +#else switch (top->options.ce.proto) { case PROTO_UDPv4: tunnel_server_udp (top); @@ -2685,6 +2691,7 @@ tunnel_server (struct context *top) default: ASSERT (0); } +#endif } #else -- cgit