1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2025-01-02 23:47:07 -05:00

support server name override

This commit is contained in:
Darien Raymond 2016-12-11 23:58:37 +01:00
parent eee23e6718
commit a11d2ce9d6
No known key found for this signature in database
GPG Key ID: 7251FFA14BB18169
4 changed files with 30 additions and 17 deletions

View File

@ -148,6 +148,7 @@ type TLSCertConfig struct {
type TLSConfig struct { type TLSConfig struct {
Insecure bool `json:"allowInsecure"` Insecure bool `json:"allowInsecure"`
Certs []*TLSCertConfig `json:"certificates"` Certs []*TLSCertConfig `json:"certificates"`
ServerName string `json:"serverName"`
} }
func (v *TLSConfig) Build() (*loader.TypedSettings, error) { func (v *TLSConfig) Build() (*loader.TypedSettings, error) {
@ -168,6 +169,9 @@ func (v *TLSConfig) Build() (*loader.TypedSettings, error) {
} }
} }
config.AllowInsecure = v.Insecure config.AllowInsecure = v.Insecure
if len(v.ServerName) > 0 {
config.ServerName = v.ServerName
}
return loader.NewTypedSettings(config), nil return loader.NewTypedSettings(config), nil
} }

View File

@ -34,6 +34,9 @@ func (v *Config) GetTLSConfig() *tls.Config {
config.InsecureSkipVerify = v.AllowInsecure config.InsecureSkipVerify = v.AllowInsecure
config.Certificates = v.BuildCertificates() config.Certificates = v.BuildCertificates()
config.BuildNameToCertificate() config.BuildNameToCertificate()
if len(v.ServerName) > 0 {
config.ServerName = v.ServerName
}
return config return config
} }

View File

@ -46,6 +46,8 @@ type Config struct {
AllowInsecure bool `protobuf:"varint,1,opt,name=allow_insecure,json=allowInsecure" json:"allow_insecure,omitempty"` AllowInsecure bool `protobuf:"varint,1,opt,name=allow_insecure,json=allowInsecure" json:"allow_insecure,omitempty"`
// List of certificates to be served on server. // List of certificates to be served on server.
Certificate []*Certificate `protobuf:"bytes,2,rep,name=certificate" json:"certificate,omitempty"` Certificate []*Certificate `protobuf:"bytes,2,rep,name=certificate" json:"certificate,omitempty"`
// Override server name.
ServerName string `protobuf:"bytes,3,opt,name=server_name,json=serverName" json:"server_name,omitempty"`
} }
func (m *Config) Reset() { *m = Config{} } func (m *Config) Reset() { *m = Config{} }
@ -68,19 +70,20 @@ func init() {
func init() { proto.RegisterFile("v2ray.com/core/transport/internet/tls/config.proto", fileDescriptor0) } func init() { proto.RegisterFile("v2ray.com/core/transport/internet/tls/config.proto", fileDescriptor0) }
var fileDescriptor0 = []byte{ var fileDescriptor0 = []byte{
// 218 bytes of a gzipped FileDescriptorProto // 240 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x84, 0x50, 0xb1, 0x4a, 0x03, 0x41, 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x84, 0x50, 0xc1, 0x4a, 0x03, 0x31,
0x10, 0xe5, 0x72, 0x10, 0x64, 0x57, 0x45, 0xb6, 0x4a, 0x79, 0x06, 0x02, 0xa9, 0x66, 0xe1, 0xac, 0x10, 0x65, 0xbb, 0x50, 0x74, 0xa2, 0x22, 0x39, 0xed, 0xcd, 0xb5, 0x50, 0xd8, 0x53, 0x02, 0xeb,
0x2c, 0x4d, 0x2a, 0xb1, 0x09, 0x57, 0xda, 0xc8, 0xba, 0x4c, 0x64, 0x61, 0xb3, 0x13, 0x66, 0x47, 0xc9, 0xa3, 0xed, 0x49, 0x04, 0x29, 0x7b, 0xf4, 0x52, 0x62, 0x98, 0x4a, 0x20, 0x9b, 0x94, 0xc9,
0x25, 0xa5, 0x7f, 0x2e, 0xd9, 0x78, 0x72, 0x57, 0x5d, 0x37, 0xf3, 0xe6, 0xcd, 0x7b, 0x8f, 0xa7, 0x58, 0xe9, 0xef, 0xf8, 0xa5, 0xd2, 0xac, 0x2d, 0xdb, 0x53, 0x6f, 0xc9, 0x9b, 0x37, 0xef, 0xbd,
0xda, 0xaf, 0x96, 0xdd, 0x09, 0x3c, 0x1d, 0xac, 0x27, 0x46, 0x2b, 0xec, 0x52, 0x3e, 0x12, 0x8b, 0x79, 0xd0, 0xee, 0x5a, 0x32, 0x7b, 0x65, 0x63, 0xaf, 0x6d, 0x24, 0xd4, 0x4c, 0x26, 0xa4, 0x6d,
0x0d, 0x49, 0x90, 0x13, 0x8a, 0x95, 0x98, 0xad, 0xa7, 0xb4, 0x0f, 0x1f, 0x70, 0x64, 0x12, 0x32, 0x24, 0xd6, 0x2e, 0x30, 0x52, 0x40, 0xd6, 0xec, 0x93, 0xb6, 0x31, 0x6c, 0xdc, 0x97, 0xda, 0x52,
0xf7, 0xfd, 0x0f, 0x23, 0xfc, 0xf3, 0xa1, 0xe7, 0x83, 0xc4, 0xbc, 0x7c, 0x52, 0x7a, 0x8b, 0x2c, 0xe4, 0x28, 0x1f, 0x8f, 0x3b, 0x84, 0xea, 0xc4, 0x57, 0x47, 0xbe, 0x62, 0x9f, 0x66, 0x2f, 0x20,
0x61, 0x1f, 0xbc, 0x13, 0x34, 0xcd, 0x68, 0x5d, 0x54, 0x4d, 0xb5, 0xbe, 0xee, 0x46, 0x8c, 0x3b, 0x96, 0x48, 0xec, 0x36, 0xce, 0x1a, 0x46, 0x59, 0x9f, 0x7d, 0xab, 0xa2, 0x2e, 0x9a, 0x9b, 0xee,
0x55, 0xbf, 0xe0, 0x69, 0x31, 0x2b, 0x97, 0xf3, 0xb8, 0xfc, 0xa9, 0xd4, 0x7c, 0x5b, 0x6c, 0xcd, 0x8c, 0x71, 0x0f, 0xe5, 0x1b, 0xee, 0xab, 0x49, 0x9e, 0x1c, 0x9e, 0xb3, 0xdf, 0x02, 0xa6, 0xcb,
0x4a, 0xdd, 0xba, 0x18, 0xe9, 0xfb, 0x2d, 0xa4, 0x8c, 0xfe, 0x93, 0x2f, 0x0a, 0x57, 0xdd, 0x4d, 0x6c, 0x2b, 0xe7, 0x70, 0x67, 0xbc, 0x8f, 0x3f, 0x6b, 0x17, 0x12, 0xda, 0x6f, 0x1a, 0x14, 0xae,
0x41, 0x9f, 0xff, 0x40, 0xb3, 0x53, 0xda, 0x0f, 0x5c, 0x66, 0x4d, 0xbd, 0xd6, 0x2d, 0xc0, 0x64, 0xba, 0xdb, 0x8c, 0xbe, 0xfe, 0x83, 0x72, 0x05, 0xc2, 0x8e, 0x5c, 0x26, 0x75, 0xd9, 0x88, 0x56,
0x5a, 0x18, 0x04, 0xe9, 0x86, 0x12, 0x9b, 0x47, 0xb5, 0xf2, 0x74, 0x98, 0x56, 0xd8, 0xe8, 0x4b, 0xa9, 0x8b, 0x69, 0xd5, 0x28, 0x48, 0x37, 0x96, 0x90, 0x0f, 0x20, 0x12, 0xd2, 0x0e, 0x69, 0x1d,
0xd2, 0xdd, 0xb9, 0x9f, 0xd7, 0x5a, 0x62, 0x7e, 0x9f, 0x97, 0xae, 0x1e, 0x7e, 0x03, 0x00, 0x00, 0x4c, 0x8f, 0x55, 0x59, 0x17, 0xcd, 0x75, 0x07, 0x03, 0xf4, 0x6e, 0x7a, 0x5c, 0x3c, 0xc3, 0xdc,
0xff, 0xff, 0x5d, 0x97, 0x5b, 0x86, 0x61, 0x01, 0x00, 0x00, 0xc6, 0xfe, 0xb2, 0xc5, 0x42, 0x0c, 0xa7, 0xac, 0x0e, 0x05, 0x7e, 0x94, 0xec, 0xd3, 0xe7, 0x34,
0x97, 0xf9, 0xf4, 0x17, 0x00, 0x00, 0xff, 0xff, 0x42, 0x2a, 0x28, 0x66, 0x82, 0x01, 0x00, 0x00,
} }

View File

@ -19,4 +19,7 @@ message Config {
// List of certificates to be served on server. // List of certificates to be served on server.
repeated Certificate certificate = 2; repeated Certificate certificate = 2;
// Override server name.
string server_name = 3;
} }