From ffa9b6718983ee41ce1e2443f9d5f2fab073f0a0 Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Wed, 30 Jul 2014 09:48:08 +0200 Subject: [PATCH] dns-proxy: Don't use proxy socket if we fail to bypass it This will result in an infinite loop as packets sent over that socket will again pass through the TUN device and the DNS proxy. Apparently, bypassing fails when airplane mode is enabled. Fixes #662. --- .../android/jni/libandroidbridge/backend/android_dns_proxy.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.c b/src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.c index 045f2c1d1..908e37238 100644 --- a/src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.c +++ b/src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.c @@ -125,6 +125,8 @@ static int open_socket(int family) skt, family)) { DBG1(DBG_NET, "installing bypass policy for proxy socket failed"); + close(skt); + return -1; } return skt; }