Skip to content

Commit

Permalink
up trimex
Browse files Browse the repository at this point in the history
  • Loading branch information
2dust committed Aug 23, 2019
1 parent 150fa91 commit a091616
Show file tree
Hide file tree
Showing 13 changed files with 90 additions and 69 deletions.
11 changes: 6 additions & 5 deletions v2rayN/v2rayN/Forms/MainForm.cs
Expand Up @@ -88,7 +88,8 @@ protected override void WndProc(ref Message m)
{
case WM_QUERYENDSESSION:
Utils.SaveLog("Windows shutdown UnsetProxy");
CloseV2ray();
//CloseV2ray();
ConfigHandler.ToJsonFile(config);
ProxySetting.UnsetProxy();
m.Result = (IntPtr)1;
break;
Expand Down Expand Up @@ -256,7 +257,7 @@ private void DisplayToolStatus()
}
private void ssMain_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
if (!string.IsNullOrEmpty(e.ClickedItem.Text))
if (!Utils.IsNullOrEmpty(e.ClickedItem.Text))
{
Utils.SetClipboardData(e.ClickedItem.Text);
}
Expand Down Expand Up @@ -1283,7 +1284,7 @@ private void bgwScan_ProgressChanged(object sender, System.ComponentModel.Progre
ShowForm();

string result = Convert.ToString(e.UserState);
if (string.IsNullOrEmpty(result))
if (Utils.IsNullOrEmpty(result))
{
UI.Show(UIRes.I18N("NoValidQRcodeFound"));
}
Expand Down Expand Up @@ -1320,8 +1321,8 @@ private void tsbSubUpdate_Click(object sender, EventArgs e)

for (int k = 1; k <= config.subItem.Count; k++)
{
string id = config.subItem[k - 1].id.Trim();
string url = config.subItem[k - 1].url.Trim();
string id = config.subItem[k - 1].id.TrimEx();
string url = config.subItem[k - 1].url.TrimEx();
string hashCode = $"{k}->";
if (config.subItem[k - 1].enabled == false)
{
Expand Down
32 changes: 16 additions & 16 deletions v2rayN/v2rayN/Forms/OptionSettingForm.cs
Expand Up @@ -148,14 +148,14 @@ private int SaveBase()
{
//日志
bool logEnabled = chklogEnabled.Checked;
string loglevel = cmbloglevel.Text.Trim();
string loglevel = cmbloglevel.Text.TrimEx();

//Mux
bool muxEnabled = chkmuxEnabled.Checked;

//本地监听
string localPort = txtlocalPort.Text.Trim();
string protocol = cmbprotocol.Text.Trim();
string localPort = txtlocalPort.Text.TrimEx();
string protocol = cmbprotocol.Text.TrimEx();
bool udpEnabled = chkudpEnabled.Checked;
bool sniffingEnabled = chksniffingEnabled.Checked;
if (Utils.IsNullOrEmpty(localPort) || !Utils.IsNumberic(localPort))
Expand All @@ -174,8 +174,8 @@ private int SaveBase()
config.inbound[0].sniffingEnabled = sniffingEnabled;

//本地监听2
string localPort2 = txtlocalPort2.Text.Trim();
string protocol2 = cmbprotocol2.Text.Trim();
string localPort2 = txtlocalPort2.Text.TrimEx();
string protocol2 = cmbprotocol2.Text.TrimEx();
bool udpEnabled2 = chkudpEnabled2.Checked;
bool sniffingEnabled2 = chksniffingEnabled2.Checked;
if (chkAllowIn2.Checked)
Expand Down Expand Up @@ -215,7 +215,7 @@ private int SaveBase()
config.muxEnabled = muxEnabled;

//remoteDNS
config.remoteDNS = txtremoteDNS.Text.Trim();
config.remoteDNS = txtremoteDNS.Text.TrimEx();

return 0;
}
Expand All @@ -230,9 +230,9 @@ private int SaveRouting()
string domainStrategy = cmbdomainStrategy.Text;
string routingMode = cmbroutingMode.SelectedIndex.ToString();

string useragent = txtUseragent.Text.Trim();
string userdirect = txtUserdirect.Text.Trim();
string userblock = txtUserblock.Text.Trim();
string useragent = txtUseragent.Text.TrimEx();
string userdirect = txtUserdirect.Text.TrimEx();
string userblock = txtUserblock.Text.TrimEx();

config.domainStrategy = domainStrategy;
config.routingMode = routingMode;
Expand All @@ -250,12 +250,12 @@ private int SaveRouting()
/// <returns></returns>
private int SaveKCP()
{
string mtu = txtKcpmtu.Text.Trim();
string tti = txtKcptti.Text.Trim();
string uplinkCapacity = txtKcpuplinkCapacity.Text.Trim();
string downlinkCapacity = txtKcpdownlinkCapacity.Text.Trim();
string readBufferSize = txtKcpreadBufferSize.Text.Trim();
string writeBufferSize = txtKcpwriteBufferSize.Text.Trim();
string mtu = txtKcpmtu.Text.TrimEx();
string tti = txtKcptti.Text.TrimEx();
string uplinkCapacity = txtKcpuplinkCapacity.Text.TrimEx();
string downlinkCapacity = txtKcpdownlinkCapacity.Text.TrimEx();
string readBufferSize = txtKcpreadBufferSize.Text.TrimEx();
string writeBufferSize = txtKcpwriteBufferSize.Text.TrimEx();
bool congestion = chkKcpcongestion.Checked;

if (Utils.IsNullOrEmpty(mtu) || !Utils.IsNumberic(mtu)
Expand Down Expand Up @@ -289,7 +289,7 @@ private int SaveGUI()
Utils.SetAutoRun(chkAutoRun.Checked);

//自定义GFWList
config.urlGFWList = txturlGFWList.Text.Trim();
config.urlGFWList = txturlGFWList.Text.TrimEx();

config.allowLANConn = chkAllowLANConn.Checked;

Expand Down
2 changes: 1 addition & 1 deletion v2rayN/v2rayN/Forms/QRCodeControl.cs
Expand Up @@ -26,7 +26,7 @@ public void showQRCode(int Index, Config config)
if (Index >= 0)
{
string url = ConfigHandler.GetVmessQRCode(config, Index);
if (string.IsNullOrEmpty(url))
if (Utils.IsNullOrEmpty(url))
{
picQRCode.Image = null;
txtUrl.Text = string.Empty;
Expand Down
4 changes: 2 additions & 2 deletions v2rayN/v2rayN/Forms/SubSettingControl.cs
Expand Up @@ -35,8 +35,8 @@ private void EndBindingSub()
{
if (subItem != null)
{
subItem.remarks = txtRemarks.Text.Trim();
subItem.url = txtUrl.Text.Trim();
subItem.remarks = txtRemarks.Text.TrimEx();
subItem.url = txtUrl.Text.TrimEx();
subItem.enabled = chkEnabled.Checked;
}
}
Expand Down
26 changes: 13 additions & 13 deletions v2rayN/v2rayN/Handler/ConfigHandler.cs
Expand Up @@ -152,14 +152,14 @@ public static int AddServer(ref Config config, VmessItem vmessItem, int index)
vmessItem.configVersion = 2;
vmessItem.configType = (int)EConfigType.Vmess;

vmessItem.address = vmessItem.address.Trim();
vmessItem.id = vmessItem.id.Trim();
vmessItem.security = vmessItem.security.Trim();
vmessItem.network = vmessItem.network.Trim();
vmessItem.headerType = vmessItem.headerType.Trim();
vmessItem.requestHost = vmessItem.requestHost.Trim();
vmessItem.path = vmessItem.path.Trim();
vmessItem.streamSecurity = vmessItem.streamSecurity.Trim();
vmessItem.address = vmessItem.address.TrimEx();
vmessItem.id = vmessItem.id.TrimEx();
vmessItem.security = vmessItem.security.TrimEx();
vmessItem.network = vmessItem.network.TrimEx();
vmessItem.headerType = vmessItem.headerType.TrimEx();
vmessItem.requestHost = vmessItem.requestHost.TrimEx();
vmessItem.path = vmessItem.path.TrimEx();
vmessItem.streamSecurity = vmessItem.streamSecurity.TrimEx();

if (index >= 0)
{
Expand Down Expand Up @@ -328,7 +328,7 @@ public static string GetVmessQRCode(Config config, int index)
{
VmessQRCode vmessQRCode = new VmessQRCode();
vmessQRCode.v = vmessItem.configVersion.ToString();
vmessQRCode.ps = vmessItem.remarks.Trim(); //备注也许很长 ;
vmessQRCode.ps = vmessItem.remarks.TrimEx(); //备注也许很长 ;
vmessQRCode.add = vmessItem.address;
vmessQRCode.port = vmessItem.port.ToString();
vmessQRCode.id = vmessItem.id;
Expand Down Expand Up @@ -566,9 +566,9 @@ public static int AddShadowsocksServer(ref Config config, VmessItem vmessItem, i
vmessItem.configVersion = 2;
vmessItem.configType = (int)EConfigType.Shadowsocks;

vmessItem.address = vmessItem.address.Trim();
vmessItem.id = vmessItem.id.Trim();
vmessItem.security = vmessItem.security.Trim();
vmessItem.address = vmessItem.address.TrimEx();
vmessItem.id = vmessItem.id.TrimEx();
vmessItem.security = vmessItem.security.TrimEx();

if (index >= 0)
{
Expand Down Expand Up @@ -607,7 +607,7 @@ public static int AddSocksServer(ref Config config, VmessItem vmessItem, int ind
vmessItem.configVersion = 2;
vmessItem.configType = (int)EConfigType.Socks;

vmessItem.address = vmessItem.address.Trim();
vmessItem.address = vmessItem.address.TrimEx();

if (index >= 0)
{
Expand Down
37 changes: 20 additions & 17 deletions v2rayN/v2rayN/Handler/V2rayConfigHandler.cs
Expand Up @@ -235,7 +235,7 @@ private static int routingUserRule(List<string> userRule, string tag, ref V2rayC

for (int k = 0; k < userRule.Count; k++)
{
string url = userRule[k].Trim();
string url = userRule[k].TrimEx();
if (Utils.IsNullOrEmpty(url))
{
continue;
Expand Down Expand Up @@ -400,8 +400,8 @@ private static int outbound(Config config, ref V2rayConfig v2rayConfig)
serversItem.address = config.address();
serversItem.port = config.port();

if (!string.IsNullOrEmpty(config.security())
&& !string.IsNullOrEmpty(config.id()))
if (!Utils.IsNullOrEmpty(config.security())
&& !Utils.IsNullOrEmpty(config.id()))
{
var socksUsersItem = new SocksUsersItem();
socksUsersItem.user = config.security();
Expand Down Expand Up @@ -1073,7 +1073,7 @@ public static VmessItem ImportFromClipboardConfig(string clipboardData, out stri
try
{
//载入配置文件
string result = clipboardData.Trim();// Utils.GetClipboardData();
string result = clipboardData.TrimEx();// Utils.GetClipboardData();
if (Utils.IsNullOrEmpty(result))
{
msg = UIRes.I18N("FailedReadConfiguration");
Expand Down Expand Up @@ -1104,23 +1104,26 @@ public static VmessItem ImportFromClipboardConfig(string clipboardData, out stri
vmessItem.network = Global.DefaultNetwork;
vmessItem.headerType = Global.None;

// v2ray 鬼才机场主们往往会各种不填,或者null,后面trim的时候会出Exception
Func<String, String> check_null = nullableString => nullableString == null ? "" : nullableString;


vmessItem.configVersion = Utils.ToInt(vmessQRCode.v);
vmessItem.remarks = check_null(vmessQRCode.ps);
vmessItem.address = check_null(vmessQRCode.add);
vmessItem.remarks = Utils.ToString(vmessQRCode.ps);
vmessItem.address = Utils.ToString(vmessQRCode.add);
vmessItem.port = Utils.ToInt(vmessQRCode.port);
vmessItem.id = check_null(vmessQRCode.id);
vmessItem.id = Utils.ToString(vmessQRCode.id);
vmessItem.alterId = Utils.ToInt(vmessQRCode.aid);
// 上面有默认值, 不需要手动赋值空字符串
if(vmessQRCode.net != null)

if (!Utils.IsNullOrEmpty(vmessQRCode.net))
{
vmessItem.network = vmessQRCode.net;
if(vmessQRCode.type != null)
vmessItem.headerType = check_null(vmessQRCode.type);
vmessItem.requestHost = check_null(vmessQRCode.host);
vmessItem.path = check_null(vmessQRCode.host);
vmessItem.streamSecurity = check_null(vmessQRCode.tls);
}
if (!Utils.IsNullOrEmpty(vmessQRCode.type))
{
vmessItem.headerType = vmessQRCode.type;
}

vmessItem.requestHost = Utils.ToString(vmessQRCode.host);
vmessItem.path = Utils.ToString(vmessQRCode.host);
vmessItem.streamSecurity = Utils.ToString(vmessQRCode.tls);
}

ConfigHandler.UpgradeServerVersion(ref vmessItem);
Expand Down
2 changes: 1 addition & 1 deletion v2rayN/v2rayN/HttpProxyHandler/HttpWebServerB.cs
Expand Up @@ -57,7 +57,7 @@ public HttpWebServerB(int port, Func<TcpClient, string> method)
// Returns the data received from the host to the console.
string returndata = Encoding.UTF8.GetString(bytes);
if (!string.IsNullOrEmpty(returndata)
if (!Utils.IsNullOrEmpty(returndata)
&& returndata.IndexOf("/pac/") >= 0
&& netStream.CanWrite)
{
Expand Down
2 changes: 1 addition & 1 deletion v2rayN/v2rayN/HttpProxyHandler/ProxySetting.cs
Expand Up @@ -19,7 +19,7 @@ public static bool SetProxy(string strProxy, string exceptions)
{
InternetPerConnOptionList list = new InternetPerConnOptionList();

int optionCount = string.IsNullOrEmpty(strProxy) ? 1 : (string.IsNullOrEmpty(exceptions) ? 2 : 3);
int optionCount = Utils.IsNullOrEmpty(strProxy) ? 1 : (Utils.IsNullOrEmpty(exceptions) ? 2 : 3);
InternetConnectionOption[] options = new InternetConnectionOption[optionCount];
// USE a proxy server ...
options[0].m_Option = PerConnOption.INTERNET_PER_CONN_FLAGS;
Expand Down
16 changes: 8 additions & 8 deletions v2rayN/v2rayN/Mode/Config.cs
Expand Up @@ -112,7 +112,7 @@ public string address()
{
return string.Empty;
}
return vmess[index].address.Trim();
return vmess[index].address.TrimEx();
}

public int port()
Expand All @@ -130,7 +130,7 @@ public string id()
{
return string.Empty;
}
return vmess[index].id.Trim();
return vmess[index].id.TrimEx();
}

public int alterId()
Expand All @@ -148,7 +148,7 @@ public string security()
{
return string.Empty;
}
return vmess[index].security.Trim();
return vmess[index].security.TrimEx();
}

public string remarks()
Expand All @@ -157,39 +157,39 @@ public string remarks()
{
return string.Empty;
}
return vmess[index].remarks.Trim();
return vmess[index].remarks.TrimEx();
}
public string network()
{
if (index < 0 || Utils.IsNullOrEmpty(vmess[index].network))
{
return Global.DefaultNetwork;
}
return vmess[index].network.Trim();
return vmess[index].network.TrimEx();
}
public string headerType()
{
if (index < 0 || Utils.IsNullOrEmpty(vmess[index].headerType))
{
return Global.None;
}
return vmess[index].headerType.Replace(" ", "").Trim();
return vmess[index].headerType.Replace(" ", "").TrimEx();
}
public string requestHost()
{
if (index < 0 || Utils.IsNullOrEmpty(vmess[index].requestHost))
{
return string.Empty;
}
return vmess[index].requestHost.Replace(" ", "").Trim();
return vmess[index].requestHost.Replace(" ", "").TrimEx();
}
public string path()
{
if (index < 0 || Utils.IsNullOrEmpty(vmess[index].path))
{
return string.Empty;
}
return vmess[index].path.Replace(" ", "").Trim();
return vmess[index].path.Replace(" ", "").TrimEx();
}
public string streamSecurity()
{
Expand Down
2 changes: 1 addition & 1 deletion v2rayN/v2rayN/Mode/VmessQRCode.cs
Expand Up @@ -49,5 +49,5 @@ class VmessQRCode
/// 底层传输安全
/// </summary>
public string tls { get; set; } = string.Empty;
}
}
}
2 changes: 1 addition & 1 deletion v2rayN/v2rayN/Properties/AssemblyInfo.cs
Expand Up @@ -33,4 +33,4 @@
// 方法是按如下所示使用“*”:
//[assembly: AssemblyVersion("1.0.*")]
//[assembly: AssemblyVersion("1.0.0")]
[assembly: AssemblyFileVersion("2.35")]
[assembly: AssemblyFileVersion("2.36")]
5 changes: 5 additions & 0 deletions v2rayN/v2rayN/StringEx.cs
Expand Up @@ -43,5 +43,10 @@ public static IEnumerable<string> NonWhiteSpaceLines(this TextReader reader)
yield return line;
}
}

public static string TrimEx(this string value)
{
return value == null ? string.Empty : value.Trim();
}
}
}

0 comments on commit a091616

Please sign in to comment.