Browse Source

Only integer is allowed for timeout

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
tags/3.3.3
Syrone Wong 8 years ago
parent
commit
af139d7587
4 changed files with 58 additions and 30 deletions
  1. +1
    -0
      shadowsocks-csharp/Data/cn.txt
  2. +1
    -0
      shadowsocks-csharp/Data/zh_tw.txt
  3. +25
    -13
      shadowsocks-csharp/View/ConfigForm.cs
  4. +31
    -17
      shadowsocks-csharp/View/ProxyForm.cs

+ 1
- 0
shadowsocks-csharp/Data/cn.txt View File

@@ -104,6 +104,7 @@ Reg All=注册全部热键
Shadowsocks Error: {0}=Shadowsocks 错误: {0}
Port already in use=端口已被占用
Illegal port number format=非法端口格式
Illegal timeout format=非法超时格式
Please add at least one server=请添加至少一个服务器
Server IP can not be blank=服务器 IP 不能为空
Password can not be blank=密码不能为空


+ 1
- 0
shadowsocks-csharp/Data/zh_tw.txt View File

@@ -104,6 +104,7 @@ Reg All=註冊全部捷徑鍵
Shadowsocks Error: {0}=Shadowsocks 錯誤: {0}
Port already in use=連接埠號碼已被占用
Illegal port number format=非法連接埠號碼格式
Illegal timeout format=非法超時格式
Please add at least one server=請新增至少一個伺服器
Server IP can not be blank=伺服器 IP 不能為空
Password can not be blank=密碼不能為空


+ 25
- 13
shadowsocks-csharp/View/ConfigForm.cs View File

@@ -79,16 +79,32 @@ namespace Shadowsocks.View
{
return true;
}
Server server = new Server
Server server = new Server();
server.server = IPTextBox.Text.Trim();
try
{
server = IPTextBox.Text.Trim(),
server_port = int.Parse(ServerPortTextBox.Text),
password = PasswordTextBox.Text,
method = EncryptionSelect.Text,
remarks = RemarksTextBox.Text,
timeout = int.Parse(TimeoutTextBox.Text),
auth = OneTimeAuth.Checked
};
server.server_port = int.Parse(ServerPortTextBox.Text);
}
catch (FormatException)
{
MessageBox.Show(I18N.GetString("Illegal port number format"));
ServerPortTextBox.Clear();
return false;
}
server.password = PasswordTextBox.Text;
server.method = EncryptionSelect.Text;
server.remarks = RemarksTextBox.Text;
try
{
server.timeout = int.Parse(TimeoutTextBox.Text);
}
catch (FormatException)
{
MessageBox.Show(I18N.GetString("Illegal timeout format"));
TimeoutTextBox.Clear();
return false;
}
server.auth = OneTimeAuth.Checked;
int localPort = int.Parse(ProxyPortTextBox.Text);
Configuration.CheckServer(server);
Configuration.CheckLocalPort(localPort);
@@ -97,10 +113,6 @@ namespace Shadowsocks.View
return true;
}
catch (FormatException)
{
MessageBox.Show(I18N.GetString("Illegal port number format"));
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);


+ 31
- 17
shadowsocks-csharp/View/ProxyForm.cs View File

@@ -58,30 +58,48 @@ namespace Shadowsocks.View
private void OKButton_Click(object sender, EventArgs e)
{
var type = ProxyTypeComboBox.SelectedIndex;
var proxy = ProxyServerTextBox.Text;
var port = 0;
var timeout = 3;
if (UseProxyCheckBox.Checked)
{
try
{
var type = ProxyTypeComboBox.SelectedIndex;
var proxy = ProxyServerTextBox.Text;
var port = int.Parse(ProxyPortTextBox.Text);
var timeout = int.Parse(ProxyTimeoutTextBox.Text);
Configuration.CheckServer(proxy);
Configuration.CheckPort(port);
Configuration.CheckTimeout(timeout, ProxyConfig.MaxProxyTimeoutSec);
controller.EnableProxy(type, proxy, port);
port = int.Parse(ProxyPortTextBox.Text);
}
catch (FormatException)
{
MessageBox.Show(I18N.GetString("Illegal port number format"));
ProxyPortTextBox.Clear();
return;
}
try
{
timeout = int.Parse(ProxyTimeoutTextBox.Text);
}
catch (FormatException)
{
MessageBox.Show(I18N.GetString("Illegal timeout format"));
ProxyTimeoutTextBox.Clear();
return;
}
try
{
Configuration.CheckServer(proxy);
Configuration.CheckPort(port);
Configuration.CheckTimeout(timeout, ProxyConfig.MaxProxyTimeoutSec);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
return;
}
controller.EnableProxy(type, proxy, port);
}
else
{
@@ -89,14 +107,10 @@ namespace Shadowsocks.View
}
_modifiedConfiguration.useProxy = UseProxyCheckBox.Checked;
_modifiedConfiguration.proxyType = ProxyTypeComboBox.SelectedIndex;
_modifiedConfiguration.proxyServer = ProxyServerTextBox.Text;
var tmpProxyPort = 0;
int.TryParse(ProxyPortTextBox.Text, out tmpProxyPort);
_modifiedConfiguration.proxyPort = tmpProxyPort;
var tmpProxyTimeout = 0;
int.TryParse(ProxyTimeoutTextBox.Text, out tmpProxyTimeout);
_modifiedConfiguration.proxyTimeout = tmpProxyTimeout;
_modifiedConfiguration.proxyType = type;
_modifiedConfiguration.proxyServer = proxy;
_modifiedConfiguration.proxyPort = port;
_modifiedConfiguration.proxyTimeout = timeout;
controller.SaveProxyConfig(_modifiedConfiguration);
this.Close();


Loading…
Cancel
Save