Compare commits
30 Commits
tor-androi
...
master
Author | SHA1 | Date |
---|---|---|
n8fr8 | e822160b00 | |
n8fr8 | b0e62e58cc | |
n8fr8 | 43b10491a1 | |
n8fr8 | c4cf800488 | |
n8fr8 | 0417acf570 | |
n8fr8 | ff7ecbdba9 | |
n8fr8 | 3e8e5ace65 | |
n8fr8 | 0fda8f7779 | |
n8fr8 | 6548d3630b | |
n8fr8 | d1ee65a795 | |
n8fr8 | a2fba85a5b | |
n8fr8 | 6ef0a45050 | |
n8fr8 | b82b6a4cb1 | |
n8fr8 | de522e2ec8 | |
n8fr8 | 0756d058f7 | |
n8fr8 | b98cad65d4 | |
n8fr8 | cd678980f9 | |
n8fr8 | 8a66040c4f | |
n8fr8 | 75bd78b287 | |
n8fr8 | fa1ed5505d | |
n8fr8 | 84ab10731c | |
n8fr8 | 63656611dc | |
n8fr8 | 84d7745cde | |
n8fr8 | b0e2d4e63b | |
n8fr8 | e97d5a1016 | |
n8fr8 | 0ba24f8ca4 | |
n8fr8 | 93663355fa | |
n8fr8 | 63723e06ef | |
n8fr8 | ae61770960 | |
n8fr8 | 45ecbcb298 |
|
@ -5,7 +5,7 @@ buildscript {
|
|||
jcenter()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.1.2'
|
||||
classpath 'com.android.tools.build:gradle:3.2.0'
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -28,6 +28,7 @@ endif
|
|||
|
||||
# Android NDK setup
|
||||
ANDROID_NDK_HOME ?= /opt/android-ndk
|
||||
ANDROID_NDK ?= $(ANDROID_NDK_HOME)
|
||||
NDK_PLATFORM_LEVEL ?= 16
|
||||
NDK_TOOLCHAIN_VERSION=4.9
|
||||
APP_ABI ?= armeabi
|
||||
|
@ -42,6 +43,7 @@ endif
|
|||
ifneq ($(filter arm64%, $(APP_ABI)),)
|
||||
NDK_ABI := arm64
|
||||
endif
|
||||
|
||||
NDK_SYSROOT=$(ANDROID_NDK_HOME)/platforms/android-$(NDK_PLATFORM_LEVEL)/arch-$(NDK_ABI)
|
||||
NDK_UNAME := $(shell uname -s | tr '[A-Z]' '[a-z]')
|
||||
ifneq ($(filter mips%, $(NDK_ABI)),)
|
||||
|
@ -125,10 +127,9 @@ ifneq ($(filter mips%, $(NDK_ABI)),)
|
|||
OPENSSL_CONF_FLAG+=-D_MIPS_SZLONG=32 -D__MIPSEL__
|
||||
endif
|
||||
endif
|
||||
|
||||
lib/libcrypto.a:
|
||||
cd openssl && \
|
||||
./Configure android -DL_ENDIAN $(OPENSSL_CONF_FLAG) && \
|
||||
./Configure android -D__ANDROID_API__=$(NDK_PLATFORM_LEVEL) -DL_ENDIAN $(OPENSSL_CONF_FLAG) && \
|
||||
make CC="$(CC)" ANDROID_DEV=$(NDK_SYSROOT)/usr depend && \
|
||||
make CC="$(CC)" ANDROID_DEV=$(NDK_SYSROOT)/usr build_libs
|
||||
|
||||
|
@ -136,7 +137,7 @@ lib/libssl.a:
|
|||
cp config.sub openssl
|
||||
cp config.guess openssl
|
||||
cd openssl && \
|
||||
./Configure android -DL_ENDIAN $(OPENSSL_CONF_FLAG) && \
|
||||
./Configure android -D__ANDROID_API__=$(NDK_PLATFORM_LEVEL) -DL_ENDIAN $(OPENSSL_CONF_FLAG) && \
|
||||
make CC="$(CC)" ANDROID_DEV=$(NDK_SYSROOT)/usr depend && \
|
||||
make CC="$(CC)" ANDROID_DEV=$(NDK_SYSROOT)/usr build_libs
|
||||
|
||||
|
@ -254,14 +255,14 @@ tor/Makefile: tor/configure
|
|||
cp config.sub tor
|
||||
cp config.guess tor
|
||||
cd tor && \
|
||||
CC="$(CC)" AR="$(AR)" RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) -D_FORTIFY_SOURCE=2 -fwrapv -fno-strict-aliasing -fno-strict-overflow" LDFLAGS="$(LDFLAGS)" \
|
||||
CC="$(CC)" AR="$(AR)" RANLIB=$(RANLIB) PKG_CONFIG_PATH="$(EXTERNAL_ROOT)/lib/pkgconfig" CFLAGS="$(CFLAGS) -D_FORTIFY_SOURCE=2 -fwrapv -fno-strict-aliasing -fno-strict-overflow" LDFLAGS="$(LDFLAGS)" \
|
||||
LIBS="-L$(EXTERNAL_ROOT)/lib" CFLAGS="-I$(EXTERNAL_ROOT)/include -I$(EXTERNAL_ROOT)/include/event2" \
|
||||
./configure \
|
||||
--host=$(HOST) \
|
||||
--disable-asciidoc \
|
||||
--enable-static-libevent --with-libevent-dir=$(EXTERNAL_ROOT) \
|
||||
--enable-static-openssl --with-openssl-dir=$(EXTERNAL_ROOT) \
|
||||
--disable-linker-hardening --disable-gcc-hardening --disable-tool-name-check --disable-systemd
|
||||
--disable-linker-hardening --disable-gcc-hardening --disable-tool-name-check --disable-systemd --disable-module-dirauth
|
||||
|
||||
tor-build-stamp: tor/Makefile
|
||||
$(MAKE) -C tor all-am
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 3ce7bc40a3c48da1c96c2d04c10045bd797c6aa3
|
||||
Subproject commit e71ebf275da66dfd601c92e0e80a35114c32f6f8
|
|
@ -1 +1 @@
|
|||
Subproject commit 81d71f0d41adf0d8beb0ef1f7f750f20636d5c50
|
||||
Subproject commit da95b91355248ad8f3a6aa6733cc6d24915f59ce
|
|
@ -6,12 +6,12 @@
|
|||
# Specifies the JVM arguments used for the daemon process.
|
||||
# The setting is particularly useful for tweaking memory settings.
|
||||
# Default value: -Xmx10248m -XX:MaxPermSize=256m
|
||||
# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
|
||||
#
|
||||
# When configured, Gradle will run in incubating parallel mode.
|
||||
# This option should only be used with decoupled projects. More details, visit
|
||||
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
|
||||
# org.gradle.parallel=true
|
||||
#Mon Jun 20 21:44:59 EDT 2016
|
||||
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
|
||||
android.useDeprecatedNdk=true
|
||||
aar.deployPath=/media/n8fr8/nate128/dev/repos/gpmaven
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#Wed May 09 12:39:36 EDT 2018
|
||||
#Thu Oct 11 16:49:15 EDT 2018
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.5.1-all.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip
|
||||
|
|
|
@ -10,3 +10,4 @@
|
|||
|
||||
# Project target.
|
||||
target=android-16
|
||||
aar.deployPath=/media/n8fr8/nate128/dev/repos/gpmaven/
|
||||
|
|
|
@ -2,7 +2,7 @@ apply plugin: 'com.android.library'
|
|||
|
||||
android {
|
||||
compileSdkVersion 27
|
||||
buildToolsVersion '27.0.3'
|
||||
buildToolsVersion '28.0.2'
|
||||
|
||||
/**
|
||||
sourceSets {
|
||||
|
@ -15,8 +15,8 @@ android {
|
|||
defaultConfig {
|
||||
minSdkVersion 16
|
||||
targetSdkVersion 27
|
||||
versionCode 32101
|
||||
versionName "0.3.2.10-dev"
|
||||
versionCode 34700
|
||||
versionName "0.3.4.7-rc"
|
||||
|
||||
}
|
||||
buildTypes {
|
||||
|
@ -40,7 +40,7 @@ uploadArchives {
|
|||
pom.project {
|
||||
groupId 'org.torproject'
|
||||
artifactId 'tor-android-binary'
|
||||
version "0.3.3.5-rc-1"
|
||||
version "0.3.4.8-2"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,22 +1,4 @@
|
|||
obfs4 154.35.22.10:15937 8FB9F4319E89E5C6223052AA525A192AFBC85D55 cert=GGGS1TX4R81m3r0HBl79wKy1OtPPNR2CZUIrHjkRg65Vc2VR8fOyo64f9kmT1UAFG7j0HQ iat-mode=0
|
||||
obfs4 198.245.60.50:443 752CF7825B3B9EA6A98C83AC41F7099D67007EA5 cert=xpmQtKUqQ/6v5X7ijgYE/f03+l2/EuQ1dexjyUhh16wQlu/cpXUGalmhDIlhuiQPNEKmKw iat-mode=0
|
||||
obfs4 192.99.11.54:443 7B126FAB960E5AC6A629C729434FF84FB5074EC2 cert=VW5f8+IBUWpPFxF+rsiVy2wXkyTQG7vEd+rHeN2jV5LIDNu8wMNEOqZXPwHdwMVEBdqXEw iat-mode=0
|
||||
obfs4 109.105.109.165:10527 8DFCD8FB3285E855F5A55EDDA35696C743ABFC4E cert=Bvg/itxeL4TWKLP6N1MaQzSOC6tcRIBv6q57DYAZc3b2AzuM+/TfB7mqTFEfXILCjEwzVA iat-mode=1
|
||||
obfs4 83.212.101.3:50002 A09D536DD1752D542E1FBB3C9CE4449D51298239 cert=lPRQ/MXdD1t5SRZ9MquYQNT9m5DV757jtdXdlePmRCudUU9CFUOX1Tm7/meFSyPOsud7Cw iat-mode=0
|
||||
obfs4 109.105.109.147:13764 BBB28DF0F201E706BE564EFE690FE9577DD8386D cert=KfMQN/tNMFdda61hMgpiMI7pbwU1T+wxjTulYnfw+4sgvG0zSH7N7fwT10BI8MUdAD7iJA iat-mode=2
|
||||
obfs4 154.35.22.11:16488 A832D176ECD5C7C6B58825AE22FC4C90FA249637 cert=YPbQqXPiqTUBfjGFLpm9JYEFTBvnzEJDKJxXG5Sxzrr/v2qrhGU4Jls9lHjLAhqpXaEfZw iat-mode=0
|
||||
obfs4 154.35.22.12:80 00DC6C4FA49A65BD1472993CF6730D54F11E0DBB cert=N86E9hKXXXVz6G7w2z8wFfhIDztDAzZ/3poxVePHEYjbKDWzjkRDccFMAnhK75fc65pYSg iat-mode=0
|
||||
obfs4 154.35.22.13:443 FE7840FE1E21FE0A0639ED176EDA00A3ECA1E34D cert=fKnzxr+m+jWXXQGCaXe4f2gGoPXMzbL+bTBbXMYXuK0tMotd+nXyS33y2mONZWU29l81CA iat-mode=0
|
||||
obfs4 154.35.22.10:80 8FB9F4319E89E5C6223052AA525A192AFBC85D55 cert=GGGS1TX4R81m3r0HBl79wKy1OtPPNR2CZUIrHjkRg65Vc2VR8fOyo64f9kmT1UAFG7j0HQ iat-mode=0
|
||||
obfs4 154.35.22.10:443 8FB9F4319E89E5C6223052AA525A192AFBC85D55 cert=GGGS1TX4R81m3r0HBl79wKy1OtPPNR2CZUIrHjkRg65Vc2VR8fOyo64f9kmT1UAFG7j0HQ iat-mode=0
|
||||
obfs4 154.35.22.11:443 A832D176ECD5C7C6B58825AE22FC4C90FA249637 cert=YPbQqXPiqTUBfjGFLpm9JYEFTBvnzEJDKJxXG5Sxzrr/v2qrhGU4Jls9lHjLAhqpXaEfZw iat-mode=0
|
||||
obfs4 154.35.22.11:80 A832D176ECD5C7C6B58825AE22FC4C90FA249637 cert=YPbQqXPiqTUBfjGFLpm9JYEFTBvnzEJDKJxXG5Sxzrr/v2qrhGU4Jls9lHjLAhqpXaEfZw iat-mode=0
|
||||
obfs4 154.35.22.9:12166 C73ADBAC8ADFDBF0FC0F3F4E8091C0107D093716 cert=gEGKc5WN/bSjFa6UkG9hOcft1tuK+cV8hbZ0H6cqXiMPLqSbCh2Q3PHe5OOr6oMVORhoJA iat-mode=0
|
||||
obfs4 154.35.22.9:80 C73ADBAC8ADFDBF0FC0F3F4E8091C0107D093716 cert=gEGKc5WN/bSjFa6UkG9hOcft1tuK+cV8hbZ0H6cqXiMPLqSbCh2Q3PHe5OOr6oMVORhoJA iat-mode=0
|
||||
obfs4 154.35.22.9:443 C73ADBAC8ADFDBF0FC0F3F4E8091C0107D093716 cert=gEGKc5WN/bSjFa6UkG9hOcft1tuK+cV8hbZ0H6cqXiMPLqSbCh2Q3PHe5OOr6oMVORhoJA iat-mode=0
|
||||
obfs4 154.35.22.12:4304 00DC6C4FA49A65BD1472993CF6730D54F11E0DBB cert=N86E9hKXXXVz6G7w2z8wFfhIDztDAzZ/3poxVePHEYjbKDWzjkRDccFMAnhK75fc65pYSg iat-mode=0
|
||||
obfs4 154.35.22.13:16815 FE7840FE1E21FE0A0639ED176EDA00A3ECA1E34D cert=fKnzxr+m+jWXXQGCaXe4f2gGoPXMzbL+bTBbXMYXuK0tMotd+nXyS33y2mONZWU29l81CA iat-mode=0
|
||||
obfs4 192.95.36.142:443 CDF2E852BF539B82BD10E27E9115A31734E378C2 cert=qUVQ0srL1JI/vO6V6m/24anYXiJD3QP2HgzUKQtQ7GRqqUvs7P+tG43RtAqdhLOALP7DJQ iat-mode=1
|
||||
obfs4 85.17.30.79:443 FC259A04A328A07FED1413E9FC6526530D9FD87A cert=RutxZlu8BtyP+y0NX7bAVD41+J/qXNhHUrKjFkRSdiBAhIHIQLhKQ2HxESAKZprn/lR3KA iat-mode=0
|
||||
meek_lite 0.0.2.0:1 B9E7141C594AF25699E0079C1F0146F409495296 url=https://d2cly7j4zqgua7.cloudfront.net/ front=a0.awsstatic.com
|
||||
obfs4 78.215.187.186:45675 AE907EE5FAA5D0D27E0C83EFA6ADF8E79FCC0FF1 cert=/TRjMo+RinKaixARMjMtZZBhystaBe+aDaapPrbiITFtWx3M/AJcvpjHjO54tJqLd1+IWQ iat-mode=0
|
||||
obfs4 107.160.7.24:443 7A0904F6D182B81BEFE0DEDAFEC974494672627B cert=a5/IlZMnDvb8d92LTHMfsBIgL7QlDLPiXiLwe85uedC80mGD0QerygzmsWnMEdwG9ER9Eg iat-mode=0
|
||||
obfs4 79.136.160.201:46501 66AC975BF7CB429D057AE07FC0312C57D61BAEC1 cert=dCtn9Ya8z+R8YQikdWgC3XTAt58z5Apnm95QHrJwnhFSdnphPPEz+NMm6OawWc2srKLjJg iat-mode=0
|
||||
meek_lite 0.0.2.0:2 97700DFE9F483596DDA6264C4D7DF7641E1E39CE url=https://meek.azureedge.net/ front=ajax.aspnetcdn.com
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
RunAsDaemon 1
|
||||
AvoidDiskWrites 1
|
||||
AvoidDiskWrites 0
|
||||
ControlPort auto
|
||||
SOCKSPort 0
|
||||
DNSPort 0
|
||||
TransPort 0
|
||||
CookieAuthentication 1
|
||||
DisableNetwork 1
|
||||
DisableNetwork 1
|
||||
|
|
|
@ -12,15 +12,12 @@ import java.io.InputStream;
|
|||
import java.io.OutputStream;
|
||||
import java.util.zip.ZipEntry;
|
||||
import java.util.zip.ZipFile;
|
||||
import java.util.zip.ZipInputStream;
|
||||
|
||||
public class NativeLoader {
|
||||
|
||||
private final static int LIB_VERSION = 1;
|
||||
private final static String LIB_NAME = "tor";
|
||||
private final static String LIB_SO_NAME = "tor.so";
|
||||
private final static String LOCALE_LIB_SO_NAME = "tor.so";
|
||||
|
||||
private static volatile boolean nativeLoaded = false;
|
||||
|
||||
private final static String TAG = "TorNativeLoader";
|
||||
|
||||
|
@ -28,14 +25,18 @@ public class NativeLoader {
|
|||
|
||||
|
||||
ZipFile zipFile = null;
|
||||
InputStream stream = null;
|
||||
ZipInputStream stream = null;
|
||||
|
||||
try {
|
||||
zipFile = new ZipFile(context.getApplicationInfo().sourceDir);
|
||||
ZipEntry entry = zipFile.getEntry("lib/" + folder + "/" + LIB_SO_NAME);
|
||||
if (entry == null) {
|
||||
throw new Exception("Unable to find file in apk:" + "lib/" + folder + "/" + LIB_NAME);
|
||||
}
|
||||
stream = zipFile.getInputStream(entry);
|
||||
|
||||
//how we wrap this in another stream because the native .so is zipped itself
|
||||
stream = new ZipInputStream(zipFile.getInputStream(entry));
|
||||
ZipEntry ze = stream.getNextEntry();
|
||||
|
||||
OutputStream out = new FileOutputStream(destLocalFile);
|
||||
byte[] buf = new byte[4096];
|
||||
|
@ -52,12 +53,6 @@ public class NativeLoader {
|
|||
destLocalFile.setWritable(true);
|
||||
}
|
||||
|
||||
try {
|
||||
// System.load(destLocalFile.getAbsolutePath());
|
||||
nativeLoaded = true;
|
||||
} catch (Error e) {
|
||||
Log.e(TAG, e.getMessage());
|
||||
}
|
||||
return true;
|
||||
} catch (Exception e) {
|
||||
Log.e(TAG, e.getMessage());
|
||||
|
@ -81,20 +76,16 @@ public class NativeLoader {
|
|||
}
|
||||
|
||||
public static synchronized boolean initNativeLibs(Context context, File destLocalFile) {
|
||||
if (nativeLoaded) {
|
||||
return nativeLoaded;
|
||||
}
|
||||
|
||||
try {
|
||||
String folder = null;
|
||||
|
||||
try {
|
||||
/**
|
||||
|
||||
if (Build.CPU_ABI.equalsIgnoreCase("armeabi-v7a")) {
|
||||
folder = "armeabi-v7a";
|
||||
} else
|
||||
**/
|
||||
if (Build.CPU_ABI.startsWith("armeabi")) {
|
||||
}
|
||||
else if (Build.CPU_ABI.equalsIgnoreCase("armeabi")) {
|
||||
folder = "armeabi";
|
||||
} else if (Build.CPU_ABI.equalsIgnoreCase("x86")) {
|
||||
folder = "x86";
|
||||
|
@ -106,7 +97,7 @@ public class NativeLoader {
|
|||
}
|
||||
} catch (Exception e) {
|
||||
// FileLog.e("tmessages", e);
|
||||
Log.e(TAG, e.getMessage());
|
||||
Log.e(TAG, e.getMessage(),e);
|
||||
folder = "armeabi";
|
||||
}
|
||||
|
||||
|
@ -116,33 +107,16 @@ public class NativeLoader {
|
|||
folder = "x86";
|
||||
}
|
||||
|
||||
if (destLocalFile != null && destLocalFile.exists()) {
|
||||
try {
|
||||
// System.load(destLocalFile.getAbsolutePath());
|
||||
nativeLoaded = true;
|
||||
return nativeLoaded;
|
||||
} catch (Error e) {
|
||||
Log.e(TAG, e.getMessage());
|
||||
}
|
||||
destLocalFile.delete();
|
||||
}
|
||||
|
||||
|
||||
if (loadFromZip(context, destLocalFile, folder)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
} catch (Throwable e) {
|
||||
e.printStackTrace();
|
||||
Log.e(TAG, e.getMessage(),e);
|
||||
}
|
||||
|
||||
try {
|
||||
// System.loadLibrary(LIB_NAME);
|
||||
nativeLoaded = true;
|
||||
} catch (Error e) {
|
||||
Log.e(TAG, e.getMessage());
|
||||
}
|
||||
|
||||
return nativeLoaded;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,6 +20,6 @@ public interface TorServiceConstants {
|
|||
|
||||
int FILE_WRITE_BUFFER_SIZE = 1024;
|
||||
|
||||
String BINARY_TOR_VERSION = "0.3.3.5-openssl1.0.2o";
|
||||
String BINARY_TOR_VERSION = "0.3.4.8-openssl1.0.2p-1";
|
||||
|
||||
}
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue