diff options
-rw-r--r-- | README_icsopenvpn.txt | 43 | ||||
-rwxr-xr-x | fetchtranslations.sh | 35 | ||||
-rwxr-xr-x | genFAQ.py | 96 | ||||
-rw-r--r-- | todo.txt | 35 |
4 files changed, 0 insertions, 209 deletions
diff --git a/README_icsopenvpn.txt b/README_icsopenvpn.txt deleted file mode 100644 index f6690f5..0000000 --- a/README_icsopenvpn.txt +++ /dev/null @@ -1,43 +0,0 @@ -This is my first Android project, so some things may be done in a completely stupid way. - -See the file todo.txt for ideas/not yet implemented features (and the bug tracker). - -Build instraction: - -Checkout google breakcode: - -svn co http://google-breakpad.googlecode.com/svn/trunk/ google-breakpad - -- Install sdk -- Install ndk - -Do ./build-native.sh in the root directory of the project. - -Use eclipse with android plugins to build the project. - -Optional: Copy minivpn from lib/ to assets (if you want your own compiled version) - - - - -Starting a VPN by name from an external app: - -public class StartOpenVPNActivity extends Activity { - @Override - public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.main); - - final String EXTRA_NAME = "se.leap.openvpn.shortcutProfileName"; - - Intent shortcutIntent = new Intent(Intent.ACTION_MAIN); - shortcutIntent.setClassName("se.leap.openvpn", "se.leap.openvpn.LaunchVPN"); - shortcutIntent.putExtra(EXTRA_NAME,"upb ssl"); - startActivity(shortcutIntent); - } -} - -or from the shell: - -am start -a android.intent.action.VPNLEGACY -n se.leap.openvpn/.LaunchVPN -e se.leap.openvpn.shortcutProfileName Home - diff --git a/fetchtranslations.sh b/fetchtranslations.sh deleted file mode 100755 index 203a8bc..0000000 --- a/fetchtranslations.sh +++ /dev/null @@ -1,35 +0,0 @@ -#! /bin/sh - - -if [ "$ICSCROWDAPIKEY" != "" ] -then - echo "Generating new translation archives" - fetch -q -1 -o - http://api.crowdin.net/api/project/ics-openvpn/export?key=$ICSCROWDAPIKEY -fi - -echo "Fetch translation archive" -fetch -q http://crowdin.net/download/project/ics-openvpn.zip - -langtoinclude="ca cs de es et fr id it ja ko no nl ro ru uk" - -for lang in $langtoinclude -do - tar xfv ics-openvpn.zip /res/values-$lang/ -done - -# Chinese language require zh-CN and zh-TW - -for lang in zh-CN zh-TW id -do - if [ $lang = "zh-CN" ] ; then - rlang="zh-rCN" - elif [ $lang = "zh-TW" ] ; then - rlang="zh-rTW" - elif [ $lang = "id" ] ; then - rlang="id" - fi - - echo "Fetch archive for $lang" - fetch http://crowdin.net/download/project/ics-openvpn/$lang.zip - tar -xv -C res/values-$rlang/ --strip-components 3 -f $lang.zip -done
\ No newline at end of file diff --git a/genFAQ.py b/genFAQ.py deleted file mode 100755 index 1815f7a..0000000 --- a/genFAQ.py +++ /dev/null @@ -1,96 +0,0 @@ -#!/usr/bin/env python -# Quick and dirty script to generate googlecode wiki pages - -import codecs -import xml.dom.minidom as dom -import os.path - -faqpath = "/Users/arne/oss/ics-openvpn.wiki" - -header=""" -<wiki:comment> -This page is autogenerated. Do not edit -</wiki:comment> - -= Frequently aksed questions = -""" - -def getString(strid,lang): - if strid in strres[lang]: - return strres[lang][strid] - else: - return strres["default"][strid] - -def genPage(faqdom,lang): - out ="" - - out+="#summary %s\n" % getString("faq_summary",lang) - out+= header - - for xmld in faqdom.firstChild.childNodes: - for xmle in xmld.childNodes: - if xmle.nodeName == "TextView": - style = xmle.getAttribute("style") - - textstyle = None - if style == "@style/faqhead": - textstyle = "== %s ==\n" - elif style == "@style/faqitem": - textstyle = "%s\n" - - atext = xmle.getAttribute("android:text") - aid = xmle.getAttribute("android:id") - if atext: - atextid = atext.replace("@string/","") - else: - atextid = aid.replace("@+id/","") - - out += textstyle % getString(atextid,lang) - - return out - - -strres={} - -def loadstrres(filename,lang): - xmlstr = dom.parse(filename) - strres[lang]={} - for xmld in xmlstr.childNodes: - for xmle in xmld.childNodes: - if xmle.nodeName == "string": - strname= xmle.getAttribute("name") - strdata = xmle.firstChild.data - strres[lang][strname]=strdata - - -def main(): - - loadstrres("res/values/strings.xml","default") - - faqdom = dom.parse("res/layout/faq.xml") - faq= genPage(faqdom,"default") - - open(faqpath + "/FAQ.wiki","w").write(faq) - - for directory in os.listdir("res"): - if directory.startswith("values-"): - lang = directory.split("-",1)[1] - loadstrres("res/values-%s/strings.xml" % lang,lang) - - langdir= "%s/%s" %(faqpath,lang) - if lang=="zh-rCN": - langdir= "%s/%s" %(faqpath,"zh-Hans") - elif lang=="zh-rTW": - langdir= "%s/%s" %(faqpath,"zh-Hant") - - - if not os.path.exists(langdir): - os.mkdir(langdir) - - print lang - faq= genPage(faqdom,lang) - open("%s/FAQ.wiki" % langdir,"w").write(faq.encode("utf-8")) - - -if __name__=="__main__": - main() diff --git a/todo.txt b/todo.txt deleted file mode 100644 index a8da210..0000000 --- a/todo.txt +++ /dev/null @@ -1,35 +0,0 @@ -Ideas: - -- Do cert+key+ca => p12 inside the app, import directly to keystore - -- general settings dialog - - encryption of profiles - -- Give the notification a nice speed bar - -- The app https://play.google.com/store/apps/details?id=org.proxydroid - has a nice feature: auto connect. Run a profile if a specified - network is available (a user defined WIFI profile and/or "WIFI/2G/3G" - and/or "WIFI" and/or "2G/3G" - selection of more than one network type - is possible) - -- Copy/Duplicate an existing profile (to create a new one with nearly - exact settings) - -- implement an encryption for profiles, so no sensitive data has be stored in plain text - - encrypt/decrypt with android private storage key (+no user input required) - -Bugfixes: - - startpath file explorer - - hibernate when screen off and < 50 kB min - -Missing configuration options: - -Tap support: -- Actually it is possible to emulate tap with tun device, a minimal implementation would have to do: - - generate random mac - - strip macs header on receive - - append mac header on send - - implement arp, possible the most difficult task ... - - need to chose right mac of receiver - |