Giter VIP home page Giter VIP logo

orbot's Introduction

Orbot

Orbot

Android Onion Routing Robot

Weblate Status Play Downloads Bitrise Status (CI docs)

Orbot is a freely licensed open-source application developed for the Android platform. It acts as a front-end for the Tor binary application, while also providing a secure HTTP Proxy for connecting web browsers and other HTTP client applications into the Tor SOCKS interface.



Orbot is a crucial component of the Guardian Project, an initiative that leads an effort to develop a secure and anonymous smartphone. This platform is designed for use by human rights activists, journalists and others around the world. Learn more: https://guardianproject.info/


Tor protects your privacy on the internet by hiding the connection between your Internet address and the services you use. We believe that Tor is reasonably secure, but please ensure you read the usage instructions and learn to configure it properly. Learn more: https://torproject.org/



Copyright © 2009-2023, Nathan Freitas, The Guardian Project

orbot's People

Contributors

amoghbl1 avatar ao-loclab avatar arrase avatar bitmold avatar comradekingu avatar danialbehzadi avatar eighthave avatar eliasquispe avatar franconian avatar gsathya avatar ihorhordiichuk avatar ioerror avatar licaon-kter avatar meenbeese avatar n8fr8 avatar oersen avatar postessive avatar runasand avatar santossi avatar sisbell avatar skewedzeppelin avatar solokot avatar sr093906 avatar stoyandimitrov avatar sveinki avatar syphyr avatar tladesignz avatar ujdhesa avatar wtuemura avatar yarons avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

orbot's Issues

A lot of apps leak traffic to clearnet in VPN mode

Most, if not all, apps I enable in VPN mode leak traffic (e.g. Firefox, Forcastie and Good Weather), as this screenshot of Net Monitor shows. Apps configured to use Tor without VPN mode (Orfox, Syncthing, ...) do not leak (traffic only to localhost/0.0.0.0).

net-monitor

Could this be prevented with a VPN mode for all traffic? (Why doesn't Orfox offer one?)

In any case, I think Orbox should warn users about just how leaky the VPN mode is, not just label it as experimental.

"CANCEL/OK" appear in a language different than the rest of the app

After a fresh install the language of Orbot was set to the device language (which is absolutely fine).
In the settings menu, clicking "entrance nodes" or "exit nodes" showed CANCEL and OK in another, to me unknown, language.

I fixed this problem by setting the language to a language other than the device language and then set it back to the original language again.

After deleting and installing Orbot again, I could not replicate this problem. Possibly because the step above caused the creation of a config file with a language setting.

there are many mistaks in source code, will my effort be merged?

my first time to participate to open source.
I don't know if changes could easily get merged to main project (after reviewing)

reading through the source many bad practises, bad styling, unused code(many), and nonsense code like defining public final static in interface.

should I change any mistake will my changes be reviewed and merged to main project?

4.4.4 linking error on 15.1 beta2

01-14 03:57:21.802 ? I/dalvikvm: Could not find method android.net.VpnService$Builder.addAllowedApplication, referenced from method org.torproject.android.vpn.OrbotVpnService.doLollipopAppRouting
01-14 03:57:21.802 ? I/dalvikvm: Could not find method android.net.VpnService$Builder.addDisallowedApplication, referenced from method org.torproject.android.vpn.OrbotVpnService.doLollipopAppRouting
01-14 03:57:21.802 ? W/dalvikvm: Exception Ljava/lang/UnsatisfiedLinkError; thrown while initializing Lorg/torproject/android/vpn/OrbotVpnService;
01-14 03:57:21.812 ? E/AndroidRuntime: FATAL EXCEPTION: main
Process: org.torproject.android, PID: 9964
java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "sigemptyset" referenced by "libtun2socks.so"...
at java.lang.Runtime.loadLibrary(Runtime.java:364)
at java.lang.System.loadLibrary(System.java:526)
at org.torproject.android.vpn.OrbotVpnService.(OrbotVpnService.java:81)
at org.torproject.android.service.TorService.onCreate(TorService.java:573)
at android.app.ActivityThread.handleCreateService(ActivityThread.java:2620)
at android.app.ActivityThread.access$1800(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1328)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:212)
at android.app.ActivityThread.main(ActivityThread.java:5135)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:877)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:693)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
at dalvik.system.NativeStart.main(Native Method)

Orbot is not up to date in Guardian Project or F-Droid Repositories in F-Droid App

I thought that F-Droid was the main way to get Orbot, but now that I'm looking at https://gitweb.torproject.org/n8fr8/orbot.git it seems like there are newer versions that have been coming out that aren't on F-Droid. Can you either fix the README to explain how to get Orbot outside of F-Droid or push the newest updates of this software to the F-Droid / Guardian Project Repositories? I'm curious to know why updates stopped getting pushed to F-Droid.

request to add API feature

this is short flow diagram on app ORBOT start (what i see from logs)

  1. start Orbot
  2. orbot checking existence of prev TOR instance (by connecting to tor control)
  • if no prev instance:
    a) TOR is starting
    b) POLIPO is starting
    c) handshake connection etc
  • if instance exist
    a) getNetworkState - state disconnected / disabled - closing connections (as obsolete)
    b) check TOR / POLIPO authenticity
    c) make connection

does Orbot or TOR has API to

  • check TOR state on local machine (running / stopped)
  • check if valid VPN / SOCKET connection is established (route to exit node established )
  • get names of apps from orbot which are allowed by tor thru vpn/socket connection
  • data of VPN / SOCKET - port, host, protocol

if not i wish to request to add such a possibility

i have also second proposal

  • allow orbot to act as downloader(mostly to allow download apk /zip files) via tor (as replacement for default download manager in android) - this can help to obtain some files on higher level of security (to avoid: spoofing, hijacking, exploit, SRA, Pharming, Trojans, Spyware, Rootkits etc)

Hidden_service orbot

Help to config hidden_service on orbot Whit proxy and everything to get it to work and. Ned help whit gnu privat key to please.

Thx ImS2014

F-Droid

Hi! Is possible load the new version of Orbot on the official F-Droid repo??

Currently (in the repo) there is v15.0.1-RC-3-PIE (2015)

exception net.freehaven.tor.control.TorControlConnection.setConf() 15.1rc1

01-20 07:00:57.578 2985-3862/? E/AndroidRuntime: FATAL EXCEPTION: Thread-254
Process: org.torproject.android, PID: 2985
java.lang.NullPointerException: Attempt to invoke virtual method 'void net.freehaven.tor.control.TorControlConnection.setConf(java.lang.String, java.lang.String)' on a null object reference
at org.torproject.android.service.TorService.setExitNode(TorService.java:2355)
at org.torproject.android.service.TorService.access$400(TorService.java:85)
at org.torproject.android.service.TorService$IncomingIntentRouter.run(TorService.java:344)
at java.lang.Thread.run(Thread.java:818)

TextSecure/SMSSecure MMS messages can't be sent &/or received while Orbot is on, even with them unchecked.

I use SMSSecure along with Orbot. I use the most recent version of Orbot from F-Droid, which is dated December 20th, 2014.

When I receive and/or try to send MMS messages on SMSSecure while Orbot is running, I get a connection error. I have Orbot set to Torify most all of my apps, but I leave SMSSecure unchecked. Even with SMSSecure uncheck, MMS messages still don't work, so I have to turn Orbot completely off in order to send or receive MMS messages.

I didn't want to file a bug with SMSSecure just to have them say that it needs to be fixed upstream, so I checked out TextSecure's closed issues and found that @Diapolo had the same problem with TextSecure + Orbot that I am having with SMSSecure + Orbot so I posted in the closed Issue asking for them to reopen it, but @moxie0 said that it is Orbot's problem, not TextSecure's problem. signalapp/Signal-Android#1950 (comment)

Anyways, I'm CCing @BastienLQ & @pR0Ps from SMSSecure on this too just in case they have some ideas on how to fix this.

Hopefully someone can help me figure out how to fix this bug and who's software is causing the problem.

I am gonna make a build external but failed

I have updated all submodules, when i try to make -C external i got exception

Configured for android.
making depend in crypto...
clang: error: unknown argument: '-mandroid'
make[2]: *** [local_depend] Error 1
make[1]: *** [depend] Error 1
make: *** [lib/libcrypto.a] Error 2

All todos are done as BUILD file written

[Question] Use orbot as a library

Hi,

Is there any way to tor-ify an Android app by using orbot as a library?
My goal is to be able to access Tor from my app, but at the same time make it completely transparent for the user.
For example I don't want to force him install orbot in order to be able to run my app.

Thanks!
:panos

error problem

Waiting for control port...
Unable to start Tor: java.lang.Exception: Cannot kill: /data/data/org.torproject.android/app_bin/tor
Set background service to FOREGROUND
TorService is shutting down
An error occurred stopping Tor: Cannot kill: /data/data/org.torproject.android/app_bin/tor
Something bad happened. Check the log

DNS leakage in VPN mode

#19

Seems to be still broken.
DNS traf goes to 8.8.8.8 via wlan0 iface

Orbot 15.1.2
Cyanogenmod 12.1 MotoG 1st gen

Same issue on
Nexus 5X stock Marshmallow 6.0.1

Stream isolation of different apps in Orbot VPN mode

It appears that Orbot (at least when running in Apps VPN mode) does not isolate the traffic of apps, i.e. relaying it to different exit nodes; multiple (even all?) have the same public IP address . At the same time Orbot obviously can do stream isolation when an app is properly configured (like Orfox) and the traffic of each app can be handled separately by the VPN.

Am I correct? What needs to be done to implement per-app stream isolation in Orbot?

Can't build Orbot on AndroidStudio

I am tryting to build latest dev_gradle branch on android studio. Importing gradle project into AS works as expected without any problems. But after I press Make in AS I get an error saying that config.h is missing. I am using latest NDK and latest Android Studio with Gradle plugin 2.2. Am I supposed to build orbot using different NDK version or what is the problem? Also doest the old instructions about building still aply? Because if I do make -C external I get an error saying that recipe for local_depend on openssl failed even that I have makedepend installed.

Maybe BUILD file should really be updated to gradle/android studio version so we can test new comits and try them on newest Android 7.0.

Thanks in forward for reply

How to address OpenSSL vulnerabilities in your apps

This information is intended for developers of apps statically linking against a version of OpenSSL that precedes 1.02f/1.01r. These versions contain security vulnerabilities.

Please migrate your app(s) to OpenSSL 1.02f/1.01r or higher as soon as possible and increment the version number of the upgraded APK. Beginning July 11, 2016, Google Play will block publishing of any new apps or updates that use older versions of OpenSSL.

The vulnerabilities were addressed in OpenSSL 1.02f/1.01r. The latest versions OpenSSL can be downloaded here. To confirm your OpenSSL version, you can do a grep search for ($ unzip -p YourApp.apk | strings | grep "OpenSSL").

If you’re using a 3rd party library that bundles OpenSSL, you’ll need to upgrade it to a version that bundles OpenSSL 1.02f/1.01r or higher.

To confirm you’ve upgraded correctly, submit the updated version to the Developer Console and check back after five hours. If the app hasn’t been correctly upgraded, we will display a warning.

The vulnerabilities include "logjam" and CVE-2015-3194. The Logjam attack allows a man-in-the-middle attacker to downgrade vulnerable TLS connections to 512-bit export-grade cryptography. This allows the attacker to read and modify any data passed over the connection. Details about other vulnerabilities are available here. For other technical questions, you can post to Stack Overflow and use the tags “android-security” and “OpenSSL.”

While these issues may not affect every app that uses OpenSSL versions prior to 1.02f/1.01r, it's best to stay up to date on all security patches. Apps with vulnerabilities that expose users to risk of compromise may be considered in violation of our Malicious Behavior policy and section 4.4 of the Developer Distribution Agreement.

Before publishing apps, please ensure they are compliant with the Developer Distribution Agreement and Content Policy. If you feel we have sent you an OpenSSL warning in error, contact our support team through the Google Play Developer Help Center.

Update OpenSSL

According To Google Play, There Is A Vulnerability In Older Versions of OpenSSL.
So, Orbot Needs An Update.

Thanks

Orbot can't auto start on system boot

  1. Everything is allowed for this app in system settings including autostart. But autostart NEVER WORK on android 6.0. On android 5.1 autostart worked in normal mode. This is URGENT for me. HELP HELP!

  2. "tor auto sleep" feature often cause routing errors and internet hangs (only restart of orbot can fix it) and I always turn it OFF.

My device is "Highscreen boost 3 pro". I have latest stable OFFICIAL firmware on android 6.0 and root (from twrp).

often see Polipo process id=-1 (15.1 RC-2 on M) or cant connect via Socket connection

01-19 00:24:00.811 31994-31994 D/Orbot: checking binary version: 0.2.7.5-020120160125
01-19 00:24:00.812 31994-31994 D/Orbot: updating settings in Tor service
01-19 00:24:00.813 31994-31994 D/Orbot: updating torrc custom configuration...
01-19 00:24:00.813 31994-31994 D/Orbot: torrc.custom=ControlPortWriteToFile /data/data/org.torproject.android/app_bin/control.txt
SOCKSPort 9050
SafeSocks 0
TestSocks 0
WarnUnsafeSocks 1
DisableNetwork 0
Log debug syslog
Log info syslog
SafeLogging 0
UseBridges 0
GeoIPFile /data/data/org.torproject.android/app_bin/geoip
GeoIPv6File /data/data/org.torproject.android/app_bin/geoip6
EntryNodes {UK}
ExitNodes {ES}
StrictNodes 1

....

01-19 00:24:07.341 31994-1123 D/Orbot: SUCCESS - authenticated to control port.
01-19 00:24:07.341 31994-1123 D/Orbot: adding control port event handler
01-19 00:24:07.343 31994-1123 D/Orbot: SUCCESS added control port event handler
01-19 00:24:07.345 31994-1123 D/Orbot: Tor started; process id=1177
01-19 00:24:07.345 31994-1123 D/Orbot: Starting polipo process
01-19 00:24:08.428 31994-1178 D/Orbot: Set background service to FOREGROUND
01-19 00:24:08.537 31994-1123 D/Orbot: Couldn't find Polipo process... retrying...
01-19 00:24:11.640 31994-1123 D/Orbot: Couldn't find Polipo process... retrying...
01-19 00:24:14.748 31994-1123 D/Orbot: Couldn't find Polipo process... retrying...
01-19 00:24:17.862 31994-1123 D/Orbot: Polipo process id=-1
01-19 00:24:34.549 31994-1178 D/Orbot: NOTICE: Application request when we haven't used client functionality lately. Optimistically trying directory fetches again.
01-19 00:24:45.368 31994-1178 D/Orbot: NOTICE: Application request when we haven't used client functionality lately. Optimistically trying directory fetches again.
01-19 00:25:27.126 31994-1178 D/Orbot: NOTICE: Application request when we haven't used client functionality lately. Optimistically trying directory fetches again.
01-19 00:25:27.276 31994-1178 D/Orbot: NOTICE: Application request when we haven't used client functionality lately. Optimistically trying directory fetches again.
01-19 00:25:34.655 31994-1178 D/Orbot: NOTICE: Application request when we haven't used client functionality lately. Optimistically trying directory fetches again.
01-19 00:26:34.349 31994-1178 D/Orbot: NOTICE: Tried for 120 seconds to get a connection to 64.233.164.188:5228. Giving up. (waiting for circuit)

ok i use orbot with afwall+ as vpn

  1. first thing when i made any changes to orbot config i need to restart device to gain internet access (see above log)
  2. second matter i cant read resource via socket
  • i can connect / send data (as bellow probably to orbot only)

              socketInetAddress = new InetSocketAddress(_url.getHost(), _url.getPort());
              _socket = new Socket(Proxy.NO_PROXY);
              _socket.connect(socketInetAddress);  // OK 
              .. write  flush to socket // OK 
              while ((red =_socket.getInputStream().read(buffer)) > -1) {   // EXCEPTION THROWN
                       ...//
              } 
    

    java.net.SocketException: recvfrom failed: ECONNRESET (Connection reset by peer)
    when i try read from connection or set no socket proxy

soc1

01-19 00:57:41.042 7921-7993/? D/Orbot: NOTICE: We tried for 15 seconds to connect to ' dest ip xxxxx ' using exit $CEA791C0D90387F77B3068B899A39580FAFAB695~TheBlueCat at 62.57.160.237. Retrying on a new circuit.
... NOTICE: Tried for 125 seconds to get a connection to xxxxxxx:80. Giving up.

  • when i set proxy

     InetSocketAddress proxyInetAddress = new InetSocketAddress("localhost", 9050);
     Proxy proxy = new Proxy(Proxy.Type.SOCKS,proxyInetAddress);
     _socket = new Socket(proxy);
     _socket.connect(socketInetAddress);   // THROWS 
    

    java.io.IOException: Failure to connect to SOCKS server
    class com.android.server.NetworkManagementSocketTagger$SocketTags

    NOTICE: We tried for 15 seconds to connect to 'xxx.xxx.xxx.xxx' using exit $CEA791C0D90387F77B3068B899A39580FAFAB695~TheBlueCat at 62.57.160.237. Retrying on a new circuit.
    NOTICE: Tried for 120 seconds to get a connection to xxx.xxx.xxx.xxx Giving up.

  • when i set Proxy to HTTP while create socket i get
    java.lang.IllegalArgumentException: Invalid proxy: HTTP@localhost/127.0.0.1:8118

  1. i set both afwall & orbot to use build in iptables

what services/ apps need have access to network to function as vpn / orbot

  1. i set in afwall+ access
  • for VPN to apps
  • orbot access to lan/wifi/cell/vpn

do i need vpn network / kernel / sharing dns dhcp / ntp / root apps enabled on any type of connection?

what about proxy handler / html browser / captive portal ?

Orbot not working correctly on Android 7.0

Hi,
after upgrading my Nexus 5X to Android 7.0 Orbot doesnt work correctly. It can connect as expected but it wont disconnect. So if I try to turn Orbot off it keeps turning on because for some reason it cant stop listeners on 9050. In my opinion the problem is with getting polipo and other processes ID. I am facing this issue myself and I still wasnt able to solve it. It is because at Android 7.0 Google has strictly restricted process policy. It means that you cannot get process ID (it always returns -1) and therefore there is probably problem communicating with these processes. I have heard reports from other user (I even think that developer of Copperhead OS mentioned that he is facing this issue with orbot on latest copperhead build with android 7.0) about having this issue.

Missing asset file in X86 arch

Install on X86 emulator, we can see logs below:

07-10 05:13:04.487 11844 11890 D Orbot : checking binary version: null
07-10 05:13:04.488 11844 11890 D Orbot : upgrading binaries to latest version: 0.3.0.7-openssl1.0.2k-1
07-10 05:13:04.501 11844 11890 E Orbot : error onBind
07-10 05:13:04.501 11844 11890 E Orbot : java.io.FileNotFoundException: x86/obfs4proxy.mp3
07-10 05:13:04.501 11844 11890 E Orbot : at android.content.res.AssetManager.openAsset(Native Method)
07-10 05:13:04.501 11844 11890 E Orbot : at android.content.res.AssetManager.open(AssetManager.java:347)
07-10 05:13:04.501 11844 11890 E Orbot : at android.content.res.AssetManager.open(AssetManager.java:321)
07-10 05:13:04.501 11844 11890 E Orbot : at org.torproject.android.service.util.TorResourceInstaller.installResources(TorResourceInstaller.java:89)
07-10 05:13:04.501 11844 11890 E Orbot : at org.torproject.android.service.TorService.torUpgradeAndConfig(TorService.java:633)
07-10 05:13:04.501 11844 11890 E Orbot : at org.torproject.android.service.TorService.access$800(TorService.java:82)
07-10 05:13:04.501 11844 11890 E Orbot : at org.torproject.android.service.TorService$2.run(TorService.java:589)
07-10 05:13:04.501 11844 11890 E Orbot : at java.lang.Thread.run(Thread.java:761)
07-10 05:13:04.501 11844 11890 D Orbot : error finding exiting process: java.io.FileNotFoundException: x86/obfs4proxy.mp3
07-10 05:13:05.374 11844 11844 D Orbot : handleIntents android.intent.action.MAIN

So, there are errors when files missing for x86 arch. Pls fix.

Use Orbot without root behind Netguard

Hi all,

So, I'd like some help in configuring orbot to communicate behind netguard, a non-root firewall for android.

That is, if it's possible?

Here are links: homepage https://www.netguard.me

Xda forum: https://forum.xda-developers.com/android/apps-games/app-netguard-root-firewall-t3233012

github: https://github.com/M66B/NetGuard

There's much I've checked before presenting this query, as in, the various methods to redirect network traffic for some, if not all apps though tor.

However, all of them only mention using a rooted device, via orwall/afwall together as an example answer, for a rooted device.

Theres also the iptables redirection ruleset, as a same root only method, etc all I've come across in Google search are root only methods.

Netguard offers a socks5 proxy for redirection, also specific port redirection.

Ive followed the official netguard instruction set here, for socks5 redirection at https://github.com/M66B/NetGuard/blob/master/FAQ.md#FAQ54, no profit.

I've tested also the port redirection inside netguard for both tcp/udp 53 toward tor dns 5400. Again, no profit.

In closing, I guess an additional question would be, is the udp networking that netguard excludes in its socks5 proxy implementation (it doesn't seem to exclude udp in port redirection) nessesary for orbot to work correctly behind netguard?

fwiw, I'm using a wifi only tablet, its an sm-t230nu with stock rom kitkat 4.4.2 with installed orbot 15.4.2-rc-1-multi-sdk16.

Can anyone here provide a working instruction set for me to use orbot without root behind the netguard non root firewall?

I thank anyone willing to help in advance :)

update geoip

I use both orbot on my phone and torbrowser on pc. There is an interesting bug about the geoip file.I have to use some bridges to make tor work well because i am in China.I found that the geoip file in torbrowser is the latest version but it is the old in orbot. So some bridges are not in the excluding states according to torbrowser but they are excluded in orbot. In order to resolve the problem,i replace the geoip file of orbot in the directory /date/date/org.torproject.android/app_bin with the latest geoip in torbrowser. Then something new happened. When i use some bridges that are not excluded in both old and latest version geoip file, it is shown in orbot log file something like that Received http status code 404("Not found") from server 'xxx.xxx.xxx.xxx:xxxx' while fetching "tor/keys/fp-sk/xxxxxxxxxxxxxxxxxxxx......).But the bridges work well with the old geoip file. The bug if found in the newest version of orbot from 15.2.0-RC2 to 15.2.0-RC7-multi. I hope that the developers can fix the bug and use the latest geoip file with every new version orbot.

could not bind to port 15.1rc1

01-20 06:47:47.242 2611-2848/? D/Orbot: torrc.custom=ControlPortWriteToFile /data/data/org.torproject.android/app_bin/control.txt
SOCKSPort 9050
SafeSocks 0
TestSocks 0
WarnUnsafeSocks 1
DisableNetwork 0
Log debug syslog
Log info syslog
SafeLogging 0
UseBridges 0
GeoIPFile /data/data/org.torproject.android/app_bin/geoip
GeoIPv6File /data/data/org.torproject.android/app_bin/geoip6
EntryNodes {GB}{DE}
ExitNodes {NL}
StrictNodes 1
...
01-20 06:47:49.676 2611-2848/? D/Orbot: Tor (1): Jan 20 06:47:49.662 [notice] Tor v0.2.7.6 running on Linux with Libevent 2.0.22-stable, OpenSSL 1.0.1q and Zlib 1.2.8.
Jan 20 06:47:49.662 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning
Jan 20 06:47:49.663 [notice] Read configuration file "/data/data/org.torproject.android/app_bin/torrc".
Jan 20 06:47:49.663 [notice] Read configuration file "/data/data/org.torproject.android/app_bin/torrc.custom".
Jan 20 06:47:49.673 [notice] Opening Socks listener on 127.0.0.1:9050
Jan 20 06:47:49.673 [warn] Could not bind to 127.0.0.1:9050: Address already in use. Is Tor already running?
Jan 20 06:47:49.673 [notice] Opening Control listener on 127.0.0.1:0
Jan 20 06:47:49.673 [notice] Control listener listening on port 54035.
Jan 20 06:47:49.673 [notice] Closing partially-constructed Control listener on 127.0.0.1:54035
Jan 20 06:47:49.673 [warn] Failed to parse/validate config: Failed to bind one of the listener ports.
Jan 20 06:47:49.674 [err] Reading config failed--see warnings above.

Can't compile Tor

I can't compile Tor for ARM using the orbot repository. I cloned the repository, ran git submodule update --init --recursive, set up the ANDROID_NDK_HOME and ran make -C external. The error message is (during configure of Tor)

checking for openssl directory... configure: WARNING: Could not find a linkable openssl. If you have it installed somewhere unusual, you can specify an explicit path using --with-openssl-dir configure: WARNING: On Debian, you can install openssl using "apt-get install libssl-dev" configure: error: Missing libraries; unable to proceed. Makefile:233: recipe for target 'tor/Makefile' failed make: *** [tor/Makefile] Error 1

Running make -C external openssl finishes fine and leaves libcrypto.a and libssl.a in lib.
I also confirmed that configure is run with --with-openssl-dir.

Any ideas what goes wrong here?

Access denied on AOSP 6.0.1 (bullhead)

Hi,

Orbot (the latest available on F-Droid, 15.0.1-RC3-PIE) works on a Nexus 5 (hammerhead) with AOSP 6.0.1.
However, the same fails on a Nexus 5X (bullhead) with AOSP 6.0.1, apparently due to SELinux permissions.

As soon as I enable tor, it stops immediately with these errors:

04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23433): avc: denied { getattr } for path="/proc/1" dev="proc" ino=11766 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:init:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23434): avc: denied { search } for name="1" dev="proc" ino=11766 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:init:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23435): avc: denied { search } for name="1" dev="proc" ino=11766 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:init:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23436): avc: denied { getattr } for path="/proc/2" dev="proc" ino=14461 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23437): avc: denied { search } for name="2" dev="proc" ino=14461 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23438): avc: denied { search } for name="2" dev="proc" ino=14461 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23439): avc: denied { getattr } for path="/proc/3" dev="proc" ino=14462 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23440): avc: denied { search } for name="3" dev="proc" ino=14462 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23441): avc: denied { search } for name="3" dev="proc" ino=14462 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23442): avc: denied { getattr } for path="/proc/4" dev="proc" ino=14463 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23443): avc: denied { search } for name="4" dev="proc" ino=14463 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23444): avc: denied { search } for name="4" dev="proc" ino=14463 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23445): avc: denied { getattr } for path="/proc/5" dev="proc" ino=14464 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23446): avc: denied { search } for name="5" dev="proc" ino=14464 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23447): avc: denied { search } for name="5" dev="proc" ino=14464 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23448): avc: denied { getattr } for path="/proc/6" dev="proc" ino=14465 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23449): avc: denied { search } for name="6" dev="proc" ino=14465 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23450): avc: denied { search } for name="6" dev="proc" ino=14465 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23451): avc: denied { getattr } for path="/proc/7" dev="proc" ino=14466 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23452): avc: denied { search } for name="7" dev="proc" ino=14466 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23453): avc: denied { search } for name="7" dev="proc" ino=14466 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23454): avc: denied { getattr } for path="/proc/8" dev="proc" ino=14467 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23455): avc: denied { search } for name="8" dev="proc" ino=14467 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23456): avc: denied { search } for name="8" dev="proc" ino=14467 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23457): avc: denied { getattr } for path="/proc/9" dev="proc" ino=14468 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23458): avc: denied { search } for name="9" dev="proc" ino=14468 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23459): avc: denied { search } for name="9" dev="proc" ino=14468 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23460): avc: denied { getattr } for path="/proc/10" dev="proc" ino=14469 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23461): avc: denied { search } for name="10" dev="proc" ino=14469 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23462): avc: denied { search } for name="10" dev="proc" ino=14469 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23463): avc: denied { getattr } for path="/proc/11" dev="proc" ino=14470 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23464): avc: denied { search } for name="11" dev="proc" ino=14470 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23465): avc: denied { search } for name="11" dev="proc" ino=14470 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23466): avc: denied { getattr } for path="/proc/12" dev="proc" ino=14471 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23467): avc: denied { search } for name="12" dev="proc" ino=14471 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23468): avc: denied { search } for name="12" dev="proc" ino=14471 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23469): avc: denied { getattr } for path="/proc/13" dev="proc" ino=14472 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23470): avc: denied { search } for name="13" dev="proc" ino=14472 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0
04-17 09:22:00.421  2783  2783 W toolbox : type=1400 audit(0.0:23471): avc: denied { search } for name="13" dev="proc" ino=14472 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:kernel:s0 tclass=dir permissive=0

Any idea?

Official Orbot GitHub Repository

Hey @n8fr8, great to see that you created a development mirror for Orbot here! I really think it's sad that official development does not take place on GitHub given the fact that they already created the Orbot Repository. If I make a pull request to your fork, will you merge to the official GIT master?

On another side-note, our own GitHub project, the Android IMSI-Catcher Detector, would still love to get some attention and code of the @guardianproject developers. Are you still into making this happen?

Errors while setting up in eclipse

i ran make -c /external after specifying NDK path in makefile in NDK.
i am getting these error in eclipse:

i ran make -c /external after specifying NDK path in makefile in NDK.

Description Resource Path Location Type
ConfigEntry cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1697 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1697 Java Problem
ConfigEntry cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1699 Java Problem
ConfigEntry cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1700 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1567 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1677 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1678 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1693 Java Problem
The method orConnStatus(String, String) of type TorService must override or implement a supertype method TorService.java /Orbot/src/org/torproject/android/service line 1385 Java Problem
The method streamStatus(String, String, String) of type TorService must override or implement a supertype method TorService.java /Orbot/src/org/torproject/android/service line 1397 Java Problem
The method unrecognized(String, String) of type TorService must override or implement a supertype method TorService.java /Orbot/src/org/torproject/android/service line 1409 Java Problem
The method bandwidthUsed(long, long) of type TorService must override or implement a supertype method TorService.java /Orbot/src/org/torproject/android/service line 1421 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1341 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1353 Java Problem
The method message(String, String) of type TorService must override or implement a supertype method TorService.java /Orbot/src/org/torproject/android/service line 1376 Java Problem
The method newDescriptors(List) of type TorService must override or implement a supertype method TorService.java /Orbot/src/org/torproject/android/service line 1381 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1231 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1212 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1296 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1294 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1140 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1129 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1193 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1173 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1097 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1089 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1121 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1109 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1074 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 524 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1088 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1088 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 475 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 481 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 166 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 470 Java Problem
EventHandler cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 85 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 92 Java Problem
The import net cannot be resolved TorService.java /Orbot/src/org/torproject/android/service line 36 Java Problem
The import net cannot be resolved TorService.java /Orbot/src/org/torproject/android/service line 37 Java Problem
The import net cannot be resolved TorService.java /Orbot/src/org/torproject/android/service line 35 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1786 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1794 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1763 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1771 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1809 Java Problem
TorControlConnection cannot be resolved to a type TorService.java /Orbot/src/org/torproject/android/service line 1837 Java Problem

Crash on applist

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.CheckBox.setChecked(boolean)' on a null object reference
at org.torproject.android.ui.AppManager$OnAutoClickListener.onClick(AppManager.java:125)
at android.view.View.performClick(View.java:5714)
at android.widget.TextView.performClick(TextView.java:10926)
at android.view.View$PerformClick.run(View.java:22589)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

Apps VPN mode crash

Hi,

I've been trying to build orbot using the guide from BUILD file.
I've successfully managed to build it but each time I

  • Turn on Apps VPN Mode
  • Choose all apps
  • Go back
  • Give it permissions

the app crashes and keeps doing so until all data is cleared
From the log I've found out that libtun2socks.so is missing.
Would you mind helping me solve this?
Cheers

04-27 16:21:01.336 27458-27458/org.torproject.android E/AndroidRuntime: FATAL EXCEPTION: main
Process: org.torproject.android, PID: 27458
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/org.torproject.android-1/base.apk", zip file "/data/app/org.torproject.android-1/split_lib_dependencies_apk.apk", zip file "/data/app/org.torproject.android-1/split_lib_slice_0_apk.apk", zip file "/data/app/org.torproject.android-1/split_lib_slice_1_apk.apk", zip file "/data/app/org.torproject.android-1/split_lib_slice_2_apk.apk", zip file "/data/app/org.torproject.android-1/split_lib_slice_3_apk.apk", zip file "/data/app/org.torproject.android-1/split_lib_slice_4_apk.apk", zip file "/data/app/org.torproject.android-1/split_lib_slice_5_apk.apk", zip file "/data/app/org.torproject.android-1/split_lib_slice_6_apk.apk", zip file "/data/app/org.torproject.android-1/split_lib_slice_7_apk.apk", zip file "/data/app/org.torproject.android-1/split_lib_slice_8_apk.apk", zip file "/data/app/org.torproject.android-1/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/org.torproject.android-1/lib/arm64, /system/lib64, /vendor/lib64]]] couldn't find "libtun2socks.so"
at java.lang.Runtime.loadLibrary0(Runtime.java:984)
at java.lang.System.loadLibrary(System.java:1562)
at org.torproject.android.service.vpn.Tun2Socks.(Tun2Socks.java:35)
at org.torproject.android.service.vpn.Tun2Socks.init(Tun2Socks.java:0)
at org.torproject.android.service.vpn.OrbotVpnManager.(OrbotVpnManager.java:96)
at org.torproject.android.service.vpn.TorVpnService.onCreate(TorVpnService.java:29)
at android.app.ActivityThread.handleCreateService(ActivityThread.java:3192)
at android.app.ActivityThread.-wrap5(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1568)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6121)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)

"Select Apps" checkbox in settings always enabled

Hi,
reading Orbot code to fix another similar problem, I found out that "Select Apps" checkbox in settings panel is always enabled in Android versions >= Lollipop. Is it correct?
If it is correct, there's a bug because I still need to set the "Transparent Proxying" checkbox checked to let this function work (I'm talking about proxying apps internet traffic through orbot). And you should also have to make the same check here: https://github.com/n8fr8/orbot/blob/master/src/org/torproject/android/settings/SettingsPreferences.java#L174
If it is not correct that the button "Select Apps" is always enabled in Android Versions >= Lollipop, you have just to remove this if statement: https://github.com/n8fr8/orbot/blob/master/src/org/torproject/android/settings/SettingsPreferences.java#L123
I don't understand why the button should always be enabled in Lollipop and latest versions. It should be enabled only if the "Transparent Proxying" checkbox is checked, shouldn't it?

no intent / fire browser exception and crash 15.1rc1

when no browser on phone - crash

01-20 06:36:28.331 10021-10021/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: org.torproject.android, PID: 10021
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=https://check.torproject.org/... flg=0x30000000 }
at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1805)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1514)
at android.app.Activity.startActivityForResult(Activity.java:3930)
at android.app.Activity.startActivityForResult(Activity.java:3890)
at android.app.Activity.startActivity(Activity.java:4213)
at android.app.Activity.startActivity(Activity.java:4181)
at org.torproject.android.OrbotMainActivity.openBrowser(OrbotMainActivity.java:702)
at org.torproject.android.OrbotMainActivity.doTorCheck(OrbotMainActivity.java:505)
at org.torproject.android.OrbotMainActivity.access$200(OrbotMainActivity.java:81)
at org.torproject.android.OrbotMainActivity$3.onClick(OrbotMainActivity.java:255)
at android.view.View.performClick(View.java:5204)
at android.view.View$PerformClick.run(View.java:21156)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5470)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

Can't use KDE connect when Orbot is enabled even when is not selected to be torified

Orbot 15.1.2 (Tor 0.2.7.5-020120160125)
Android 5.1.1 (rooted device and Orbot has root access)
KDE connect 0.9g (F-droid)


Configuration:
I have enabled the following options (everything else remains disabled):

Start Orbot on Boot
Allow Background Starts
Request Root Access
Transparent Proxying
/KDE connect is not selected on the list to be torified/
No Network Auto-Sleep

Orbot often crashes when Network situation changes

Hi!
Unfortunately I find Orbot barely usable at the moment.
Orbot often crashes when my network situation changes. When I'm on the road and I lose mobile signal, Orbot often seems to be unable to handle that. Sometimes the notification icon changes to the "problem-icon" and when I open Orbot, the onion is either yellow, hanging at "Starting Orbot", or sometimes even plain gray.
Also sometimes Orbot seems to crash completely. The vpn-key is still shown (I'm using the VPN feature), but the Orbot icon is vanished from the notification area.

Whenever Orbot has such problems, I have to force kill and restart it in order to get it back to work.

I wish I could provide some logs, but I can barely manage to reproduce this with a logcat running 😞

I'm running CopperheadOS (latest version for Nexus 5) and installed Orbot from FDroid (guardianproject repo).

PS: I hope, I'm using the right issue tracker now :)

See traffic by app

I've torified all my apps, so I can't see how many traffic does every app uses. I'd like to have this option on Orbot.

Thanks for all your hard work!

Building Issue

Hi,
While trying to build the app, I get this error:
nsd': No such file
Makefile:298: recipe for target 'assets' failed
make: [assets] Error 1 (ignored)
zip ../assets/armeabi/pdnsd.mp3 ../libs/armeabi/pdnsd
zip warning: name not matched: ../libs/armeabi/pdnsd

zip error: Nothing to do! (../assets/armeabi/pdnsd.mp3)
Makefile:298: recipe for target 'assets' failed
make: [assets] Error 12 (ignored)
rm ../libs/armeabi/pdnsd
rm: cannot remove ‘../libs/armeabi/pdnsd’: No such file or directory
Makefile:298: recipe for target 'assets' failed
make: [assets] Error 1 (ignored)
make: Leaving directory '/home/saad/Desktop/orbot/external'

What could be the issue?

Cannot specify custom meek bridges

Orbot should allow custom meek bridges to be defined in the bridges settings menu. The default bridges are expensive and rate-limited. Orbot needs to start the ClientTransportPlugin meek_lite transport when it see's a meek bridge line.

few orbot/tor issues and related iptables (firewall) rc7

i use orbot with afwall

APP > VPN (ORBOT) -> POLIPO -> TOR -> INTERNET ?

  1. set afwall to allow prefered apps traffic on vpn
  2. set afwall to allow orbot traffic on vpn and wifi ( desired connection to internet)
  3. set affwall to use system iptables
  4. enable in orbot vpn
  5. set orbot to use system iptables
  6. set no network sleep
  7. set allowed applications for orbot

and i got some issues

  1. granting permission for app to allow vpn connection in orbot & firewall (applied only on reboot)
    see also:
    ukanth/afwall#491 (comment)
    ukanth/afwall#491 (comment)

  2. orbot is not indicating network traffic but apps are working ( internet connection works)
    (circuits are closed - no route and trafic is shown in orbot notification also in logs (circuit closed))

seems like orbot is leaking connection see pic 3
1) i can use all apps - those which are enabled in my iptbless (via afwall)
2) my ip is not tor ip
sugesstion - orbot to ensure that tor service is working properly and connection to circuit is made / polipo is working correctly - before allow any data on vpn !!!

screenshot_20160131-092116 1

screenshot_20160131-092214 1

screenshot_20160131-093023 1

  1. after some intensive use orbot/tor behave weird as overloaded

4)mixing bridges / nodes mode (changing from one to other) results in overloading and weird behavior)

  1. when i start orbot (go to home-screen with back button or home ) to other app and go back to orbot its initializing itself as there was no start before ( polipo / new circuit new listener etc )

  2. how i can be sure that tor is working properly (apps are using tor and traffic is not leaking somehow - i mean not to check on orbot start but after some time of work with orbot/tor ) ?

  3. orfox has build in polipo tor service ?(as i dont start orbot orfox is working) ?
    (does this not influencing orbot work - closing opening ports and services ?)

  4. in above setting scenario how i can be sure that traffic sends to polipo is going thru tor ? if some app didn't kill polipo and sets its own (as spoofing)

  5. what about doze mode for orbot / tor (how is(is it) handling it) ?

Bug from last changes at master: handleIntents() is never run

The change was introduced here: 4510557

At orbot/app/src/main/java/org/torproject/android/OrbotMainActivity.java

The line:

 Private String torStatus = null;

It has been changed to:

 Private String torStatus = TorServiceConstants.STATUS_OFF;

And now the condition that executes the function is never fulfilled:

 if (torStatus == null && newTorStatus != null) //first time status
  {
    	torStatus = newTorStatus;
    	findViewById(R.id.frameMain).setVisibility(View.VISIBLE);
    	updateStatus(log);
    		
    	//now you can handle the intents properly
    	handleIntents();
    		
    }

Option to replace main screen with log screen

It would be usefull to optionally replace main screen with actual log (with configurable verbosity) like in Orxy. This will give experiencedbuser more info and will make Orbot look more professional;)
Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.