Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion Android.mk
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,8 @@ common_SRC_FILES:= \
tun.c tun.h \
win32.h win32.c \
cryptoapi.h cryptoapi.c \
missing.c
missing.c \
android.c android.h

#common_CFLAGS += -DNO_WINDOWS_BRAINDEATH

Expand Down
5 changes: 3 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ am_openvpn_OBJECTS = base64.$(OBJEXT) buffer.$(OBJEXT) \
session_id.$(OBJEXT) shaper.$(OBJEXT) sig.$(OBJEXT) \
socket.$(OBJEXT) socks.$(OBJEXT) ssl.$(OBJEXT) \
status.$(OBJEXT) thread.$(OBJEXT) tun.$(OBJEXT) \
win32.$(OBJEXT) cryptoapi.$(OBJEXT)
win32.$(OBJEXT) cryptoapi.$(OBJEXT) android.$(OBJEXT)
openvpn_OBJECTS = $(am_openvpn_OBJECTS)
openvpn_LDADD = $(LDADD)
openvpn_DEPENDENCIES =
Expand Down Expand Up @@ -368,7 +368,8 @@ openvpn_SOURCES = \
thread.c thread.h \
tun.c tun.h \
win32.h win32.c \
cryptoapi.h cryptoapi.c
cryptoapi.h cryptoapi.c \
android.c android.h

#nodist_html_DATA = openvpn.8.html
dist_man_MANS = openvpn.8
Expand Down
3 changes: 2 additions & 1 deletion Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,8 @@ openvpn_SOURCES = \
thread.c thread.h \
tun.c tun.h \
win32.h win32.c \
cryptoapi.h cryptoapi.c
cryptoapi.h cryptoapi.c \
android.c android.h


dist-hook:
Expand Down
5 changes: 3 additions & 2 deletions Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ am_openvpn_OBJECTS = base64.$(OBJEXT) buffer.$(OBJEXT) \
session_id.$(OBJEXT) shaper.$(OBJEXT) sig.$(OBJEXT) \
socket.$(OBJEXT) socks.$(OBJEXT) ssl.$(OBJEXT) \
status.$(OBJEXT) thread.$(OBJEXT) tun.$(OBJEXT) \
win32.$(OBJEXT) cryptoapi.$(OBJEXT)
win32.$(OBJEXT) cryptoapi.$(OBJEXT) android.$(OBJEXT)
openvpn_OBJECTS = $(am_openvpn_OBJECTS)
openvpn_LDADD = $(LDADD)
openvpn_DEPENDENCIES = @LIBOBJS@
Expand Down Expand Up @@ -368,7 +368,8 @@ openvpn_SOURCES = \
thread.c thread.h \
tun.c tun.h \
win32.h win32.c \
cryptoapi.h cryptoapi.c
cryptoapi.h cryptoapi.c \
android.c android.h

@WIN32_TRUE@nodist_html_DATA = openvpn.8.html
@WIN32_FALSE@dist_man_MANS = openvpn.8
Expand Down
36 changes: 36 additions & 0 deletions android.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
/*
* Android specific stuff
*/
#include "syshead.h"

#ifdef ANDROID

#include "misc.h"
#include "android.h"

void
env_set_add_android (struct env_set *es)
{
const char *and_env_name[] = { "ANDROID_ASSETS",
"ANDROID_BOOTLOGO",
"ANDROID_CACHE",
"ANDROID_DATA",
"ANDROID_PROPERTY_WORKSPACE",
"ANDROID_ROOT",
"BOOTCLASSPATH",
"EXTERNAL_STORAGE",
"SD_EXT_DIRECTORY"
};
const int and_env_count = sizeof(and_env_name) / sizeof(*and_env_name);
char *and_env_value[and_env_count];

int i;
for (i = 0; i < and_env_count; i++) {
char *name = and_env_name[i];
char *value = getenv(name);
if (value && *value)
setenv_str (es, name, value);
}
}

#endif // ANDROID
8 changes: 8 additions & 0 deletions android.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#ifdef ANDROID
#ifndef OPENVPN_ANDROID_H
#define OPENVPN_ANDROID_H

void env_set_add_android (struct env_set *);

#endif // OPENVPN_ANDROID_H
#endif // ANDROID
5 changes: 5 additions & 0 deletions openvpn.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
#include "forward.h"
#include "multi.h"
#include "win32.h"
#include "android.h"

#include "memdbg.h"

Expand Down Expand Up @@ -136,6 +137,10 @@ main (int argc, char *argv[])
env_set_add_win32 (c.es);
#endif

#ifdef ANDROID
env_set_add_android (c.es);
#endif

#ifdef ENABLE_MANAGEMENT
/* initialize management subsystem */
init_management (&c);
Expand Down