mirror of https://github.com/2dust/v2rayN
add network data check
parent
ca883c164d
commit
d27566686c
|
@ -31,6 +31,7 @@
|
||||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ServerTransportControl));
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ServerTransportControl));
|
||||||
this.gbTransport = new System.Windows.Forms.GroupBox();
|
this.gbTransport = new System.Windows.Forms.GroupBox();
|
||||||
this.panTlsMore = new System.Windows.Forms.Panel();
|
this.panTlsMore = new System.Windows.Forms.Panel();
|
||||||
|
this.clbAlpn = new System.Windows.Forms.CheckedListBox();
|
||||||
this.label1 = new System.Windows.Forms.Label();
|
this.label1 = new System.Windows.Forms.Label();
|
||||||
this.txtSNI = new System.Windows.Forms.TextBox();
|
this.txtSNI = new System.Windows.Forms.TextBox();
|
||||||
this.labSNI = new System.Windows.Forms.Label();
|
this.labSNI = new System.Windows.Forms.Label();
|
||||||
|
@ -50,7 +51,6 @@
|
||||||
this.labHeaderType = new System.Windows.Forms.Label();
|
this.labHeaderType = new System.Windows.Forms.Label();
|
||||||
this.labRequestHost = new System.Windows.Forms.Label();
|
this.labRequestHost = new System.Windows.Forms.Label();
|
||||||
this.cmbHeaderType = new System.Windows.Forms.ComboBox();
|
this.cmbHeaderType = new System.Windows.Forms.ComboBox();
|
||||||
this.clbAlpn = new System.Windows.Forms.CheckedListBox();
|
|
||||||
this.gbTransport.SuspendLayout();
|
this.gbTransport.SuspendLayout();
|
||||||
this.panTlsMore.SuspendLayout();
|
this.panTlsMore.SuspendLayout();
|
||||||
this.SuspendLayout();
|
this.SuspendLayout();
|
||||||
|
@ -87,6 +87,17 @@
|
||||||
resources.ApplyResources(this.panTlsMore, "panTlsMore");
|
resources.ApplyResources(this.panTlsMore, "panTlsMore");
|
||||||
this.panTlsMore.Name = "panTlsMore";
|
this.panTlsMore.Name = "panTlsMore";
|
||||||
//
|
//
|
||||||
|
// clbAlpn
|
||||||
|
//
|
||||||
|
this.clbAlpn.CheckOnClick = true;
|
||||||
|
resources.ApplyResources(this.clbAlpn, "clbAlpn");
|
||||||
|
this.clbAlpn.FormattingEnabled = true;
|
||||||
|
this.clbAlpn.Items.AddRange(new object[] {
|
||||||
|
resources.GetString("clbAlpn.Items"),
|
||||||
|
resources.GetString("clbAlpn.Items1")});
|
||||||
|
this.clbAlpn.MultiColumn = true;
|
||||||
|
this.clbAlpn.Name = "clbAlpn";
|
||||||
|
//
|
||||||
// label1
|
// label1
|
||||||
//
|
//
|
||||||
resources.ApplyResources(this.label1, "label1");
|
resources.ApplyResources(this.label1, "label1");
|
||||||
|
@ -132,13 +143,6 @@
|
||||||
//
|
//
|
||||||
this.cmbNetwork.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
this.cmbNetwork.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||||
this.cmbNetwork.FormattingEnabled = true;
|
this.cmbNetwork.FormattingEnabled = true;
|
||||||
this.cmbNetwork.Items.AddRange(new object[] {
|
|
||||||
resources.GetString("cmbNetwork.Items"),
|
|
||||||
resources.GetString("cmbNetwork.Items1"),
|
|
||||||
resources.GetString("cmbNetwork.Items2"),
|
|
||||||
resources.GetString("cmbNetwork.Items3"),
|
|
||||||
resources.GetString("cmbNetwork.Items4"),
|
|
||||||
resources.GetString("cmbNetwork.Items5")});
|
|
||||||
resources.ApplyResources(this.cmbNetwork, "cmbNetwork");
|
resources.ApplyResources(this.cmbNetwork, "cmbNetwork");
|
||||||
this.cmbNetwork.Name = "cmbNetwork";
|
this.cmbNetwork.Name = "cmbNetwork";
|
||||||
this.cmbNetwork.SelectedIndexChanged += new System.EventHandler(this.cmbNetwork_SelectedIndexChanged);
|
this.cmbNetwork.SelectedIndexChanged += new System.EventHandler(this.cmbNetwork_SelectedIndexChanged);
|
||||||
|
@ -200,28 +204,9 @@
|
||||||
//
|
//
|
||||||
this.cmbHeaderType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
this.cmbHeaderType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||||
this.cmbHeaderType.FormattingEnabled = true;
|
this.cmbHeaderType.FormattingEnabled = true;
|
||||||
this.cmbHeaderType.Items.AddRange(new object[] {
|
|
||||||
resources.GetString("cmbHeaderType.Items"),
|
|
||||||
resources.GetString("cmbHeaderType.Items1"),
|
|
||||||
resources.GetString("cmbHeaderType.Items2"),
|
|
||||||
resources.GetString("cmbHeaderType.Items3"),
|
|
||||||
resources.GetString("cmbHeaderType.Items4"),
|
|
||||||
resources.GetString("cmbHeaderType.Items5"),
|
|
||||||
resources.GetString("cmbHeaderType.Items6")});
|
|
||||||
resources.ApplyResources(this.cmbHeaderType, "cmbHeaderType");
|
resources.ApplyResources(this.cmbHeaderType, "cmbHeaderType");
|
||||||
this.cmbHeaderType.Name = "cmbHeaderType";
|
this.cmbHeaderType.Name = "cmbHeaderType";
|
||||||
//
|
//
|
||||||
// clbAlpn
|
|
||||||
//
|
|
||||||
this.clbAlpn.CheckOnClick = true;
|
|
||||||
resources.ApplyResources(this.clbAlpn, "clbAlpn");
|
|
||||||
this.clbAlpn.FormattingEnabled = true;
|
|
||||||
this.clbAlpn.Items.AddRange(new object[] {
|
|
||||||
resources.GetString("clbAlpn.Items"),
|
|
||||||
resources.GetString("clbAlpn.Items1")});
|
|
||||||
this.clbAlpn.MultiColumn = true;
|
|
||||||
this.clbAlpn.Name = "clbAlpn";
|
|
||||||
//
|
|
||||||
// ServerTransportControl
|
// ServerTransportControl
|
||||||
//
|
//
|
||||||
resources.ApplyResources(this, "$this");
|
resources.ApplyResources(this, "$this");
|
||||||
|
|
|
@ -22,6 +22,8 @@ namespace v2rayN.Forms
|
||||||
{
|
{
|
||||||
vmessItem = item;
|
vmessItem = item;
|
||||||
|
|
||||||
|
cmbNetwork.Items.AddRange(Global.networks.ToArray());
|
||||||
|
|
||||||
cmbStreamSecurity.Items.Clear();
|
cmbStreamSecurity.Items.Clear();
|
||||||
cmbStreamSecurity.Items.Add(string.Empty);
|
cmbStreamSecurity.Items.Add(string.Empty);
|
||||||
cmbStreamSecurity.Items.Add(Global.StreamSecurity);
|
cmbStreamSecurity.Items.Add(Global.StreamSecurity);
|
||||||
|
@ -126,11 +128,7 @@ namespace v2rayN.Forms
|
||||||
else if (network.Equals("kcp") || network.Equals("quic"))
|
else if (network.Equals("kcp") || network.Equals("quic"))
|
||||||
{
|
{
|
||||||
cmbHeaderType.Items.Add(Global.None);
|
cmbHeaderType.Items.Add(Global.None);
|
||||||
cmbHeaderType.Items.Add("srtp");
|
cmbHeaderType.Items.AddRange(Global.kcpHeaderTypes.ToArray());
|
||||||
cmbHeaderType.Items.Add("utp");
|
|
||||||
cmbHeaderType.Items.Add("wechat-video");
|
|
||||||
cmbHeaderType.Items.Add("dtls");
|
|
||||||
cmbHeaderType.Items.Add("wireguard");
|
|
||||||
}
|
}
|
||||||
else if (network.Equals("grpc"))
|
else if (network.Equals("grpc"))
|
||||||
{
|
{
|
||||||
|
|
|
@ -366,24 +366,6 @@
|
||||||
<data name=">>txtPath.ZOrder" xml:space="preserve">
|
<data name=">>txtPath.ZOrder" xml:space="preserve">
|
||||||
<value>2</value>
|
<value>2</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="cmbNetwork.Items" xml:space="preserve">
|
|
||||||
<value>tcp</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbNetwork.Items1" xml:space="preserve">
|
|
||||||
<value>kcp</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbNetwork.Items2" xml:space="preserve">
|
|
||||||
<value>ws</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbNetwork.Items3" xml:space="preserve">
|
|
||||||
<value>h2</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbNetwork.Items4" xml:space="preserve">
|
|
||||||
<value>quic</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbNetwork.Items5" xml:space="preserve">
|
|
||||||
<value>grpc</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbNetwork.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="cmbNetwork.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>192, 28</value>
|
<value>192, 28</value>
|
||||||
</data>
|
</data>
|
||||||
|
@ -690,27 +672,6 @@
|
||||||
<data name=">>labRequestHost.ZOrder" xml:space="preserve">
|
<data name=">>labRequestHost.ZOrder" xml:space="preserve">
|
||||||
<value>13</value>
|
<value>13</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="cmbHeaderType.Items" xml:space="preserve">
|
|
||||||
<value>none</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbHeaderType.Items1" xml:space="preserve">
|
|
||||||
<value>http</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbHeaderType.Items2" xml:space="preserve">
|
|
||||||
<value>srtp</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbHeaderType.Items3" xml:space="preserve">
|
|
||||||
<value>utp</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbHeaderType.Items4" xml:space="preserve">
|
|
||||||
<value>wechat-video</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbHeaderType.Items5" xml:space="preserve">
|
|
||||||
<value>dtls</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbHeaderType.Items6" xml:space="preserve">
|
|
||||||
<value>wireguard</value>
|
|
||||||
</data>
|
|
||||||
<data name="cmbHeaderType.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="cmbHeaderType.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>127, 60</value>
|
<value>127, 60</value>
|
||||||
</data>
|
</data>
|
||||||
|
|
|
@ -199,6 +199,8 @@ namespace v2rayN
|
||||||
public static readonly List<string> vmessSecuritys = new List<string> { "aes-128-gcm", "chacha20-poly1305", "auto", "none", "zero" };
|
public static readonly List<string> vmessSecuritys = new List<string> { "aes-128-gcm", "chacha20-poly1305", "auto", "none", "zero" };
|
||||||
public static readonly List<string> ssSecuritys = new List<string> { "aes-256-gcm", "aes-128-gcm", "chacha20-poly1305", "chacha20-ietf-poly1305", "none", "plain" };
|
public static readonly List<string> ssSecuritys = new List<string> { "aes-256-gcm", "aes-128-gcm", "chacha20-poly1305", "chacha20-ietf-poly1305", "none", "plain" };
|
||||||
public static readonly List<string> xtlsFlows = new List<string> { "", "xtls-rprx-origin", "xtls-rprx-origin-udp443", "xtls-rprx-direct", "xtls-rprx-direct-udp443" };
|
public static readonly List<string> xtlsFlows = new List<string> { "", "xtls-rprx-origin", "xtls-rprx-origin-udp443", "xtls-rprx-direct", "xtls-rprx-direct-udp443" };
|
||||||
|
public static readonly List<string> networks = new List<string> { "tcp", "kcp", "ws", "h2", "quic", "grpc" };
|
||||||
|
public static readonly List<string> kcpHeaderTypes = new List<string> { "srtp", "utp", "wechat-video", "dtls", "wireguard" };
|
||||||
|
|
||||||
public const string GrpcgunMode = "gun";
|
public const string GrpcgunMode = "gun";
|
||||||
public const string GrpcmultiMode = "multi";
|
public const string GrpcmultiMode = "multi";
|
||||||
|
|
|
@ -996,6 +996,10 @@ namespace v2rayN.Handler
|
||||||
{
|
{
|
||||||
vmessItem.allowInsecure = config.defAllowInsecure.ToString();
|
vmessItem.allowInsecure = config.defAllowInsecure.ToString();
|
||||||
}
|
}
|
||||||
|
if (!Utils.IsNullOrEmpty(vmessItem.network) && !Global.networks.Contains(vmessItem.network))
|
||||||
|
{
|
||||||
|
vmessItem.network = Global.DefaultNetwork;
|
||||||
|
}
|
||||||
|
|
||||||
config.vmess.Add(vmessItem);
|
config.vmess.Add(vmessItem);
|
||||||
if (config.vmess.Count == 1)
|
if (config.vmess.Count == 1)
|
||||||
|
|
|
@ -246,7 +246,7 @@ namespace v2rayN.Mode
|
||||||
}
|
}
|
||||||
public string network()
|
public string network()
|
||||||
{
|
{
|
||||||
if (index < 0 || Utils.IsNullOrEmpty(vmess[index].network))
|
if (index < 0 || Utils.IsNullOrEmpty(vmess[index].network) || !Global.networks.Contains(vmess[index].network))
|
||||||
{
|
{
|
||||||
return Global.DefaultNetwork;
|
return Global.DefaultNetwork;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue