working on rc4 cipher

This commit is contained in:
Max Lv
2012-12-31 18:00:25 +08:00
parent 57f6e87fcf
commit bfa0f1cf7e
10 changed files with 93 additions and 37 deletions
@@ -98,6 +98,7 @@ public class Shadowsocks extends PreferenceActivity implements
private EditTextPreference portText;
private EditTextPreference remotePortText;
private EditTextPreference sitekeyText;
private ListPreference encMethodText;
private Preference proxyedApps;
private CheckBoxPreference isBypassAppsCheck;
private CheckBoxPreference isRunningCheck;
@@ -169,6 +170,7 @@ public class Shadowsocks extends PreferenceActivity implements
portText = (EditTextPreference) findPreference("port");
remotePortText = (EditTextPreference) findPreference("remotePort");
sitekeyText = (EditTextPreference) findPreference("sitekey");
encMethodText = (ListPreference) findPreference("encMethod");
proxyedApps = findPreference("proxyedApps");
isBypassAppsCheck = (CheckBoxPreference) findPreference("isBypassApps");
@@ -343,6 +345,9 @@ public class Shadowsocks extends PreferenceActivity implements
if (!settings.getString("sitekey", "").equals(""))
sitekeyText.setSummary(settings.getString("sitekey", ""));
if (!settings.getString("encMethod", "").equals(""))
encMethodText.setSummary(settings.getString("encMethod", ""));
if (!settings.getString("port", "").equals(""))
portText.setSummary(settings.getString("port",
getString(R.string.port_summary)));
@@ -416,6 +421,9 @@ public class Shadowsocks extends PreferenceActivity implements
sitekeyText.setSummary(getString(R.string.sitekey_summary));
else
sitekeyText.setSummary(settings.getString("sitekey", ""));
else if (key.equals("encMethod"))
if (!settings.getString("encMethod", "").equals(""))
encMethodText.setSummary(settings.getString("encMethod", ""));
else if (key.equals("proxy"))
if (settings.getString("proxy", "").equals("")) {
proxyText.setSummary(getString(R.string.proxy_summary));
@@ -164,6 +164,7 @@ public class ShadowsocksService extends Service {
private boolean isGFWList = false;
private boolean isBypassApps = false;
private boolean isDNSProxy = false;
private String encMethod;
private ProxyedApp apps[];
private Method mSetForeground;
private Method mStartForeground;
@@ -205,8 +206,8 @@ public class ShadowsocksService extends Service {
@Override
public void run() {
final String cmd = String.format(BASE +
"shadowsocks -s \"%s\" -p \"%d\" -l \"%d\" -k \"%s\"",
appHost, remotePort, port, sitekey);
"shadowsocks -s \"%s\" -p \"%d\" -l \"%d\" -k \"%s\" -m \"%s\"",
appHost, remotePort, port, sitekey, encMethod);
Node.exec(cmd);
}
}.start();
@@ -238,6 +239,7 @@ public class ShadowsocksService extends Service {
appHost = settings.getString("proxy", "127.0.0.1");
sitekey = settings.getString("sitekey", "default");
encMethod = settings.getString("encMethod", "table");
try {
remotePort = Integer.valueOf(settings.getString("remotePort", "1984"));
} catch (NumberFormatException ex) {