summaryrefslogtreecommitdiffstats
path: root/multi.c
diff options
context:
space:
mode:
authorJuanJo Ciarlante <jjo@google.com>2009-09-13 13:43:04 +0200
committerJuanJo Ciarlante <juanjosec@gmail.com>2011-03-25 13:30:28 +0100
commit8335caf929f21b317a0243a12285e1f04361db25 (patch)
treef5a13a5196bda5db8681614ad19f18f522e3dfaa /multi.c
parentbadba714db7dc62c7844069d86f615ad946b4a6e (diff)
downloadopenvpn-8335caf929f21b317a0243a12285e1f04361db25.tar.gz
openvpn-8335caf929f21b317a0243a12285e1f04361db25.tar.xz
openvpn-8335caf929f21b317a0243a12285e1f04361db25.zip
* rebased openvpn-2.1_rc1b.jjo.20061206.d.patch
* passes {udp,tcp}x{v4,v6} loopback tests * passes {udp,tcp}x{v6} remote tests
Diffstat (limited to 'multi.c')
-rw-r--r--multi.c17
1 files changed, 12 insertions, 5 deletions
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