diff --git a/v2rayN/v2rayN/Forms/AddServer5Form.Designer.cs b/v2rayN/v2rayN/Forms/AddServer5Form.Designer.cs
index 423b7386..e6558407 100644
--- a/v2rayN/v2rayN/Forms/AddServer5Form.Designer.cs
+++ b/v2rayN/v2rayN/Forms/AddServer5Form.Designer.cs
@@ -39,6 +39,8 @@
this.label24 = new System.Windows.Forms.Label();
this.label23 = new System.Windows.Forms.Label();
this.panTlsMore = new System.Windows.Forms.Panel();
+ this.txtSNI = new System.Windows.Forms.TextBox();
+ this.label22 = new System.Windows.Forms.Label();
this.label21 = new System.Windows.Forms.Label();
this.cmbAllowInsecure = new System.Windows.Forms.ComboBox();
this.label9 = new System.Windows.Forms.Label();
@@ -87,14 +89,15 @@
//
// btnClose
//
- this.btnClose.DialogResult = System.Windows.Forms.DialogResult.Cancel;
resources.ApplyResources(this.btnClose, "btnClose");
+ this.btnClose.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btnClose.Name = "btnClose";
this.btnClose.UseVisualStyleBackColor = true;
this.btnClose.Click += new System.EventHandler(this.btnClose_Click);
//
// groupBox1
//
+ resources.ApplyResources(this.groupBox1, "groupBox1");
this.groupBox1.Controls.Add(this.cmbFlow);
this.groupBox1.Controls.Add(this.label4);
this.groupBox1.Controls.Add(this.btnGUID);
@@ -111,12 +114,12 @@
this.groupBox1.Controls.Add(this.label2);
this.groupBox1.Controls.Add(this.txtAddress);
this.groupBox1.Controls.Add(this.label1);
- resources.ApplyResources(this.groupBox1, "groupBox1");
this.groupBox1.Name = "groupBox1";
this.groupBox1.TabStop = false;
//
// cmbFlow
//
+ resources.ApplyResources(this.cmbFlow, "cmbFlow");
this.cmbFlow.FormattingEnabled = true;
this.cmbFlow.Items.AddRange(new object[] {
resources.GetString("cmbFlow.Items"),
@@ -124,7 +127,6 @@
resources.GetString("cmbFlow.Items2"),
resources.GetString("cmbFlow.Items3"),
resources.GetString("cmbFlow.Items4")});
- resources.ApplyResources(this.cmbFlow, "cmbFlow");
this.cmbFlow.Name = "cmbFlow";
//
// label4
@@ -146,6 +148,7 @@
//
// groupBox2
//
+ resources.ApplyResources(this.groupBox2, "groupBox2");
this.groupBox2.Controls.Add(this.label24);
this.groupBox2.Controls.Add(this.label23);
this.groupBox2.Controls.Add(this.panTlsMore);
@@ -166,7 +169,6 @@
this.groupBox2.Controls.Add(this.label11);
this.groupBox2.Controls.Add(this.label10);
this.groupBox2.Controls.Add(this.cmbHeaderType);
- resources.ApplyResources(this.groupBox2, "groupBox2");
this.groupBox2.Name = "groupBox2";
this.groupBox2.TabStop = false;
//
@@ -182,11 +184,23 @@
//
// panTlsMore
//
+ resources.ApplyResources(this.panTlsMore, "panTlsMore");
+ this.panTlsMore.Controls.Add(this.txtSNI);
+ this.panTlsMore.Controls.Add(this.label22);
this.panTlsMore.Controls.Add(this.label21);
this.panTlsMore.Controls.Add(this.cmbAllowInsecure);
- resources.ApplyResources(this.panTlsMore, "panTlsMore");
this.panTlsMore.Name = "panTlsMore";
//
+ // txtSNI
+ //
+ resources.ApplyResources(this.txtSNI, "txtSNI");
+ this.txtSNI.Name = "txtSNI";
+ //
+ // label22
+ //
+ resources.ApplyResources(this.label22, "label22");
+ this.label22.Name = "label22";
+ //
// label21
//
resources.ApplyResources(this.label21, "label21");
@@ -194,13 +208,13 @@
//
// cmbAllowInsecure
//
+ resources.ApplyResources(this.cmbAllowInsecure, "cmbAllowInsecure");
this.cmbAllowInsecure.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbAllowInsecure.FormattingEnabled = true;
this.cmbAllowInsecure.Items.AddRange(new object[] {
resources.GetString("cmbAllowInsecure.Items"),
resources.GetString("cmbAllowInsecure.Items1"),
resources.GetString("cmbAllowInsecure.Items2")});
- resources.ApplyResources(this.cmbAllowInsecure, "cmbAllowInsecure");
this.cmbAllowInsecure.Name = "cmbAllowInsecure";
//
// label9
@@ -220,6 +234,7 @@
//
// cmbNetwork
//
+ resources.ApplyResources(this.cmbNetwork, "cmbNetwork");
this.cmbNetwork.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbNetwork.FormattingEnabled = true;
this.cmbNetwork.Items.AddRange(new object[] {
@@ -228,7 +243,6 @@
resources.GetString("cmbNetwork.Items2"),
resources.GetString("cmbNetwork.Items3"),
resources.GetString("cmbNetwork.Items4")});
- resources.ApplyResources(this.cmbNetwork, "cmbNetwork");
this.cmbNetwork.Name = "cmbNetwork";
this.cmbNetwork.SelectedIndexChanged += new System.EventHandler(this.cmbNetwork_SelectedIndexChanged);
//
@@ -269,13 +283,13 @@
//
// cmbStreamSecurity
//
+ resources.ApplyResources(this.cmbStreamSecurity, "cmbStreamSecurity");
this.cmbStreamSecurity.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbStreamSecurity.FormattingEnabled = true;
this.cmbStreamSecurity.Items.AddRange(new object[] {
resources.GetString("cmbStreamSecurity.Items"),
resources.GetString("cmbStreamSecurity.Items1"),
resources.GetString("cmbStreamSecurity.Items2")});
- resources.ApplyResources(this.cmbStreamSecurity, "cmbStreamSecurity");
this.cmbStreamSecurity.Name = "cmbStreamSecurity";
this.cmbStreamSecurity.SelectedIndexChanged += new System.EventHandler(this.cmbStreamSecurity_SelectedIndexChanged);
//
@@ -301,6 +315,7 @@
//
// cmbHeaderType
//
+ resources.ApplyResources(this.cmbHeaderType, "cmbHeaderType");
this.cmbHeaderType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbHeaderType.FormattingEnabled = true;
this.cmbHeaderType.Items.AddRange(new object[] {
@@ -311,7 +326,6 @@
resources.GetString("cmbHeaderType.Items4"),
resources.GetString("cmbHeaderType.Items5"),
resources.GetString("cmbHeaderType.Items6")});
- resources.ApplyResources(this.cmbHeaderType, "cmbHeaderType");
this.cmbHeaderType.Name = "cmbHeaderType";
//
// label8
@@ -321,11 +335,11 @@
//
// cmbSecurity
//
+ resources.ApplyResources(this.cmbSecurity, "cmbSecurity");
this.cmbSecurity.DropDownStyle = System.Windows.Forms.ComboBoxStyle.Simple;
this.cmbSecurity.FormattingEnabled = true;
this.cmbSecurity.Items.AddRange(new object[] {
resources.GetString("cmbSecurity.Items")});
- resources.ApplyResources(this.cmbSecurity, "cmbSecurity");
this.cmbSecurity.Name = "cmbSecurity";
//
// txtRemarks
@@ -375,9 +389,9 @@
//
// panel2
//
+ resources.ApplyResources(this.panel2, "panel2");
this.panel2.Controls.Add(this.btnClose);
this.panel2.Controls.Add(this.btnOK);
- resources.ApplyResources(this.panel2, "panel2");
this.panel2.Name = "panel2";
//
// btnOK
@@ -394,42 +408,42 @@
//
// menuServer
//
+ resources.ApplyResources(this.menuServer, "menuServer");
this.menuServer.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.MenuItem1});
- resources.ApplyResources(this.menuServer, "menuServer");
this.menuServer.Name = "menuServer";
//
// MenuItem1
//
+ resources.ApplyResources(this.MenuItem1, "MenuItem1");
this.MenuItem1.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.MenuItemImportClient,
this.MenuItemImportServer,
this.toolStripSeparator1,
this.MenuItemImportClipboard});
this.MenuItem1.Name = "MenuItem1";
- resources.ApplyResources(this.MenuItem1, "MenuItem1");
//
// MenuItemImportClient
//
- this.MenuItemImportClient.Name = "MenuItemImportClient";
resources.ApplyResources(this.MenuItemImportClient, "MenuItemImportClient");
+ this.MenuItemImportClient.Name = "MenuItemImportClient";
this.MenuItemImportClient.Click += new System.EventHandler(this.MenuItemImportClient_Click);
//
// MenuItemImportServer
//
- this.MenuItemImportServer.Name = "MenuItemImportServer";
resources.ApplyResources(this.MenuItemImportServer, "MenuItemImportServer");
+ this.MenuItemImportServer.Name = "MenuItemImportServer";
this.MenuItemImportServer.Click += new System.EventHandler(this.MenuItemImportServer_Click);
//
// toolStripSeparator1
//
- this.toolStripSeparator1.Name = "toolStripSeparator1";
resources.ApplyResources(this.toolStripSeparator1, "toolStripSeparator1");
+ this.toolStripSeparator1.Name = "toolStripSeparator1";
//
// MenuItemImportClipboard
//
- this.MenuItemImportClipboard.Name = "MenuItemImportClipboard";
resources.ApplyResources(this.MenuItemImportClipboard, "MenuItemImportClipboard");
+ this.MenuItemImportClipboard.Name = "MenuItemImportClipboard";
this.MenuItemImportClipboard.Click += new System.EventHandler(this.MenuItemImportClipboard_Click);
//
// AddServer5Form
@@ -509,5 +523,7 @@
private System.Windows.Forms.Label label23;
private System.Windows.Forms.ComboBox cmbFlow;
private System.Windows.Forms.Label label4;
+ private System.Windows.Forms.TextBox txtSNI;
+ private System.Windows.Forms.Label label22;
}
}
\ No newline at end of file
diff --git a/v2rayN/v2rayN/Forms/AddServer5Form.cs b/v2rayN/v2rayN/Forms/AddServer5Form.cs
index 32c7e48c..1a389b3d 100644
--- a/v2rayN/v2rayN/Forms/AddServer5Form.cs
+++ b/v2rayN/v2rayN/Forms/AddServer5Form.cs
@@ -6,7 +6,7 @@ using v2rayN.Mode;
namespace v2rayN.Forms
{
public partial class AddServer5Form : BaseServerForm
- {
+ {
public AddServer5Form()
{
@@ -45,6 +45,7 @@ namespace v2rayN.Forms
txtPath.Text = vmessItem.path;
cmbStreamSecurity.Text = vmessItem.streamSecurity;
cmbAllowInsecure.Text = vmessItem.allowInsecure;
+ txtSNI.Text = vmessItem.sni;
}
@@ -66,6 +67,7 @@ namespace v2rayN.Forms
cmbStreamSecurity.Text = "";
cmbAllowInsecure.Text = "";
txtPath.Text = "";
+ txtSNI.Text = "";
}
@@ -122,6 +124,7 @@ namespace v2rayN.Forms
string path = txtPath.Text;
string streamSecurity = cmbStreamSecurity.Text;
string allowInsecure = cmbAllowInsecure.Text;
+ string sni = txtSNI.Text;
if (Utils.IsNullOrEmpty(address))
{
@@ -153,6 +156,7 @@ namespace v2rayN.Forms
vmessItem.path = path.Replace(" ", "");
vmessItem.streamSecurity = streamSecurity;
vmessItem.allowInsecure = allowInsecure;
+ vmessItem.sni = sni;
if (ConfigHandler.AddVlessServer(ref config, vmessItem, EditIndex) == 0)
{
diff --git a/v2rayN/v2rayN/Forms/AddServer5Form.resx b/v2rayN/v2rayN/Forms/AddServer5Form.resx
index e4c57a41..73b868d3 100644
--- a/v2rayN/v2rayN/Forms/AddServer5Form.resx
+++ b/v2rayN/v2rayN/Forms/AddServer5Form.resx
@@ -117,1270 +117,1324 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 6
+
-
- 396, 17
-
-
- 75, 23
-
-
-
- 4
-
-
- &Cancel
-
-
- btnClose
-
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- panel2
-
-
- 0
-
-
-
-
-
- xtls-rprx-origin
-
-
- xtls-rprx-origin-udp443
-
-
- xtls-rprx-direct
-
-
- xtls-rprx-direct-udp443
-
-
- 127, 123
-
-
- 211, 20
-
-
- 24
-
-
- cmbFlow
-
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 0
-
-
- True
-
-
-
- NoControl
-
-
- 12, 127
-
-
- 29, 12
-
-
- 25
-
-
- Flow
-
-
- label4
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
+
+ 113, 12
1
-
- 411, 91
-
-
- 75, 23
-
-
- 23
-
-
- &Generate
-
-
- btnGUID
-
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 2
-
-
- True
-
353, 189
-
- 113, 12
-
-
- 22
-
-
- * Fill in manually
-
-
- label13
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 3
-
-
- True
-
-
- NoControl
-
-
- 529, 207
-
-
- 119, 12
-
-
- 35
-
-
- 3)QUIC key/Kcp seed
-
-
- label24
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 0
-
-
- True
-
-
- NoControl
-
-
- 465, 140
-
-
- 89, 12
-
-
- 34
-
-
- 4)QUIC securty
-
-
- label23
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 1
-
-
- True
-
-
- NoControl
-
-
- 12, 11
-
-
- 83, 12
-
-
- 31
-
-
- allowInsecure
-
-
- label21
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- panTlsMore
-
-
- 0
-
-
-
-
-
- true
-
-
- false
-
-
- 107, 7
-
-
- 91, 20
-
-
- 30
-
-
- cmbAllowInsecure
-
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- panTlsMore
-
-
- 1
-
-
- 284, 232
-
-
- 338, 35
-
-
- 33
-
-
- panTlsMore
-
-
- System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 2
-
-
- True
-
-
- 353, 32
-
-
- 113, 12
-
-
- 15
-
-
- *Default value tcp
-
-
- label9
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 3
-
-
- True
-
-
- 464, 124
-
-
- 203, 12
-
-
- 29
-
-
- 3)h2 host Separated by commas (,)
-
-
- label20
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 4
-
-
- 127, 169
-
-
- True
-
-
- 396, 54
-
-
- 28
-
-
- txtPath
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 5
-
-
- tcp
-
-
- kcp
-
-
- ws
-
-
- h2
-
-
- quic
-
-
- 192, 28
-
-
- 143, 20
-
-
- 12
-
-
- cmbNetwork
-
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 6
-
-
- True
-
-
- 9, 32
-
-
- 167, 12
-
-
- 13
-
-
- Transport protocol(network)
-
-
- label7
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 7
-
-
- True
-
-
- 9, 169
-
-
- 29, 12
-
-
- 27
-
-
- Path
-
-
- label19
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 8
-
-
- True
-
-
- 529, 189
-
-
- 59, 12
-
-
- 26
-
-
- 2)h2 path
-
-
- label18
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 9
-
-
- True
-
-
- 464, 109
-
-
- 59, 12
-
-
- 25
-
-
- 2)ws host
-
-
- label17
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 10
-
-
- True
-
-
- 529, 172
-
-
- 59, 12
-
-
- 24
-
-
- 1)ws path
-
-
- label16
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 11
-
-
- True
-
-
- 464, 94
-
-
- 215, 12
-
-
- 23
-
-
- 1)http host Separated by commas (,)
-
-
- label14
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 12
-
-
- True
-
-
- 9, 243
-
-
- 23, 12
-
-
- 22
-
-
- TLS
-
-
- label15
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 13
-
-
-
-
-
- tls
-
xtls
-
- 127, 239
+
+ 8
-
- 143, 20
+
+ Path
-
- 21
+
+ 83, 12
-
- cmbStreamSecurity
+
+ Transport protocol(network)
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 9
-
- groupBox2
+
+ panTlsMore
-
- 14
+
+ groupBox1
-
- True
+
+ 1
-
- 282, 68
+
+ 6, 12
-
- 299, 12
-
-
- 20
-
-
- *tcp or kcp or QUIC camouflage type, default none
-
-
- label12
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 15
-
-
- 158, 100
-
-
- True
-
-
- 300, 53
-
-
- 16
-
-
- txtRequestHost
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 16
-
-
- True
-
-
- 9, 68
-
-
- 95, 12
-
-
- 19
-
-
- Camouflage type
-
-
- label11
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 17
-
-
- True
-
-
- 9, 100
-
-
- 143, 12
-
-
- 17
-
-
- Camouflage domain(host)
-
-
- label10
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 18
-
-
- none
-
-
- http
-
-
- srtp
-
-
- utp
-
-
- wechat-video
-
-
- dtls
-
-
- wireguard
-
-
- 127, 64
-
-
- 143, 20
-
-
- 18
-
-
- cmbHeaderType
+
+ label15
System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- groupBox2
+
+ cmbStreamSecurity
+
+
+ 3)h2 host Separated by commas (,)
+
+
+
+ Top
+
+
+ 6
+
+
+
+ 3
+
+
+ 17
+
+
+ false
+
+
+ System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
19
-
- Bottom
-
-
- 3, 215
-
-
- 723, 281
-
-
- 21
-
-
- Transport
-
-
- groupBox2
-
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 4
-
-
+
True
-
- NoControl
-
-
- 353, 157
-
-
- 119, 12
-
-
- 14
-
-
- *Recommended (none)
-
-
- label8
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
+ 297, 7
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 127, 123
+
+
+ cmbAllowInsecure
+
+
+ 21
+
+
+ 411, 91
+
+
+ 18
+
+
groupBox1
-
- 5
+
+ 59, 12
+
+
+ 1)ws path
+
+
+ 19
+
+
+ True
+
+
+ 26
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ txtId
+
+
+ label5
+
+
+ True
+
+
+ 729, 499
+
+
+
+
+
+ 12, 95
+
+
+ groupBox2
+
+
+ tls
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ toolStripSeparator1
+
+
+ 299, 12
+
+
+ 4
none
-
- 127, 154
-
-
- 211, 20
-
-
- 6
-
-
- cmbSecurity
-
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
+
groupBox1
-
- 6
+
+ 127, 91
+
+
+ 16
+
+
+ utp
+
+
+ Bottom
+
+
+ &Cancel
+
+
+ txtSNI
+
+
+ label10
+
+
+ 723, 281
+
+
+ 5
+
+
+ label21
+
+
+ 359, 21
+
+
+ System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Edit or add a [VLESS] server
+
+
+ 143, 12
+
+
+ groupBox2
+
+
+ tcp
+
+
+ panTlsMore
+
+
+ NoControl
+
+
+ 21
+
+
+ label11
+
+
+ 158, 100
+
+
+ SNI
+
+
+ 0
+
+
+ 2
+
+
+ 29, 12
+
+
+ System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 234, 6
+
+
+ 237, 22
+
+
+ 3)QUIC key/Kcp seed
+
+
+ 127, 59
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ txtPort
+
+
+ 4
+
+
+ groupBox2
+
+
+ 100, 7
+
+
+ label16
127, 185
-
- 211, 21
+
+ True
-
- 11
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ NoControl
+
+
+ NoControl
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ True
+
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 29, 12
+
+
+ True
+
+
+ ws
+
+
+ 13
+
+
+ 15
+
+
+ System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 65, 12
+
+
+ 9, 169
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 15
+
+
+ xtls-rprx-origin-udp443
+
+
+ label17
+
+
+ panel1
+
+
+ groupBox2
+
+
+ 5
+
+
+ 215, 12
+
+
+ 0, 0
+
+
+ 396, 17
+
+
+ Import configuration file
+
+
+ 500, 35
+
+
+ 12, 63
+
+
+ MenuItemImportClient
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ &Generate
+
+
+ 127, 154
txtRemarks
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 29, 12
-
+
+ v2rayN.Forms.BaseServerForm, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
+
+
+ groupBox2
+
+
+ panel2
+
+
+ panTlsMore
+
+
+ True
+
+
+ cmbNetwork
+
+
+ 200, 232
+
+
+ 95, 12
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 353, 32
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ label22
+
+
+ 22
+
+
+ 211, 20
+
+
groupBox1
-
- 7
-
-
+
True
12, 189
+
+ groupBox2
+
+
+ 127, 27
+
+
+ label12
+
+
+ Flow
+
+
+ True
+
+
+ 282, 68
+
+
+ 12
+
+
+ *tcp or kcp or QUIC camouflage type, default none
+
+
+ 25
+
+
+ label23
+
+
+ groupBox1
+
+
+ 9, 68
+
+
+ 119, 12
+
+
+ $this
+
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 1
+
+
+ 33
+
+
+ 6
+
+
+ 0
+
+
+ 47, 12
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ label8
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 9, 32
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 2
+
+
+ 35
+
+
+ 13
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 11
+
+
+ True
+
+
+ 464, 94
+
+
+ label9
+
+
+ cmbFlow
+
+
+ label20
+
+
+ wechat-video
+
+
+ label18
+
+
+ MenuItem1
+
+
+ label1
+
+
+ 13
+
+
+ label7
+
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 211, 20
+
+
+ groupBox2
+
+
+ True
+
+
+ groupBox2
+
+
+ True
+
+
+ btnClose
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ label19
+
+
+ 143, 21
+
95, 12
-
- 10
-
-
- Alias (remarks)
-
-
- label6
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
groupBox1
-
- 8
+
+ 0, 35
-
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ txtPath
+
+
+ 729, 60
+
+
+ allowInsecure
+
+
+ True
+
+
+ True
+
+
+ 464, 124
+
+
+ quic
+
+
+ panTlsMore
+
+
+ groupBox2
+
+
+ h2
+
+
+ kcp
+
+
+ 127, 64
+
+
+ 7
+
+
+ NoControl
+
+
+ 211, 21
+
+
True
12, 158
-
- 65, 12
-
-
- 8
-
-
- Encryption
-
-
- label5
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 9
-
-
- 127, 91
-
-
- 278, 21
-
-
- 5
-
-
- txtId
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 18
groupBox1
-
- 10
-
-
- True
-
-
- 12, 95
-
-
- 53, 12
-
-
- 4
-
-
- UUID(id)
-
-
- label3
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 11
-
-
- 127, 59
-
-
- 143, 21
-
-
- 3
-
-
- txtPort
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 12
-
-
- True
-
-
- 12, 63
-
-
- 29, 12
-
-
- 2
-
-
- Port
+
+ 143, 20
label2
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 729, 594
-
+
+ groupBox2
+
+
+ 60, 20
+
+
+ groupBox2
+
+
+ 119, 12
+
+
+ 278, 21
+
+
+ True
+
+
+ 200, 21
+
+
+ 4
+
+
+ 80, 20
+
+
+ 53, 12
+
+
+ 27
+
+
+ groupBox2
+
+
+ 17
+
+
+ Port
+
+
+ groupBox2
+
+
+ Fill
+
+
+ 12
+
+
+ groupBox2
+
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
groupBox1
-
- 13
+
+ 28
-
- 127, 27
+
+ 2
-
- 359, 21
+
+ 75, 23
-
- 1
+
+ xtls-rprx-direct
-
- txtAddress
+
+ True
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 11
groupBox1
-
- 14
+
+ 8
-
+
+ *Recommended (none)
+
+
+ groupBox1
+
+
+ NoControl
+
+
+ 34
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 1
+
+
+ 6
+
+
+ 10
+
+
+ 35
+
+
+ true
+
+
True
+
+ 3, 215
+
+
+ 529, 189
+
+
+ 10
+
+
+ btnOK
+
+
+ 75, 23
+
+
+ Import server configuration
+
+
+ 465, 140
+
+
+ True
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 22
+
+
+ 396, 54
+
+
+ 300, 53
+
12, 31
-
- 47, 12
+
+ 14
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ dtls
+
+
+ label4
+
+
+ MenuItemImportServer
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox2
+
+
+ panel2
+
+
+ 14
+
+
+ 5
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 0, 534
+
+
+ groupBox1
+
+
+ UUID(id)
+
+
+ AddServer5Form
+
+
+ wireguard
+
+
+ 24
+
+
+ groupBox1
+
+
+ 729, 10
+
+
+ Server
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 303, 17
+
+
+ 2)ws host
+
+
+ txtAddress
+
+
+ True
+
+
+ 2)h2 path
+
+
+ True
+
+
+ 0
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 167, 12
+
+
+ 8
+
+
+ Transport
+
+
+ groupBox2
+
+
+ * Fill in manually
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 12
+
+
+ True
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 29
+
+
+ 1
+
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 3
+
+
+ True
+
+
+ groupBox1
+
+
+ 162, 21
+
+
+ Bottom
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ txtRequestHost
+
+
+ btnGUID
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Alias (remarks)
+
+
+ 127, 169
+
+
+ 4
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ &OK
+
+
+ 7
+
+
+ 3
+
+
+ http
+
+
+ True
+
+
+ 34
+
+
+ 9
+
+
+ groupBox2
+
+
+ Camouflage type
+
+
+ menuServer
+
+
+ 20
+
+
+ TLS
+
+
+ $this
+
+
+ 1
+
+
+ 5
+
+
+ 89, 12
+
+
+ srtp
+
+
+ MenuItemImportClipboard
+
+
+ label13
+
+
+ True
+
+
+ $this
+
+
+ 3
+
+
+ groupBox1
+
+
+ 237, 22
+
+
+ 143, 20
+
+
+ panTlsMore
+
+
+ 8
+
+
+ 24
+
+
+ 15
0
+
+ System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 113, 12
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 192, 28
+
+
+ 203, 12
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 23, 12
+
+
+ 30
+
+
+ 14
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 23
+
+
+ 23
+
+
+ 25
+
+
+ 2
+
+
+ 9, 100
+
+
+ label3
+
+
+ 7
+
+
+ groupBox1
+
+
+ xtls-rprx-direct-udp443
+
+
+ Import URL from clipboard
+
+
+ 464, 109
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Camouflage domain(host)
+
+
+ 0
+
+
+ 529, 172
+
+
+ *Default value tcp
+
+
+ 31
+
+
+ 127, 239
+
+
+ 9, 243
+
+
+ 353, 157
+
+
+ Encryption
+
+
+ none
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 0
+
Address
-
- label1
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 15
-
-
- Fill
-
-
- 0, 35
-
-
- 729, 499
-
-
+
3
-
- Server
-
-
+
groupBox1
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- $this
-
-
- 0
-
-
- 303, 17
-
-
- 75, 23
-
-
- 5
-
-
- &OK
-
-
- btnOK
-
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- panel2
-
-
- 1
-
-
- Bottom
-
-
- 0, 534
-
-
- 729, 60
-
-
- 7
-
-
- panel2
-
-
- System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- $this
-
-
- 1
-
-
- Top
-
-
- 0, 25
-
-
- 729, 10
-
-
- 6
-
-
- panel1
-
-
- System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- $this
-
-
- 2
-
-
- 17, 17
-
-
- 237, 22
-
-
- Import client configuration
-
-
- 237, 22
-
-
- Import server configuration
-
-
- 234, 6
-
237, 22
-
- Import URL from clipboard
+
+ 16
-
- 162, 21
+
+ 3
-
- Import configuration file
+
+
-
- 0, 0
+
+ groupBox2
-
- 729, 25
+
+ xtls-rprx-origin
-
- 8
+
+ Import client configuration
-
- menuServer
+
+ 12, 127
-
- System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 4)QUIC securty
+
+
+ 0, 25
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ cmbSecurity
+
+
+ groupBox2
+
+
+ 267, 11
+
+
+ 75, 23
+
+
+ 23, 12
+
+
+ groupBox1
+
+
+ 12, 11
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox2
+
+
+ NoControl
+
+
+ 1)http host Separated by commas (,)
+
+
+
+
+
+ label24
+
+
+ 59, 12
+
+
+ panel2
+
+
+ 11
+
+
+ groupBox2
$this
-
- 3
+
+ True
+
+ label6
+
+
+ 59, 12
+
+
+ 10
+
+
+ 729, 25
+
+
+ cmbHeaderType
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 529, 207
+
+
+ 2
+
+
+ label14
+
+
+ zh-Hans
+
True
25
-
- 6, 12
-
-
- 729, 594
-
-
- Edit or add a [VLESS] server
-
-
- MenuItem1
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- MenuItemImportClient
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- MenuItemImportServer
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripSeparator1
-
-
- System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- MenuItemImportClipboard
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- AddServer5Form
-
-
- v2rayN.Forms.BaseServerForm, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
-
+
+ 17, 17
+
\ No newline at end of file
diff --git a/v2rayN/v2rayN/Forms/AddServer5Form.zh-Hans.resx b/v2rayN/v2rayN/Forms/AddServer5Form.zh-Hans.resx
index 46ec6353..841c0bd2 100644
--- a/v2rayN/v2rayN/Forms/AddServer5Form.zh-Hans.resx
+++ b/v2rayN/v2rayN/Forms/AddServer5Form.zh-Hans.resx
@@ -120,9 +120,6 @@
取消(&C)
-
- 服务器
-
220, 20
@@ -139,9 +136,6 @@
*手填,方便识别管理
-
- 底层传输方式(transport)
-
149, 12
@@ -161,7 +155,7 @@
跳过证书验证(allowInsecure)
- 223, 7
+ 181, 7
353, 36
@@ -259,6 +253,9 @@
127, 67
+
+ 底层传输方式(transport)
+
353, 158
@@ -304,19 +301,12 @@
地址(address)
+
+ 服务器
+
确定(&O)
-
-
- False
-
-
- 92, 21
-
-
- 导入配置文件
-
171, 22
@@ -338,6 +328,16 @@
从剪贴板导入URL
+
+
+ False
+
+
+ 92, 21
+
+
+ 导入配置文件
+
编辑或添加[VLESS]服务器
diff --git a/v2rayN/v2rayN/Forms/AddServer6Form.Designer.cs b/v2rayN/v2rayN/Forms/AddServer6Form.Designer.cs
index f14d46e4..fc67c5ec 100644
--- a/v2rayN/v2rayN/Forms/AddServer6Form.Designer.cs
+++ b/v2rayN/v2rayN/Forms/AddServer6Form.Designer.cs
@@ -31,8 +31,12 @@
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AddServer6Form));
this.btnClose = new System.Windows.Forms.Button();
this.groupBox1 = new System.Windows.Forms.GroupBox();
+ this.label21 = new System.Windows.Forms.Label();
+ this.cmbAllowInsecure = new System.Windows.Forms.ComboBox();
+ this.label15 = new System.Windows.Forms.Label();
+ this.cmbStreamSecurity = new System.Windows.Forms.ComboBox();
this.label4 = new System.Windows.Forms.Label();
- this.txtRequestHost = new System.Windows.Forms.TextBox();
+ this.txtSNI = new System.Windows.Forms.TextBox();
this.label13 = new System.Windows.Forms.Label();
this.txtRemarks = new System.Windows.Forms.TextBox();
this.label6 = new System.Windows.Forms.Label();
@@ -60,8 +64,12 @@
// groupBox1
//
resources.ApplyResources(this.groupBox1, "groupBox1");
+ this.groupBox1.Controls.Add(this.label21);
+ this.groupBox1.Controls.Add(this.cmbAllowInsecure);
+ this.groupBox1.Controls.Add(this.label15);
+ this.groupBox1.Controls.Add(this.cmbStreamSecurity);
this.groupBox1.Controls.Add(this.label4);
- this.groupBox1.Controls.Add(this.txtRequestHost);
+ this.groupBox1.Controls.Add(this.txtSNI);
this.groupBox1.Controls.Add(this.label13);
this.groupBox1.Controls.Add(this.txtRemarks);
this.groupBox1.Controls.Add(this.label6);
@@ -74,15 +82,46 @@
this.groupBox1.Name = "groupBox1";
this.groupBox1.TabStop = false;
//
+ // label21
+ //
+ resources.ApplyResources(this.label21, "label21");
+ this.label21.Name = "label21";
+ //
+ // cmbAllowInsecure
+ //
+ resources.ApplyResources(this.cmbAllowInsecure, "cmbAllowInsecure");
+ this.cmbAllowInsecure.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+ this.cmbAllowInsecure.FormattingEnabled = true;
+ this.cmbAllowInsecure.Items.AddRange(new object[] {
+ resources.GetString("cmbAllowInsecure.Items"),
+ resources.GetString("cmbAllowInsecure.Items1"),
+ resources.GetString("cmbAllowInsecure.Items2")});
+ this.cmbAllowInsecure.Name = "cmbAllowInsecure";
+ //
+ // label15
+ //
+ resources.ApplyResources(this.label15, "label15");
+ this.label15.Name = "label15";
+ //
+ // cmbStreamSecurity
+ //
+ resources.ApplyResources(this.cmbStreamSecurity, "cmbStreamSecurity");
+ this.cmbStreamSecurity.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+ this.cmbStreamSecurity.FormattingEnabled = true;
+ this.cmbStreamSecurity.Items.AddRange(new object[] {
+ resources.GetString("cmbStreamSecurity.Items"),
+ resources.GetString("cmbStreamSecurity.Items1")});
+ this.cmbStreamSecurity.Name = "cmbStreamSecurity";
+ //
// label4
//
resources.ApplyResources(this.label4, "label4");
this.label4.Name = "label4";
//
- // txtRequestHost
+ // txtSNI
//
- resources.ApplyResources(this.txtRequestHost, "txtRequestHost");
- this.txtRequestHost.Name = "txtRequestHost";
+ resources.ApplyResources(this.txtSNI, "txtSNI");
+ this.txtSNI.Name = "txtSNI";
//
// label13
//
@@ -184,6 +223,10 @@
private System.Windows.Forms.Panel panel2;
private System.Windows.Forms.Label label13;
private System.Windows.Forms.Label label4;
- private System.Windows.Forms.TextBox txtRequestHost;
+ private System.Windows.Forms.TextBox txtSNI;
+ private System.Windows.Forms.Label label15;
+ private System.Windows.Forms.ComboBox cmbStreamSecurity;
+ private System.Windows.Forms.Label label21;
+ private System.Windows.Forms.ComboBox cmbAllowInsecure;
}
}
\ No newline at end of file
diff --git a/v2rayN/v2rayN/Forms/AddServer6Form.cs b/v2rayN/v2rayN/Forms/AddServer6Form.cs
index 6911714f..e7d35165 100644
--- a/v2rayN/v2rayN/Forms/AddServer6Form.cs
+++ b/v2rayN/v2rayN/Forms/AddServer6Form.cs
@@ -35,8 +35,10 @@ namespace v2rayN.Forms
txtAddress.Text = vmessItem.address;
txtPort.Text = vmessItem.port.ToString();
txtId.Text = vmessItem.id;
- txtRequestHost.Text = vmessItem.requestHost;
+ txtSNI.Text = vmessItem.sni;
txtRemarks.Text = vmessItem.remarks;
+ cmbStreamSecurity.Text = vmessItem.streamSecurity;
+ cmbAllowInsecure.Text = vmessItem.allowInsecure;
}
@@ -48,8 +50,10 @@ namespace v2rayN.Forms
txtAddress.Text = "";
txtPort.Text = "";
txtId.Text = "";
- txtRequestHost.Text = "";
- txtRemarks.Text = "";
+ txtSNI.Text = "";
+ txtRemarks.Text = "";
+ cmbStreamSecurity.Text = "tls";
+ cmbAllowInsecure.Text = "";
}
private void btnOK_Click(object sender, EventArgs e)
@@ -57,8 +61,10 @@ namespace v2rayN.Forms
string address = txtAddress.Text;
string port = txtPort.Text;
string id = txtId.Text;
- string requestHost = txtRequestHost.Text;
+ string sni = txtSNI.Text;
string remarks = txtRemarks.Text;
+ string streamSecurity = cmbStreamSecurity.Text;
+ string allowInsecure = cmbAllowInsecure.Text;
if (Utils.IsNullOrEmpty(address))
{
@@ -79,8 +85,10 @@ namespace v2rayN.Forms
vmessItem.address = address;
vmessItem.port = Utils.ToInt(port);
vmessItem.id = id;
- vmessItem.requestHost = requestHost.Replace(" ", "");
+ vmessItem.sni = sni.Replace(" ", "");
vmessItem.remarks = remarks;
+ vmessItem.streamSecurity = streamSecurity;
+ vmessItem.allowInsecure = allowInsecure;
if (ConfigHandler.AddTrojanServer(ref config, vmessItem, EditIndex) == 0)
{
diff --git a/v2rayN/v2rayN/Forms/AddServer6Form.resx b/v2rayN/v2rayN/Forms/AddServer6Form.resx
index 6d3c8975..7add00f3 100644
--- a/v2rayN/v2rayN/Forms/AddServer6Form.resx
+++ b/v2rayN/v2rayN/Forms/AddServer6Form.resx
@@ -117,107 +117,332 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- groupBox1
+
+
+ 113, 12
-
- Server address
+
+ 312, 185
+
+
+ 53, 12
-
- 3
+
+ True
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ label6
+
+
+ True
+
+
+ groupBox1
+
+
+ panel2
+
+
+ 24
+
+
+ 11
+
+
+ allowInsecure
Bottom
-
- NoControl
-
-
- txtPort
-
-
- True
-
Alias (remarks)
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 3
-
- btnOK
+
+ Password
-
- txtRemarks
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 194, 21
+
+ NoControl
-
- System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- AddServer6Form
-
-
- label1
-
-
- 359, 21
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
+
groupBox1
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- panel2
-
-
- 12, 155
+
+ cmbStreamSecurity
Fill
-
- 53, 12
+
+ groupBox1
-
- 127, 123
+
+ NoControl
-
- 194, 21
+
+ 89, 12
+
+
+ 127, 27
+
+
+ 6
+
+
+ Edit or add a [Trojan] server
+
+
+ 60, 20
+
+
+ 5
+
+
+ groupBox1
+
+
+ 303, 17
+
+
+ System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 4
+
+
+ 0
+
+
+ 359, 21
+
+
+ 1
+
+
+ True
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 12
+
+
+ groupBox1
+
+
+ label1
+
+
+ 25
+
+
+ 0, 0
+
+
+ groupBox1
+
+
+ True
+
+
+ 22
+
+
+ 75, 23
+
+
+ True
+
+
+ 13
+
+
+ 127, 91
+
+
+ panel2
+
+
+ 3
+
+
+ 5
+
+
+ 2
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
groupBox1
-
- 6, 12
+
+ cmbAllowInsecure
-
- 396, 17
+
+ txtId
-
- True
+
+ 12, 156
-
- label3
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 127, 154
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- True
+
+ 12, 31
+
+
+ 1
+
+
+ 1
+
+
+ AddServer6Form
+
+
+ 2
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 127, 59
+
+
+ 80, 20
+
+
+ 4
+
+
+ 0
+
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 32
+
+
+ 547, 60
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ $this
+
+
+ 71, 12
+
+
+ $this
+
+
+ groupBox1
+
+
+
+
+
+ 23
+
+
+ txtPort
+
+
+ panel2
+
+
+ 11
+
+
+ 547, 10
+
+
+ 0, 10
+
+
+ 9
+
+
+ 26
+
+
+ label4
+
+
+ &OK
+
+
+ 5
+
+
+ groupBox1
+
+
+ btnClose
+
+
+ txtSNI
+
+
+ 0
+
+
+ 23, 12
+
+
+ 12, 93
+
+
+ 2
+
+
+ 194, 21
+
+
+ 194, 21
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ true
+
+
+ 1
+
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
6
@@ -225,313 +450,208 @@
7
-
- groupBox1
-
-
- 113, 12
-
-
- 12, 93
-
-
- 10
-
-
- Server
-
-
- 3
-
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 0
-
-
- txtRequestHost
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 547, 60
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 359, 21
-
-
- Edit or add a [Trojan] server
-
-
- 359, 21
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- *
-
-
- groupBox1
-
-
- * Fill in manually
-
-
- 11
-
-
- 10
-
-
- 71, 12
-
-
- 24
-
-
- label4
-
-
- txtId
-
-
- 303, 17
-
-
- $this
-
-
- 75, 23
-
-
- btnClose
-
-
- Host(SNI)
-
-
- label6
-
-
- 5
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Password
-
-
- 75, 23
-
-
- 1
-
-
- txtAddress
-
-
- groupBox1
-
-
- Top
-
-
- 0, 10
-
-
- 4
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 547, 221
-
-
- 2
-
-
- groupBox1
-
-
- 4
-
-
- 3
-
-
- 127, 27
-
-
- 5
-
-
- groupBox1
-
-
- System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 23
-
-
- 127, 59
-
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- True
-
-
- True
-
-
- 89, 12
-
-
- groupBox1
-
-
- 0
-
-
- 547, 10
-
-
- 8
-
-
- &Cancel
-
-
- 12, 31
-
-
- &OK
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 0
-
-
- Server port
-
-
- 4
-
-
- 337, 158
-
-
- True
-
-
- 12, 62
-
-
- 127, 91
-
-
- 12, 126
-
-
- 7
-
-
- $this
-
-
- 59, 12
-
-
- 1
-
-
- groupBox1
-
-
- 0, 0
-
-
- 1
-
label13
-
- 5
+
+ 359, 21
-
- 95, 12
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- label2
-
-
- 2
-
-
- panel2
-
-
- 0, 231
-
-
- 22
-
-
- 9
-
-
- 547, 291
-
-
- 0
+
+ groupBox1
v2rayN.Forms.BaseServerForm, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
-
- groupBox1
+
+ label3
-
- $this
+
+ Server port
-
- 6
+
+ System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
+ Top
+
+
+ 396, 17
+
+
System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 1
+
+ 0, 231
-
- panel2
+
+ tls
-
- panel1
+
+ txtRemarks
+
+
+ 33
+
+
+ NoControl
+
+
+ 12, 189
+
+
+ &Cancel
+
+
+ True
+
+
+ xtls
+
+
+ 6, 12
+
+
+ label21
+
+
+ Server address
+
+
+ false
+
+
+ TLS
+
+
+ 95, 12
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 127, 185
System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- 2
+
+ * Fill in manually
+
+
+ 14
+
+
+ label2
+
+
+ groupBox1
+
+
+ panel1
+
+
+ 12, 62
+
+
+ 547, 291
+
+
+ btnOK
+
+
+ 0
+
+
+ $this
+
+
+ 547, 221
+
+
+ 8
+
+
+ 75, 23
+
+
+ 10
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 83, 12
+
+
+ 337, 125
+
+
+ True
+
+
+ 4
+
+
+ 7
+
+
+ 127, 121
+
+
+ *
+
+
+ txtAddress
+
+
+ 23, 12
+
+
+ 224, 189
+
+
+ groupBox1
+
+
+ label15
+
+
+ groupBox1
+
+
+ Server
+
+
+ 127, 152
+
+
+ 10
+
+
+ 12, 125
+
+
+ True
+
+
+ SNI
+
+
+ 359, 21
+
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 3
True
+
+ zh-Hans
+
\ No newline at end of file
diff --git a/v2rayN/v2rayN/Forms/AddServer6Form.zh-Hans.resx b/v2rayN/v2rayN/Forms/AddServer6Form.zh-Hans.resx
index 375c223d..dd715fc9 100644
--- a/v2rayN/v2rayN/Forms/AddServer6Form.zh-Hans.resx
+++ b/v2rayN/v2rayN/Forms/AddServer6Form.zh-Hans.resx
@@ -120,16 +120,29 @@
取消(&C)
-
- 服务器
+
+
+ 167, 12
-
- 域名(SNI)
+
+ 跳过证书验证(allowInsecure)
+
+
+ 406, 185
+
+
+ 107, 12
+
+
+ 底层传输安全(tls)
+
+
+
+ False
*手填,方便识别管理
-
83, 12
@@ -154,6 +167,9 @@
服务器地址
+
+ 服务器
+
确定(&O)
diff --git a/v2rayN/v2rayN/Forms/AddServerForm.Designer.cs b/v2rayN/v2rayN/Forms/AddServerForm.Designer.cs
index a96b32ab..7db28ff7 100644
--- a/v2rayN/v2rayN/Forms/AddServerForm.Designer.cs
+++ b/v2rayN/v2rayN/Forms/AddServerForm.Designer.cs
@@ -37,6 +37,8 @@
this.label24 = new System.Windows.Forms.Label();
this.label23 = new System.Windows.Forms.Label();
this.panTlsMore = new System.Windows.Forms.Panel();
+ this.txtSNI = new System.Windows.Forms.TextBox();
+ this.label22 = new System.Windows.Forms.Label();
this.label21 = new System.Windows.Forms.Label();
this.cmbAllowInsecure = new System.Windows.Forms.ComboBox();
this.label9 = new System.Windows.Forms.Label();
@@ -87,14 +89,15 @@
//
// btnClose
//
- this.btnClose.DialogResult = System.Windows.Forms.DialogResult.Cancel;
resources.ApplyResources(this.btnClose, "btnClose");
+ this.btnClose.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btnClose.Name = "btnClose";
this.btnClose.UseVisualStyleBackColor = true;
this.btnClose.Click += new System.EventHandler(this.btnClose_Click);
//
// groupBox1
//
+ resources.ApplyResources(this.groupBox1, "groupBox1");
this.groupBox1.Controls.Add(this.btnGUID);
this.groupBox1.Controls.Add(this.label13);
this.groupBox1.Controls.Add(this.groupBox2);
@@ -111,7 +114,6 @@
this.groupBox1.Controls.Add(this.label2);
this.groupBox1.Controls.Add(this.txtAddress);
this.groupBox1.Controls.Add(this.label1);
- resources.ApplyResources(this.groupBox1, "groupBox1");
this.groupBox1.Name = "groupBox1";
this.groupBox1.TabStop = false;
//
@@ -129,6 +131,7 @@
//
// groupBox2
//
+ resources.ApplyResources(this.groupBox2, "groupBox2");
this.groupBox2.Controls.Add(this.label24);
this.groupBox2.Controls.Add(this.label23);
this.groupBox2.Controls.Add(this.panTlsMore);
@@ -149,7 +152,6 @@
this.groupBox2.Controls.Add(this.label11);
this.groupBox2.Controls.Add(this.label10);
this.groupBox2.Controls.Add(this.cmbHeaderType);
- resources.ApplyResources(this.groupBox2, "groupBox2");
this.groupBox2.Name = "groupBox2";
this.groupBox2.TabStop = false;
//
@@ -165,11 +167,23 @@
//
// panTlsMore
//
+ resources.ApplyResources(this.panTlsMore, "panTlsMore");
+ this.panTlsMore.Controls.Add(this.txtSNI);
+ this.panTlsMore.Controls.Add(this.label22);
this.panTlsMore.Controls.Add(this.label21);
this.panTlsMore.Controls.Add(this.cmbAllowInsecure);
- resources.ApplyResources(this.panTlsMore, "panTlsMore");
this.panTlsMore.Name = "panTlsMore";
//
+ // txtSNI
+ //
+ resources.ApplyResources(this.txtSNI, "txtSNI");
+ this.txtSNI.Name = "txtSNI";
+ //
+ // label22
+ //
+ resources.ApplyResources(this.label22, "label22");
+ this.label22.Name = "label22";
+ //
// label21
//
resources.ApplyResources(this.label21, "label21");
@@ -177,13 +191,13 @@
//
// cmbAllowInsecure
//
+ resources.ApplyResources(this.cmbAllowInsecure, "cmbAllowInsecure");
this.cmbAllowInsecure.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbAllowInsecure.FormattingEnabled = true;
this.cmbAllowInsecure.Items.AddRange(new object[] {
resources.GetString("cmbAllowInsecure.Items"),
resources.GetString("cmbAllowInsecure.Items1"),
resources.GetString("cmbAllowInsecure.Items2")});
- resources.ApplyResources(this.cmbAllowInsecure, "cmbAllowInsecure");
this.cmbAllowInsecure.Name = "cmbAllowInsecure";
//
// label9
@@ -203,6 +217,7 @@
//
// cmbNetwork
//
+ resources.ApplyResources(this.cmbNetwork, "cmbNetwork");
this.cmbNetwork.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbNetwork.FormattingEnabled = true;
this.cmbNetwork.Items.AddRange(new object[] {
@@ -211,7 +226,6 @@
resources.GetString("cmbNetwork.Items2"),
resources.GetString("cmbNetwork.Items3"),
resources.GetString("cmbNetwork.Items4")});
- resources.ApplyResources(this.cmbNetwork, "cmbNetwork");
this.cmbNetwork.Name = "cmbNetwork";
this.cmbNetwork.SelectedIndexChanged += new System.EventHandler(this.cmbNetwork_SelectedIndexChanged);
//
@@ -252,12 +266,12 @@
//
// cmbStreamSecurity
//
+ resources.ApplyResources(this.cmbStreamSecurity, "cmbStreamSecurity");
this.cmbStreamSecurity.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbStreamSecurity.FormattingEnabled = true;
this.cmbStreamSecurity.Items.AddRange(new object[] {
resources.GetString("cmbStreamSecurity.Items"),
resources.GetString("cmbStreamSecurity.Items1")});
- resources.ApplyResources(this.cmbStreamSecurity, "cmbStreamSecurity");
this.cmbStreamSecurity.Name = "cmbStreamSecurity";
this.cmbStreamSecurity.SelectedIndexChanged += new System.EventHandler(this.cmbStreamSecurity_SelectedIndexChanged);
//
@@ -283,6 +297,7 @@
//
// cmbHeaderType
//
+ resources.ApplyResources(this.cmbHeaderType, "cmbHeaderType");
this.cmbHeaderType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbHeaderType.FormattingEnabled = true;
this.cmbHeaderType.Items.AddRange(new object[] {
@@ -293,7 +308,6 @@
resources.GetString("cmbHeaderType.Items4"),
resources.GetString("cmbHeaderType.Items5"),
resources.GetString("cmbHeaderType.Items6")});
- resources.ApplyResources(this.cmbHeaderType, "cmbHeaderType");
this.cmbHeaderType.Name = "cmbHeaderType";
//
// label8
@@ -303,6 +317,7 @@
//
// cmbSecurity
//
+ resources.ApplyResources(this.cmbSecurity, "cmbSecurity");
this.cmbSecurity.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbSecurity.FormattingEnabled = true;
this.cmbSecurity.Items.AddRange(new object[] {
@@ -310,7 +325,6 @@
resources.GetString("cmbSecurity.Items1"),
resources.GetString("cmbSecurity.Items2"),
resources.GetString("cmbSecurity.Items3")});
- resources.ApplyResources(this.cmbSecurity, "cmbSecurity");
this.cmbSecurity.Name = "cmbSecurity";
//
// txtRemarks
@@ -370,9 +384,9 @@
//
// panel2
//
+ resources.ApplyResources(this.panel2, "panel2");
this.panel2.Controls.Add(this.btnClose);
this.panel2.Controls.Add(this.btnOK);
- resources.ApplyResources(this.panel2, "panel2");
this.panel2.Name = "panel2";
//
// btnOK
@@ -389,42 +403,42 @@
//
// menuServer
//
+ resources.ApplyResources(this.menuServer, "menuServer");
this.menuServer.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.MenuItem1});
- resources.ApplyResources(this.menuServer, "menuServer");
this.menuServer.Name = "menuServer";
//
// MenuItem1
//
+ resources.ApplyResources(this.MenuItem1, "MenuItem1");
this.MenuItem1.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.MenuItemImportClient,
this.MenuItemImportServer,
this.toolStripSeparator1,
this.MenuItemImportClipboard});
this.MenuItem1.Name = "MenuItem1";
- resources.ApplyResources(this.MenuItem1, "MenuItem1");
//
// MenuItemImportClient
//
- this.MenuItemImportClient.Name = "MenuItemImportClient";
resources.ApplyResources(this.MenuItemImportClient, "MenuItemImportClient");
+ this.MenuItemImportClient.Name = "MenuItemImportClient";
this.MenuItemImportClient.Click += new System.EventHandler(this.MenuItemImportClient_Click);
//
// MenuItemImportServer
//
- this.MenuItemImportServer.Name = "MenuItemImportServer";
resources.ApplyResources(this.MenuItemImportServer, "MenuItemImportServer");
+ this.MenuItemImportServer.Name = "MenuItemImportServer";
this.MenuItemImportServer.Click += new System.EventHandler(this.MenuItemImportServer_Click);
//
// toolStripSeparator1
//
- this.toolStripSeparator1.Name = "toolStripSeparator1";
resources.ApplyResources(this.toolStripSeparator1, "toolStripSeparator1");
+ this.toolStripSeparator1.Name = "toolStripSeparator1";
//
// MenuItemImportClipboard
//
- this.MenuItemImportClipboard.Name = "MenuItemImportClipboard";
resources.ApplyResources(this.MenuItemImportClipboard, "MenuItemImportClipboard");
+ this.MenuItemImportClipboard.Name = "MenuItemImportClipboard";
this.MenuItemImportClipboard.Click += new System.EventHandler(this.MenuItemImportClipboard_Click);
//
// AddServerForm
@@ -504,5 +518,7 @@
private System.Windows.Forms.Panel panTlsMore;
private System.Windows.Forms.Label label24;
private System.Windows.Forms.Label label23;
+ private System.Windows.Forms.Label label22;
+ private System.Windows.Forms.TextBox txtSNI;
}
}
\ No newline at end of file
diff --git a/v2rayN/v2rayN/Forms/AddServerForm.cs b/v2rayN/v2rayN/Forms/AddServerForm.cs
index ab54fd9b..99eb4916 100644
--- a/v2rayN/v2rayN/Forms/AddServerForm.cs
+++ b/v2rayN/v2rayN/Forms/AddServerForm.cs
@@ -45,6 +45,7 @@ namespace v2rayN.Forms
txtPath.Text = vmessItem.path;
cmbStreamSecurity.Text = vmessItem.streamSecurity;
cmbAllowInsecure.Text = vmessItem.allowInsecure;
+ txtSNI.Text = vmessItem.sni;
}
@@ -66,6 +67,7 @@ namespace v2rayN.Forms
cmbStreamSecurity.Text = "";
cmbAllowInsecure.Text = "";
txtPath.Text = "";
+ txtSNI.Text = "";
}
@@ -122,6 +124,7 @@ namespace v2rayN.Forms
string path = txtPath.Text;
string streamSecurity = cmbStreamSecurity.Text;
string allowInsecure = cmbAllowInsecure.Text;
+ string sni = txtSNI.Text;
if (Utils.IsNullOrEmpty(address))
{
@@ -157,6 +160,7 @@ namespace v2rayN.Forms
vmessItem.path = path.Replace(" ", "");
vmessItem.streamSecurity = streamSecurity;
vmessItem.allowInsecure = allowInsecure;
+ vmessItem.sni = sni;
if (ConfigHandler.AddServer(ref config, vmessItem, EditIndex) == 0)
{
diff --git a/v2rayN/v2rayN/Forms/AddServerForm.resx b/v2rayN/v2rayN/Forms/AddServerForm.resx
index 156f1f49..adff72fe 100644
--- a/v2rayN/v2rayN/Forms/AddServerForm.resx
+++ b/v2rayN/v2rayN/Forms/AddServerForm.resx
@@ -117,1202 +117,1295 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 396, 17
-
-
- 75, 23
-
-
-
+
4
-
- &Cancel
+
+
+ 113, 12
-
- btnClose
-
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- panel2
-
-
- 0
-
-
- 411, 83
-
-
- 75, 23
-
-
- 23
-
-
- &Generate
-
-
- btnGUID
-
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 0
-
-
- True
+
+ 9
285, 175
-
- 113, 12
+
+ 127, 64
-
- 22
-
-
- * Fill in manually
-
-
- label13
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 1
-
-
- True
-
-
-
- NoControl
-
-
- 529, 207
-
-
- 119, 12
-
-
- 35
-
-
- 3)QUIC key/Kcp seed
-
-
- label24
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 0
-
-
- True
-
-
- NoControl
-
-
- 465, 146
-
-
- 89, 12
-
-
- 34
-
-
- 4)QUIC securty
-
-
- label23
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 1
-
-
- True
-
-
- 12, 11
-
-
- 83, 12
-
-
- 31
-
-
- allowInsecure
-
-
- label21
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- panTlsMore
-
-
- 0
-
-
-
-
-
- true
-
-
- false
-
-
- 107, 7
-
-
- 91, 20
-
-
- 30
-
-
- cmbAllowInsecure
-
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- panTlsMore
-
-
- 1
-
-
- 284, 234
-
-
- 338, 35
-
-
- 33
-
-
- panTlsMore
-
-
- System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 2
-
-
- True
-
-
- 350, 32
-
-
- 113, 12
-
-
- 15
-
-
- *Default value tcp
-
-
- label9
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 3
-
-
- True
-
-
- 464, 130
-
-
- 203, 12
-
-
- 29
-
-
- 3)h2 host Separated by commas (,)
-
-
- label20
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 4
-
-
- 127, 169
-
-
- True
-
-
- 396, 54
-
-
- 28
-
-
- txtPath
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 5
-
-
- tcp
-
-
- kcp
-
-
- ws
-
-
- h2
-
-
- quic
-
-
- 192, 28
-
-
- 143, 20
-
-
- 12
-
-
- cmbNetwork
-
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
+
6
-
- True
-
-
- 9, 32
-
-
- 167, 12
-
-
- 13
-
-
- Transport protocol(network)
-
-
- label7
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 7
-
-
- True
-
-
- 9, 169
-
-
- 29, 12
-
-
- 27
-
Path
-
- label19
+
+ 83, 12
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ Transport protocol(network)
-
- groupBox2
+
+ 7
-
- 8
+
+ groupBox1
-
- True
-
-
- 529, 189
-
-
- 59, 12
-
-
- 26
-
-
- 2)h2 path
-
-
- label18
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 9
-
-
- True
-
-
- 464, 115
-
-
- 59, 12
-
-
- 25
-
-
- 2)ws host
-
-
- label17
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 10
-
-
- True
-
-
- 529, 172
-
-
- 59, 12
-
-
- 24
-
-
- 1)ws path
-
-
- label16
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 11
-
-
- True
-
-
- 464, 100
-
-
- 215, 12
-
-
- 23
-
-
- 1)http host Separated by commas (,)
-
-
- label14
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 12
-
-
- True
-
-
- 9, 243
-
-
- 23, 12
-
-
- 22
-
-
- TLS
+
+ 1
label15
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 13
-
-
-
-
-
- tls
-
-
- 127, 239
-
-
- 143, 20
-
-
- 21
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
cmbStreamSecurity
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 143, 20
-
+
+ 200, 21
+
+
+
+ Top
+
+
+ 6
+
+
+
+ 3
+
+
+ 17
+
+
+ false
+
+
+ System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 19
+
+
+ True
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 300, 7
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 21
+
+
+ 411, 83
+
+
+ groupBox1
+
+
+ 75, 23
+
+
+ 59, 12
+
+
+ 1)ws path
+
+
+ 19
+
+
+ True
+
+
+ 26
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ txtId
+
+
+ True
+
+
+ 729, 499
+
+
+
+
+
+ 12, 89
+
+
groupBox2
-
- 14
+
+ tls
-
+
+ True
+
+
+ 299, 12
+
+
+ aes-128-gcm
+
+
+ groupBox1
+
+
+ 127, 85
+
+
+ 16
+
+
+ utp
+
+
+ 12, 175
+
+
+ &Cancel
+
+
+ txtSNI
+
+
+ label10
+
+
+ 723, 281
+
+
+ 5
+
+
+ label21
+
+
+ 359, 21
+
+
+ System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Edit or add a [VMess] server
+
+
+ 143, 12
+
+
+ groupBox2
+
+
+ toolStripSeparator1
+
+
+ panTlsMore
+
+
+ NoControl
+
+
+ 21
+
+
+ label11
+
+
+ 5
+
+
+ SNI
+
+
+ 158, 100
+
+
+ 2
+
+
+ 29, 12
+
+
+ System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 237, 22
+
+
+ 3)QUIC key/Kcp seed
+
+
+ 127, 56
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ txtPort
+
+
+ 2
+
+
+ groupBox2
+
+
+ Bottom
+
+
+ True
+
+
+ 127, 171
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ NoControl
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ True
+
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 29, 12
+
+
+ ws
+
+
+ 13
+
+
+ 9, 66
+
+
+ 15
+
+
+ Import server configuration
+
+
+ 6, 12
+
+
+ 1
+
+
+ 7
+
+
+ 15
+
+
+ label17
+
+
+ panel1
+
+
+ groupBox2
+
+
+ 215, 12
+
+
+ 0, 0
+
+
+ 396, 17
+
+
+ 500, 35
+
+
+ 12, 60
+
+
+ MenuItemImportClient
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ &Generate
+
+
+ Encryption method (security)
+
+
+ none
+
+
+ txtRemarks
+
+
+ 47, 12
+
+
+ v2rayN.Forms.BaseServerForm, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
+
+
+ groupBox2
+
+
+ true
+
+
+ panTlsMore
+
+
+ True
+
+
+ 127, 114
+
+
+ 200, 234
+
+
+ 95, 12
+
+
+ 350, 32
+
+
+ cmbNetwork
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ label22
+
+
+ 22
+
+
+ groupBox1
+
+
+ True
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 24
+
+
+ 127, 27
+
+
+ label12
+
+
+ label2
+
+
+ AlterId
+
+
True
282, 66
-
- 299, 12
-
-
- 20
+
+ 12
*tcp or kcp or QUIC camouflage type, default none
-
- label12
+
+ 25
+
+
+ label23
+
+
+ groupBox1
+
+
+ 60, 20
+
+
+ $this
+
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 33
+
+
+ 6
+
+
+ 0
+
+
+ 2
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ label8
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ label13
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ txtAlterId
+
+
+ 35
+
+
+ 13
+
+
+ 11
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 11
+
+
+ True
+
+
+ 464, 100
+
+
+ label9
+
+
+ label20
+
+
+ 127, 169
+
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ label18
+
+
+ MenuItem1
+
+
+ label1
+
+
+ 13
System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
+ 143, 20
+
+
groupBox2
-
- 15
-
-
- 158, 100
-
-
+
True
-
- 300, 53
+
+ btnClose
-
- 16
+
+ label7
-
- txtRequestHost
+
+ Address
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ label19
-
- groupBox2
+
+ 143, 21
-
- 16
-
-
- True
-
-
- 9, 66
-
-
+
95, 12
-
- 19
+
+ groupBox1
-
- Camouflage type
+
+ 0, 35
-
- label11
+
+ panTlsMore
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 729, 60
+
+
+ allowInsecure
+
+
+ True
+
+
+ True
+
+
+ 464, 130
+
+
+ quic
+
+
+ panTlsMore
groupBox2
+
+ h2
+
+
+ kcp
+
+
+ 7
+
+
+ 143, 21
+
+
+ 529, 172
+
+
+ 18
+
+
+ 12, 147
+
+
+ 18
+
+
+ groupBox1
+
+
+ 34
+
+
+ 3, 215
+
+
+ 729, 594
+
+
+ groupBox2
+
+
+ 234, 6
+
+
+ groupBox2
+
+
+ 119, 12
+
+
+ 278, 21
+
+
+ True
+
+
+ True
+
+
+ 4
+
+
+ 80, 20
+
+
+ 53, 12
+
+
+ 27
+
+
+ groupBox2
+
17
-
- True
+
+ Port
-
- 9, 100
-
-
- 143, 12
-
-
- 17
-
-
- Camouflage domain(host)
-
-
- label10
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
+
groupBox2
-
- 18
+
+ Fill
-
- none
+
+ chacha20-poly1305
-
- http
+
+ 12
-
- srtp
-
-
- utp
-
-
- wechat-video
-
-
- dtls
-
-
- wireguard
-
-
- 127, 64
-
-
- 143, 20
-
-
- 18
-
-
- cmbHeaderType
-
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 19
-
-
- Bottom
-
-
- 3, 215
-
-
- 723, 281
-
-
- 21
-
-
- Transport
-
-
+
groupBox2
System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- groupBox1
-
-
- 2
-
-
- True
-
-
- 353, 147
-
-
- 119, 12
-
-
- 14
-
-
- *Recommended (auto)
-
-
- label8
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 3
-
-
- aes-128-gcm
-
-
- chacha20-poly1305
-
-
- auto
-
-
- none
-
-
- 195, 143
-
-
- 143, 20
-
-
- 6
-
-
- cmbSecurity
-
-
- System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 4
-
-
- 127, 171
-
-
- 143, 21
-
-
- 11
-
-
- txtRemarks
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
groupBox1
-
- 5
-
-
- True
-
-
- 12, 175
-
-
- 95, 12
-
-
- 10
-
-
- Alias (remarks)
-
-
- label6
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 6
-
-
- True
-
-
- 12, 147
-
-
- 173, 12
-
-
- 8
-
-
- Encryption method (security)
-
-
- label5
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 7
-
-
- 127, 114
-
-
- 143, 21
-
-
- 7
-
-
- txtAlterId
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 8
-
-
- True
-
-
- 12, 118
-
-
- 47, 12
-
-
- 6
-
-
- AlterId
-
-
- label4
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 9
-
-
- 127, 85
-
-
- 278, 21
-
-
- 5
-
-
- txtId
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 10
-
-
- True
-
-
- 12, 89
-
-
- 53, 12
-
-
- 4
-
-
- UUID(id)
-
-
- label3
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 11
-
-
- 127, 56
-
-
- 143, 21
-
-
- 3
-
-
- txtPort
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 12
-
-
- True
-
-
- 12, 60
-
-
- 29, 12
-
-
- 2
-
-
- Port
-
-
- label2
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 13
-
-
- 127, 27
-
-
- 359, 21
-
-
- 1
-
-
- txtAddress
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 14
-
-
- True
-
-
- 12, 31
-
-
- 47, 12
-
-
- 0
-
-
- Address
-
-
- label1
-
-
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox1
-
-
- 15
-
-
- Fill
-
-
- 0, 35
-
-
- 729, 499
-
-
- 3
-
-
- Server
-
-
- groupBox1
-
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- $this
-
-
- 0
-
-
- 303, 17
-
-
- 75, 23
-
-
- 5
-
-
- &OK
-
-
- btnOK
-
-
- System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- panel2
-
-
- 1
-
-
- Bottom
-
-
- 0, 534
-
-
- 729, 60
-
-
- 7
-
-
- panel2
-
System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
- $this
-
-
- 1
-
-
- Top
-
-
- 0, 25
-
-
- 729, 10
-
-
- 6
-
-
- panel1
-
-
- System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- $this
-
-
+
2
-
- 17, 17
-
-
- 237, 22
+
+ 75, 23
-
- Import client configuration
+
+ 4
-
- 237, 22
+
+ True
-
- Import server configuration
+
+ 11
-
- 234, 6
-
-
- 237, 22
-
-
- Import URL from clipboard
-
-
- 162, 21
-
-
- Import configuration file
-
-
- 0, 0
-
-
- 729, 25
+
+ groupBox1
8
+
+ *Recommended (auto)
+
+
+ 195, 143
+
+
+ groupBox1
+
+
+ panel2
+
+
+ 32
+
+
+ 23
+
+
+ 1
+
+
+ 6
+
+
+ 10
+
+
+ groupBox2
+
+
+ 14
+
+
+ True
+
+
+ 173, 12
+
+
+ Import configuration file
+
+
+ wechat-video
+
+
+ 9, 32
+
+
+ btnOK
+
+
+ 729, 10
+
+
+ 100, 7
+
+
+ 465, 146
+
+
+ True
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 22
+
+
+ 396, 54
+
+
+ 300, 53
+
+
+ 12, 31
+
+
+ 14
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ dtls
+
+
+ 47, 12
+
+
+ label4
+
+
+ groupBox2
+
+
+ panel2
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 0, 534
+
+
+ groupBox1
+
+
+ AddServerForm
+
+
+ wireguard
+
+
+ groupBox1
+
+
+ Server
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 303, 17
+
+
+ 2)ws host
+
+
+ txtAddress
+
+
+ True
+
+
+ 2)h2 path
+
+
+ True
+
+
+ 0
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 167, 12
+
+
+ 8
+
+
+ Transport
+
+
+ groupBox2
+
+
+ * Fill in manually
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 12
+
+
+ True
+
+
+ 12, 11
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 29
+
+
+ 1
+
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 143, 21
+
+
+ 1
+
+
+ True
+
+
+ txtPath
+
+
+ 162, 21
+
+
+ Bottom
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ txtRequestHost
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ btnGUID
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Alias (remarks)
+
+
+ groupBox2
+
+
+ 3)h2 host Separated by commas (,)
+
+
+ 4
+
+
+ 9, 169
+
+
+ &OK
+
+
+ 7
+
+
+ 3
+
+
+ http
+
+
+ True
+
+
+ 529, 189
+
+
+ 9
+
+
+ groupBox2
+
menuServer
-
- System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 20
+
+
+ TLS
+
+
+ 1
+
+
+ 3
+
+
+ UUID(id)
+
+
+ $this
+
+
+ MenuItemImportClipboard
+
+
+ True
+
+
+ $this
+
+
+ 3
+
+
+ groupBox1
+
+
+ cmbAllowInsecure
+
+
+ 237, 22
+
+
+ 143, 20
+
+
+ panTlsMore
+
+
+ 8
+
+
+ 0
+
+
+ 15
+
+
+ 0
+
+
+ System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 113, 12
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 192, 28
+
+
+ 203, 12
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 23, 12
+
+
+ 30
+
+
+ 14
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 23
+
+
+ 10
+
+
+ auto
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 6
+
+
+ 464, 115
+
+
+ 2
+
+
+ 9, 100
+
+
+ label3
+
+
+ srtp
+
+
+ 5
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 89, 12
+
+
+ Import URL from clipboard
+
+
+ True
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Camouflage domain(host)
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ *Default value tcp
+
+
+ MenuItemImportServer
+
+
+ 5
+
+
+ 31
+
+
+ 127, 239
+
+
+ 9, 243
+
+
+ 353, 147
+
+
+ none
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 8
+
+
+ groupBox1
+
+
+ label5
+
+
+ cmbSecurity
+
+
+ 3
+
+
+ label16
+
+
+ groupBox1
+
+
+ 237, 22
+
+
+ 16
+
+
+ 3
+
+
+ 28
+
+
+
+
+
+ groupBox2
+
+
+ Import client configuration
+
+
+ 12, 118
+
+
+ 4)QUIC securty
+
+
+ 0, 25
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 0
+
+
+ tcp
+
+
+ groupBox2
+
+
+ 270, 11
+
+
+ 75, 23
+
+
+ 23, 12
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ Camouflage type
+
+
+ 0
+
+
+ groupBox2
+
+
+ NoControl
+
+
+ 1)http host Separated by commas (,)
+
+
+ 33
+
+
+ label24
+
+
+ 59, 12
+
+
+ panel2
+
+
+ 119, 12
+
+
+ groupBox2
$this
-
- 3
+
+ True
+
+
+ label6
+
+
+ 59, 12
+
+
+ 10
+
+
+ 729, 25
+
+
+ cmbHeaderType
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 529, 207
+
+
+ label14
True
@@ -1320,49 +1413,7 @@
114
-
- 6, 12
-
-
- 729, 594
-
-
- Edit or add a [VMess] server
-
-
- MenuItem1
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- MenuItemImportClient
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- MenuItemImportServer
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripSeparator1
-
-
- System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- MenuItemImportClipboard
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- AddServerForm
-
-
- v2rayN.Forms.BaseServerForm, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
-
+
+ 17, 17
+
\ No newline at end of file
diff --git a/v2rayN/v2rayN/Forms/AddServerForm.zh-Hans.resx b/v2rayN/v2rayN/Forms/AddServerForm.zh-Hans.resx
index 489f5fd2..4bbfcc1f 100644
--- a/v2rayN/v2rayN/Forms/AddServerForm.zh-Hans.resx
+++ b/v2rayN/v2rayN/Forms/AddServerForm.zh-Hans.resx
@@ -120,18 +120,12 @@
取消(&C)
-
- 服务器
-
生成(&G)
*手填,方便识别管理
-
- 底层传输方式(transport)
-
149, 12
@@ -152,7 +146,7 @@
跳过证书验证(allowInsecure)
- 223, 7
+ 180, 7
350, 36
@@ -250,6 +244,9 @@
127, 67
+
+ 底层传输方式(transport)
+
113, 12
@@ -298,15 +295,12 @@
地址(address)
+
+ 服务器
+
确定(&O)
-
- 92, 21
-
-
- 导入配置文件
-
171, 22
@@ -328,6 +322,12 @@
从剪贴板导入URL
+
+ 92, 21
+
+
+ 导入配置文件
+
编辑或添加[VMess]服务器
diff --git a/v2rayN/v2rayN/Forms/MainForm.cs b/v2rayN/v2rayN/Forms/MainForm.cs
index d472f40b..b13e60cc 100644
--- a/v2rayN/v2rayN/Forms/MainForm.cs
+++ b/v2rayN/v2rayN/Forms/MainForm.cs
@@ -1398,69 +1398,15 @@ namespace v2rayN.Forms
///
private void UpdateSubscriptionProcess()
{
- AppendText(false, UIRes.I18N("MsgUpdateSubscriptionStart"));
-
- if (config.subItem == null || config.subItem.Count <= 0)
+ void _updateUI(bool refresh, string msg)
{
- AppendText(false, UIRes.I18N("MsgNoValidSubscription"));
- return;
- }
-
- for (int k = 1; k <= config.subItem.Count; k++)
- {
- 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)
+ AppendText(false, msg);
+ if (refresh)
{
- continue;
+ RefreshServers();
}
- if (Utils.IsNullOrEmpty(id) || Utils.IsNullOrEmpty(url))
- {
- AppendText(false, $"{hashCode}{UIRes.I18N("MsgNoValidSubscription")}");
- continue;
- }
-
- DownloadHandle downloadHandle3 = new DownloadHandle();
- downloadHandle3.UpdateCompleted += (sender2, args) =>
- {
- if (args.Success)
- {
- AppendText(false, $"{hashCode}{UIRes.I18N("MsgGetSubscriptionSuccessfully")}");
- string result = Utils.Base64Decode(args.Msg);
- if (Utils.IsNullOrEmpty(result))
- {
- AppendText(false, $"{hashCode}{UIRes.I18N("MsgSubscriptionDecodingFailed")}");
- return;
- }
-
- ConfigHandler.RemoveServerViaSubid(ref config, id);
- AppendText(false, $"{hashCode}{UIRes.I18N("MsgClearSubscription")}");
- RefreshServers();
- int ret = MainFormHandler.Instance.AddBatchServers(config, result, id);
- if (ret > 0)
- {
- RefreshServers();
- }
- else
- {
- AppendText(false, $"{hashCode}{UIRes.I18N("MsgFailedImportSubscription")}");
- }
- AppendText(false, $"{hashCode}{UIRes.I18N("MsgUpdateSubscriptionEnd")}");
- }
- else
- {
- AppendText(false, args.Msg);
- }
- };
- downloadHandle3.Error += (sender2, args) =>
- {
- AppendText(true, args.GetException().Message);
- };
-
- downloadHandle3.WebDownloadString(url);
- AppendText(false, $"{hashCode}{UIRes.I18N("MsgStartGettingSubscriptions")}");
- }
+ };
+ MainFormHandler.Instance.UpdateSubscriptionProcess(config, _updateUI);
}
private void tsbQRCodeSwitch_CheckedChanged(object sender, EventArgs e)
diff --git a/v2rayN/v2rayN/Handler/ConfigHandler.cs b/v2rayN/v2rayN/Handler/ConfigHandler.cs
index 0fccf551..2636752f 100644
--- a/v2rayN/v2rayN/Handler/ConfigHandler.cs
+++ b/v2rayN/v2rayN/Handler/ConfigHandler.cs
@@ -614,7 +614,10 @@ namespace v2rayN.Handler
vmessItem.id = vmessItem.id.TrimEx();
vmessItem.streamSecurity = Global.StreamSecurity;
- vmessItem.allowInsecure = "false";
+ if (Utils.IsNullOrEmpty(vmessItem.allowInsecure))
+ {
+ vmessItem.allowInsecure = config.defAllowInsecure.ToString();
+ }
if (index >= 0)
{
diff --git a/v2rayN/v2rayN/Handler/MainFormHandler.cs b/v2rayN/v2rayN/Handler/MainFormHandler.cs
index 7f21abe6..6842a5b9 100644
--- a/v2rayN/v2rayN/Handler/MainFormHandler.cs
+++ b/v2rayN/v2rayN/Handler/MainFormHandler.cs
@@ -9,6 +9,7 @@ namespace v2rayN.Handler
class MainFormHandler
{
private static MainFormHandler instance;
+ Action updateUI;
//private DownloadHandle downloadHandle2;
//private Config _config;
@@ -164,6 +165,77 @@ namespace v2rayN.Handler
return counter;
}
-
+
+
+ public void UpdateSubscriptionProcess(Config config, Action update)
+ {
+ updateUI = update;
+
+ updateUI(false, UIRes.I18N("MsgUpdateSubscriptionStart"));
+
+ if (config.subItem == null || config.subItem.Count <= 0)
+ {
+ updateUI(false, UIRes.I18N("MsgNoValidSubscription"));
+ return;
+ }
+
+ for (int k = 1; k <= config.subItem.Count; k++)
+ {
+ 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)
+ {
+ continue;
+ }
+ if (Utils.IsNullOrEmpty(id) || Utils.IsNullOrEmpty(url))
+ {
+ updateUI(false, $"{hashCode}{UIRes.I18N("MsgNoValidSubscription")}");
+ continue;
+ }
+
+ DownloadHandle downloadHandle3 = new DownloadHandle();
+ downloadHandle3.UpdateCompleted += (sender2, args) =>
+ {
+ if (args.Success)
+ {
+ updateUI(false, $"{hashCode}{UIRes.I18N("MsgGetSubscriptionSuccessfully")}");
+ string result = Utils.Base64Decode(args.Msg);
+ if (Utils.IsNullOrEmpty(result))
+ {
+ updateUI(false, $"{hashCode}{UIRes.I18N("MsgSubscriptionDecodingFailed")}");
+ return;
+ }
+
+ ConfigHandler.RemoveServerViaSubid(ref config, id);
+ updateUI(false, $"{hashCode}{UIRes.I18N("MsgClearSubscription")}");
+ // RefreshServers();
+ int ret = MainFormHandler.Instance.AddBatchServers(config, result, id);
+ if (ret > 0)
+ {
+ // RefreshServers();
+ }
+ else
+ {
+ updateUI(false, $"{hashCode}{UIRes.I18N("MsgFailedImportSubscription")}");
+ }
+ updateUI(true, $"{hashCode}{UIRes.I18N("MsgUpdateSubscriptionEnd")}");
+ }
+ else
+ {
+ updateUI(false, args.Msg);
+ }
+ };
+ downloadHandle3.Error += (sender2, args) =>
+ {
+ updateUI(false, args.GetException().Message);
+ };
+
+ downloadHandle3.WebDownloadString(url);
+ updateUI(false, $"{hashCode}{UIRes.I18N("MsgStartGettingSubscriptions")}");
+ }
+
+ }
+
}
}
diff --git a/v2rayN/v2rayN/Handler/ShareHandler.cs b/v2rayN/v2rayN/Handler/ShareHandler.cs
index 157988c8..b523f145 100644
--- a/v2rayN/v2rayN/Handler/ShareHandler.cs
+++ b/v2rayN/v2rayN/Handler/ShareHandler.cs
@@ -44,7 +44,8 @@ namespace v2rayN.Handler
type = item.headerType,
host = item.requestHost,
path = item.path,
- tls = item.streamSecurity
+ tls = item.streamSecurity,
+ sni = item.sni
};
url = Utils.ToJson(vmessQRCode);
@@ -90,9 +91,9 @@ namespace v2rayN.Handler
remark = "#" + Utils.UrlEncode(item.remarks);
}
string query = string.Empty;
- if (!Utils.IsNullOrEmpty(item.requestHost))
+ if (!Utils.IsNullOrEmpty(item.sni))
{
- query = string.Format("?sni={0}", Utils.UrlEncode(item.requestHost));
+ query = string.Format("?sni={0}", Utils.UrlEncode(item.sni));
}
url = string.Format("{0}@{1}:{2}",
item.id,
@@ -128,6 +129,10 @@ namespace v2rayN.Handler
{
dicQuery.Add("security", "none");
}
+ if (!Utils.IsNullOrEmpty(item.sni))
+ {
+ dicQuery.Add("sni", item.sni);
+ }
if (!Utils.IsNullOrEmpty(item.network))
{
dicQuery.Add("type", item.network);
@@ -294,6 +299,7 @@ namespace v2rayN.Handler
vmessItem.requestHost = Utils.ToString(vmessQRCode.host);
vmessItem.path = Utils.ToString(vmessQRCode.path);
vmessItem.streamSecurity = Utils.ToString(vmessQRCode.tls);
+ vmessItem.sni = Utils.ToString(vmessQRCode.sni);
}
ConfigHandler.UpgradeServerVersion(ref vmessItem);
@@ -374,7 +380,7 @@ namespace v2rayN.Handler
vmessItem.id = uri.UserInfo;
var qurery = HttpUtility.ParseQueryString(uri.Query);
- vmessItem.requestHost = qurery["sni"] ?? "";
+ vmessItem.sni = qurery["sni"] ?? "";
var remarks = uri.Fragment.Replace("#", "");
if (Utils.IsNullOrEmpty(remarks))
@@ -640,6 +646,7 @@ namespace v2rayN.Handler
item.flow = query["flow"] ?? "";
item.security = query["encryption"] ?? "none";
item.streamSecurity = query["security"] ?? "";
+ item.sni = query["sni"] ?? "";
item.network = query["type"] ?? "tcp";
switch (item.network)
{
diff --git a/v2rayN/v2rayN/Handler/V2rayConfigHandler.cs b/v2rayN/v2rayN/Handler/V2rayConfigHandler.cs
index b10e4974..e72a4c20 100644
--- a/v2rayN/v2rayN/Handler/V2rayConfigHandler.cs
+++ b/v2rayN/v2rayN/Handler/V2rayConfigHandler.cs
@@ -208,7 +208,7 @@ namespace v2rayN.Handler
foreach (var item in lockedItem.rules)
{
routingUserRule(item, ref v2rayConfig);
- }
+ }
}
}
}
@@ -553,6 +553,8 @@ namespace v2rayN.Handler
//远程服务器底层传输配置
streamSettings.network = config.network();
string host = config.requestHost();
+ string sni = config.sni();
+
//if tls
if (config.streamSecurity() == Global.StreamSecurity)
{
@@ -562,7 +564,11 @@ namespace v2rayN.Handler
{
allowInsecure = config.allowInsecure()
};
- if (!string.IsNullOrWhiteSpace(host))
+ if (!string.IsNullOrWhiteSpace(sni))
+ {
+ tlsSettings.serverName = sni;
+ }
+ else if (!string.IsNullOrWhiteSpace(host))
{
tlsSettings.serverName = Utils.String2List(host)[0];
}
@@ -578,7 +584,11 @@ namespace v2rayN.Handler
{
allowInsecure = config.allowInsecure()
};
- if (!string.IsNullOrWhiteSpace(host))
+ if (!string.IsNullOrWhiteSpace(sni))
+ {
+ xtlsSettings.serverName = sni;
+ }
+ else if (!string.IsNullOrWhiteSpace(host))
{
xtlsSettings.serverName = Utils.String2List(host)[0];
}
@@ -682,7 +692,14 @@ namespace v2rayN.Handler
streamSettings.quicSettings = quicsettings;
if (config.streamSecurity() == Global.StreamSecurity)
{
- streamSettings.tlsSettings.serverName = config.address();
+ if (!string.IsNullOrWhiteSpace(sni))
+ {
+ streamSettings.tlsSettings.serverName = sni;
+ }
+ else
+ {
+ streamSettings.tlsSettings.serverName = config.address();
+ }
}
break;
default:
diff --git a/v2rayN/v2rayN/Mode/Config.cs b/v2rayN/v2rayN/Mode/Config.cs
index a7733912..90189fe9 100644
--- a/v2rayN/v2rayN/Mode/Config.cs
+++ b/v2rayN/v2rayN/Mode/Config.cs
@@ -346,6 +346,14 @@ namespace v2rayN.Mode
}
return vmess[index].flow.TrimEx();
}
+ public string sni()
+ {
+ if (index < 0)
+ {
+ return string.Empty;
+ }
+ return vmess[index].sni.TrimEx();
+ }
#endregion
}
@@ -572,6 +580,13 @@ namespace v2rayN.Mode
{
get; set;
}
+ ///
+ /// tls sni
+ ///
+ public string sni
+ {
+ get; set;
+ }
}
[Serializable]
diff --git a/v2rayN/v2rayN/Mode/VmessQRCode.cs b/v2rayN/v2rayN/Mode/VmessQRCode.cs
index 0a9cc8ab..32fdbbd1 100644
--- a/v2rayN/v2rayN/Mode/VmessQRCode.cs
+++ b/v2rayN/v2rayN/Mode/VmessQRCode.cs
@@ -49,5 +49,9 @@ namespace v2rayN.Mode
/// 底层传输安全
///
public string tls { get; set; } = string.Empty;
- }
+ ///
+ /// SNI
+ ///
+ public string sni { get; set; } = string.Empty;
+ }
}
diff --git a/v2rayN/v2rayN/Properties/AssemblyInfo.cs b/v2rayN/v2rayN/Properties/AssemblyInfo.cs
index 7eb30d8a..bc383876 100644
--- a/v2rayN/v2rayN/Properties/AssemblyInfo.cs
+++ b/v2rayN/v2rayN/Properties/AssemblyInfo.cs
@@ -32,4 +32,4 @@ using System.Runtime.InteropServices;
// 方法是按如下所示使用“*”:
//[assembly: AssemblyVersion("1.0.*")]
//[assembly: AssemblyVersion("1.0.0")]
-[assembly: AssemblyFileVersion("4.11")]
+[assembly: AssemblyFileVersion("4.12")]