From 7845569319613a3a12c837c0a09b0e396b33fb0c Mon Sep 17 00:00:00 2001 From: 2dust <31833384+2dust@users.noreply.github.com> Date: Tue, 9 May 2023 18:44:04 +0800 Subject: [PATCH] Add ws headers for sing-box --- v2rayN/v2rayN/Handler/CoreConfigSingbox.cs | 7 +++++++ v2rayN/v2rayN/Mode/ConfigItems.cs | 2 +- v2rayN/v2rayN/Mode/SingboxConfig.cs | 7 +++++++ v2rayN/v2rayN/ViewModels/DNSSettingViewModel.cs | 1 - v2rayN/v2rayN/ViewModels/RoutingRuleDetailsViewModel.cs | 1 + 5 files changed, 16 insertions(+), 2 deletions(-) diff --git a/v2rayN/v2rayN/Handler/CoreConfigSingbox.cs b/v2rayN/v2rayN/Handler/CoreConfigSingbox.cs index 90642287..9c5d2ede 100644 --- a/v2rayN/v2rayN/Handler/CoreConfigSingbox.cs +++ b/v2rayN/v2rayN/Handler/CoreConfigSingbox.cs @@ -367,6 +367,13 @@ namespace v2rayN.Handler case "ws": transport.type = "ws"; transport.path = Utils.IsNullOrEmpty(node.path) ? null : node.path; + if (!Utils.IsNullOrEmpty(node.requestHost)) + { + transport.headers = new() + { + Host = node.requestHost + }; + } break; case "quic": diff --git a/v2rayN/v2rayN/Mode/ConfigItems.cs b/v2rayN/v2rayN/Mode/ConfigItems.cs index f1033e20..22817422 100644 --- a/v2rayN/v2rayN/Mode/ConfigItems.cs +++ b/v2rayN/v2rayN/Mode/ConfigItems.cs @@ -163,7 +163,7 @@ namespace v2rayN.Mode public bool enableTun { get; set; } public bool strictRoute { get; set; } public string stack { get; set; } - public int mtu { get; set; } + public int mtu { get; set; } } [Serializable] diff --git a/v2rayN/v2rayN/Mode/SingboxConfig.cs b/v2rayN/v2rayN/Mode/SingboxConfig.cs index 7c30fa32..ed5ada0e 100644 --- a/v2rayN/v2rayN/Mode/SingboxConfig.cs +++ b/v2rayN/v2rayN/Mode/SingboxConfig.cs @@ -148,12 +148,19 @@ public string type { get; set; } public List? host { get; set; } public string? path { get; set; } + public Headers4Sbox? headers { get; set; } + public string service_name { get; set; } public string idle_timeout { get; set; } public string ping_timeout { get; set; } public bool? permit_without_stream { get; set; } } + public class Headers4Sbox + { + public string? Host { get; set; } + } + public class Server4Sbox { public string tag { get; set; } diff --git a/v2rayN/v2rayN/ViewModels/DNSSettingViewModel.cs b/v2rayN/v2rayN/ViewModels/DNSSettingViewModel.cs index b40d884f..3ead0dcf 100644 --- a/v2rayN/v2rayN/ViewModels/DNSSettingViewModel.cs +++ b/v2rayN/v2rayN/ViewModels/DNSSettingViewModel.cs @@ -19,7 +19,6 @@ namespace v2rayN.ViewModels [Reactive] public string normalDNS { get; set; } [Reactive] public string normalDNS2 { get; set; } [Reactive] public string tunDNS2 { get; set; } - public ReactiveCommand SaveCmd { get; } public ReactiveCommand ImportDefConfig4V2rayCmd { get; } diff --git a/v2rayN/v2rayN/ViewModels/RoutingRuleDetailsViewModel.cs b/v2rayN/v2rayN/ViewModels/RoutingRuleDetailsViewModel.cs index 18be79bd..a21486aa 100644 --- a/v2rayN/v2rayN/ViewModels/RoutingRuleDetailsViewModel.cs +++ b/v2rayN/v2rayN/ViewModels/RoutingRuleDetailsViewModel.cs @@ -27,6 +27,7 @@ namespace v2rayN.ViewModels [Reactive] public string IP { get; set; } + [Reactive] public string Process { get; set; }