[tor-commits] [orbot/master] fixed relay resolv.conf DNS error #2069 in tor trac
n8fr8 at torproject.org
n8fr8 at torproject.org
Fri Jun 29 02:54:48 UTC 2012
commit c6b6cd3d66ddb88f676f22675ac36cbaba52532b
Author: n8fr8 <nathan at freitas.net>
Date: Thu Jun 28 22:50:18 2012 -0400
fixed relay resolv.conf DNS error #2069 in tor trac
---
res/raw/torrc | 3 ++
src/org/torproject/android/service/TorService.java | 37 +++++++++++++++----
2 files changed, 32 insertions(+), 8 deletions(-)
diff --git a/res/raw/torrc b/res/raw/torrc
index 5366ce8..c86ad2b 100644
--- a/res/raw/torrc
+++ b/res/raw/torrc
@@ -11,3 +11,6 @@ TransListenAddress 127.0.0.1
TransPort 9040
DNSListenAddress 127.0.0.1
DNSPort 5400
+HardwareAccel 1
+SafeLogging 1
+TestSocks 1
\ No newline at end of file
diff --git a/src/org/torproject/android/service/TorService.java b/src/org/torproject/android/service/TorService.java
index 74a91cf..1cbb93c 100644
--- a/src/org/torproject/android/service/TorService.java
+++ b/src/org/torproject/android/service/TorService.java
@@ -8,10 +8,13 @@
package org.torproject.android.service;
+import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
+import java.io.FileWriter;
import java.io.IOException;
+import java.io.PrintWriter;
import java.net.Socket;
import java.util.ArrayList;
import java.util.Arrays;
@@ -734,7 +737,7 @@ public class TorService extends Service implements TorServiceConstants, TorConst
int procId = -1;
int attempts = 0;
- int torRetryWaitTimeMS = 5000;
+ int torRetryWaitTimeMS = 2000;
while (procId == -1 && attempts < MAX_START_TRIES)
{
@@ -748,22 +751,25 @@ public class TorService extends Service implements TorServiceConstants, TorConst
procId = TorServiceUtils.findProcessId(fileTor.getAbsolutePath());
- logNotice("got tor proc id: " + procId);
-
if (procId == -1)
{
-
- sendCallbackStatusMessage(getString(R.string.couldn_t_start_tor_process_));
Thread.sleep(torRetryWaitTimeMS);
+ procId = TorServiceUtils.findProcessId(fileTor.getAbsolutePath());
attempts++;
}
-
- if (waitForProcess)
- logNotice(log.toString());
+ else
+ {
+ logNotice("got tor proc id: " + procId);
+
+ }
}
if (procId == -1)
{
+
+ logNotice(log.toString());
+ sendCallbackStatusMessage(getString(R.string.couldn_t_start_tor_process_));
+
throw new Exception ("Unable to start Tor");
}
else
@@ -1572,6 +1578,9 @@ public class TorService extends Service implements TorServiceConstants, TorConst
int ORPort = Integer.parseInt(prefs.getString(TorConstants.PREF_OR_PORT, "9001"));
String nickname = prefs.getString(TorConstants.PREF_OR_NICKNAME, "Orbot");
+ String dnsFile = writeDNSFile ();
+
+ mBinder.updateConfiguration("ServerDNSResolvConfFile", dnsFile, false);
mBinder.updateConfiguration("ORPort", ORPort + "", false);
mBinder.updateConfiguration("Nickname", nickname, false);
mBinder.updateConfiguration("ExitPolicy", "reject *:*", false);
@@ -1626,6 +1635,18 @@ public class TorService extends Service implements TorServiceConstants, TorConst
return true;
}
+ //using Google DNS for now as the public DNS server
+ private String writeDNSFile () throws IOException
+ {
+ File file = new File(appBinHome,"resolv.conf");
+
+ PrintWriter bw = new PrintWriter(new FileWriter(file));
+ bw.println("nameserver 8.8.8.8");
+ bw.println("nameserver 8.8.4.4");
+ bw.close();
+
+ return file.getAbsolutePath();
+ }
}
More information about the tor-commits
mailing list