github.com/xmplusdev/xmcore@v1.8.11-0.20240412132628-5518b55526af/transport/internet/tls/config.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // versions:
     3  // 	protoc-gen-go v1.33.0
     4  // 	protoc        v4.23.1
     5  // source: transport/internet/tls/config.proto
     6  
     7  package tls
     8  
     9  import (
    10  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    11  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    12  	reflect "reflect"
    13  	sync "sync"
    14  )
    15  
    16  const (
    17  	// Verify that this generated code is sufficiently up-to-date.
    18  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    19  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    20  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    21  )
    22  
    23  type Certificate_Usage int32
    24  
    25  const (
    26  	Certificate_ENCIPHERMENT     Certificate_Usage = 0
    27  	Certificate_AUTHORITY_VERIFY Certificate_Usage = 1
    28  	Certificate_AUTHORITY_ISSUE  Certificate_Usage = 2
    29  )
    30  
    31  // Enum value maps for Certificate_Usage.
    32  var (
    33  	Certificate_Usage_name = map[int32]string{
    34  		0: "ENCIPHERMENT",
    35  		1: "AUTHORITY_VERIFY",
    36  		2: "AUTHORITY_ISSUE",
    37  	}
    38  	Certificate_Usage_value = map[string]int32{
    39  		"ENCIPHERMENT":     0,
    40  		"AUTHORITY_VERIFY": 1,
    41  		"AUTHORITY_ISSUE":  2,
    42  	}
    43  )
    44  
    45  func (x Certificate_Usage) Enum() *Certificate_Usage {
    46  	p := new(Certificate_Usage)
    47  	*p = x
    48  	return p
    49  }
    50  
    51  func (x Certificate_Usage) String() string {
    52  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    53  }
    54  
    55  func (Certificate_Usage) Descriptor() protoreflect.EnumDescriptor {
    56  	return file_transport_internet_tls_config_proto_enumTypes[0].Descriptor()
    57  }
    58  
    59  func (Certificate_Usage) Type() protoreflect.EnumType {
    60  	return &file_transport_internet_tls_config_proto_enumTypes[0]
    61  }
    62  
    63  func (x Certificate_Usage) Number() protoreflect.EnumNumber {
    64  	return protoreflect.EnumNumber(x)
    65  }
    66  
    67  // Deprecated: Use Certificate_Usage.Descriptor instead.
    68  func (Certificate_Usage) EnumDescriptor() ([]byte, []int) {
    69  	return file_transport_internet_tls_config_proto_rawDescGZIP(), []int{0, 0}
    70  }
    71  
    72  type Certificate struct {
    73  	state         protoimpl.MessageState
    74  	sizeCache     protoimpl.SizeCache
    75  	unknownFields protoimpl.UnknownFields
    76  
    77  	// TLS certificate in x509 format.
    78  	Certificate []byte `protobuf:"bytes,1,opt,name=certificate,proto3" json:"certificate,omitempty"`
    79  	// TLS key in x509 format.
    80  	Key          []byte            `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
    81  	Usage        Certificate_Usage `protobuf:"varint,3,opt,name=usage,proto3,enum=xray.transport.internet.tls.Certificate_Usage" json:"usage,omitempty"`
    82  	OcspStapling uint64            `protobuf:"varint,4,opt,name=ocsp_stapling,json=ocspStapling,proto3" json:"ocsp_stapling,omitempty"`
    83  	// TLS certificate path
    84  	CertificatePath string `protobuf:"bytes,5,opt,name=certificate_path,json=certificatePath,proto3" json:"certificate_path,omitempty"`
    85  	// TLS Key path
    86  	KeyPath string `protobuf:"bytes,6,opt,name=key_path,json=keyPath,proto3" json:"key_path,omitempty"`
    87  	// If true, one-Time Loading
    88  	OneTimeLoading bool `protobuf:"varint,7,opt,name=One_time_loading,json=OneTimeLoading,proto3" json:"One_time_loading,omitempty"`
    89  }
    90  
    91  func (x *Certificate) Reset() {
    92  	*x = Certificate{}
    93  	if protoimpl.UnsafeEnabled {
    94  		mi := &file_transport_internet_tls_config_proto_msgTypes[0]
    95  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    96  		ms.StoreMessageInfo(mi)
    97  	}
    98  }
    99  
   100  func (x *Certificate) String() string {
   101  	return protoimpl.X.MessageStringOf(x)
   102  }
   103  
   104  func (*Certificate) ProtoMessage() {}
   105  
   106  func (x *Certificate) ProtoReflect() protoreflect.Message {
   107  	mi := &file_transport_internet_tls_config_proto_msgTypes[0]
   108  	if protoimpl.UnsafeEnabled && x != nil {
   109  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   110  		if ms.LoadMessageInfo() == nil {
   111  			ms.StoreMessageInfo(mi)
   112  		}
   113  		return ms
   114  	}
   115  	return mi.MessageOf(x)
   116  }
   117  
   118  // Deprecated: Use Certificate.ProtoReflect.Descriptor instead.
   119  func (*Certificate) Descriptor() ([]byte, []int) {
   120  	return file_transport_internet_tls_config_proto_rawDescGZIP(), []int{0}
   121  }
   122  
   123  func (x *Certificate) GetCertificate() []byte {
   124  	if x != nil {
   125  		return x.Certificate
   126  	}
   127  	return nil
   128  }
   129  
   130  func (x *Certificate) GetKey() []byte {
   131  	if x != nil {
   132  		return x.Key
   133  	}
   134  	return nil
   135  }
   136  
   137  func (x *Certificate) GetUsage() Certificate_Usage {
   138  	if x != nil {
   139  		return x.Usage
   140  	}
   141  	return Certificate_ENCIPHERMENT
   142  }
   143  
   144  func (x *Certificate) GetOcspStapling() uint64 {
   145  	if x != nil {
   146  		return x.OcspStapling
   147  	}
   148  	return 0
   149  }
   150  
   151  func (x *Certificate) GetCertificatePath() string {
   152  	if x != nil {
   153  		return x.CertificatePath
   154  	}
   155  	return ""
   156  }
   157  
   158  func (x *Certificate) GetKeyPath() string {
   159  	if x != nil {
   160  		return x.KeyPath
   161  	}
   162  	return ""
   163  }
   164  
   165  func (x *Certificate) GetOneTimeLoading() bool {
   166  	if x != nil {
   167  		return x.OneTimeLoading
   168  	}
   169  	return false
   170  }
   171  
   172  type Config struct {
   173  	state         protoimpl.MessageState
   174  	sizeCache     protoimpl.SizeCache
   175  	unknownFields protoimpl.UnknownFields
   176  
   177  	// Whether or not to allow self-signed certificates.
   178  	AllowInsecure bool `protobuf:"varint,1,opt,name=allow_insecure,json=allowInsecure,proto3" json:"allow_insecure,omitempty"`
   179  	// List of certificates to be served on server.
   180  	Certificate []*Certificate `protobuf:"bytes,2,rep,name=certificate,proto3" json:"certificate,omitempty"`
   181  	// Override server name.
   182  	ServerName string `protobuf:"bytes,3,opt,name=server_name,json=serverName,proto3" json:"server_name,omitempty"`
   183  	// Lists of string as ALPN values.
   184  	NextProtocol []string `protobuf:"bytes,4,rep,name=next_protocol,json=nextProtocol,proto3" json:"next_protocol,omitempty"`
   185  	// Whether or not to enable session (ticket) resumption.
   186  	EnableSessionResumption bool `protobuf:"varint,5,opt,name=enable_session_resumption,json=enableSessionResumption,proto3" json:"enable_session_resumption,omitempty"`
   187  	// If true, root certificates on the system will not be loaded for
   188  	// verification.
   189  	DisableSystemRoot bool `protobuf:"varint,6,opt,name=disable_system_root,json=disableSystemRoot,proto3" json:"disable_system_root,omitempty"`
   190  	// The minimum TLS version.
   191  	MinVersion string `protobuf:"bytes,7,opt,name=min_version,json=minVersion,proto3" json:"min_version,omitempty"`
   192  	// The maximum TLS version.
   193  	MaxVersion string `protobuf:"bytes,8,opt,name=max_version,json=maxVersion,proto3" json:"max_version,omitempty"`
   194  	// Specify cipher suites, except for TLS 1.3.
   195  	CipherSuites string `protobuf:"bytes,9,opt,name=cipher_suites,json=cipherSuites,proto3" json:"cipher_suites,omitempty"`
   196  	// Whether the server selects its most preferred ciphersuite.
   197  	PreferServerCipherSuites bool `protobuf:"varint,10,opt,name=prefer_server_cipher_suites,json=preferServerCipherSuites,proto3" json:"prefer_server_cipher_suites,omitempty"`
   198  	// TLS Client Hello fingerprint (uTLS).
   199  	Fingerprint      string `protobuf:"bytes,11,opt,name=fingerprint,proto3" json:"fingerprint,omitempty"`
   200  	RejectUnknownSni bool   `protobuf:"varint,12,opt,name=reject_unknown_sni,json=rejectUnknownSni,proto3" json:"reject_unknown_sni,omitempty"`
   201  	// @Document A pinned certificate chain sha256 hash.
   202  	// @Document If the server's hash does not match this value, the connection will be aborted.
   203  	// @Document This value replace allow_insecure.
   204  	// @Critical
   205  	PinnedPeerCertificateChainSha256 [][]byte `protobuf:"bytes,13,rep,name=pinned_peer_certificate_chain_sha256,json=pinnedPeerCertificateChainSha256,proto3" json:"pinned_peer_certificate_chain_sha256,omitempty"`
   206  	// @Document A pinned certificate public key sha256 hash.
   207  	// @Document If the server's public key hash does not match this value, the connection will be aborted.
   208  	// @Document This value replace allow_insecure.
   209  	// @Critical
   210  	PinnedPeerCertificatePublicKeySha256 [][]byte `protobuf:"bytes,14,rep,name=pinned_peer_certificate_public_key_sha256,json=pinnedPeerCertificatePublicKeySha256,proto3" json:"pinned_peer_certificate_public_key_sha256,omitempty"`
   211  	MasterKeyLog                         string   `protobuf:"bytes,15,opt,name=master_key_log,json=masterKeyLog,proto3" json:"master_key_log,omitempty"`
   212  }
   213  
   214  func (x *Config) Reset() {
   215  	*x = Config{}
   216  	if protoimpl.UnsafeEnabled {
   217  		mi := &file_transport_internet_tls_config_proto_msgTypes[1]
   218  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   219  		ms.StoreMessageInfo(mi)
   220  	}
   221  }
   222  
   223  func (x *Config) String() string {
   224  	return protoimpl.X.MessageStringOf(x)
   225  }
   226  
   227  func (*Config) ProtoMessage() {}
   228  
   229  func (x *Config) ProtoReflect() protoreflect.Message {
   230  	mi := &file_transport_internet_tls_config_proto_msgTypes[1]
   231  	if protoimpl.UnsafeEnabled && x != nil {
   232  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   233  		if ms.LoadMessageInfo() == nil {
   234  			ms.StoreMessageInfo(mi)
   235  		}
   236  		return ms
   237  	}
   238  	return mi.MessageOf(x)
   239  }
   240  
   241  // Deprecated: Use Config.ProtoReflect.Descriptor instead.
   242  func (*Config) Descriptor() ([]byte, []int) {
   243  	return file_transport_internet_tls_config_proto_rawDescGZIP(), []int{1}
   244  }
   245  
   246  func (x *Config) GetAllowInsecure() bool {
   247  	if x != nil {
   248  		return x.AllowInsecure
   249  	}
   250  	return false
   251  }
   252  
   253  func (x *Config) GetCertificate() []*Certificate {
   254  	if x != nil {
   255  		return x.Certificate
   256  	}
   257  	return nil
   258  }
   259  
   260  func (x *Config) GetServerName() string {
   261  	if x != nil {
   262  		return x.ServerName
   263  	}
   264  	return ""
   265  }
   266  
   267  func (x *Config) GetNextProtocol() []string {
   268  	if x != nil {
   269  		return x.NextProtocol
   270  	}
   271  	return nil
   272  }
   273  
   274  func (x *Config) GetEnableSessionResumption() bool {
   275  	if x != nil {
   276  		return x.EnableSessionResumption
   277  	}
   278  	return false
   279  }
   280  
   281  func (x *Config) GetDisableSystemRoot() bool {
   282  	if x != nil {
   283  		return x.DisableSystemRoot
   284  	}
   285  	return false
   286  }
   287  
   288  func (x *Config) GetMinVersion() string {
   289  	if x != nil {
   290  		return x.MinVersion
   291  	}
   292  	return ""
   293  }
   294  
   295  func (x *Config) GetMaxVersion() string {
   296  	if x != nil {
   297  		return x.MaxVersion
   298  	}
   299  	return ""
   300  }
   301  
   302  func (x *Config) GetCipherSuites() string {
   303  	if x != nil {
   304  		return x.CipherSuites
   305  	}
   306  	return ""
   307  }
   308  
   309  func (x *Config) GetPreferServerCipherSuites() bool {
   310  	if x != nil {
   311  		return x.PreferServerCipherSuites
   312  	}
   313  	return false
   314  }
   315  
   316  func (x *Config) GetFingerprint() string {
   317  	if x != nil {
   318  		return x.Fingerprint
   319  	}
   320  	return ""
   321  }
   322  
   323  func (x *Config) GetRejectUnknownSni() bool {
   324  	if x != nil {
   325  		return x.RejectUnknownSni
   326  	}
   327  	return false
   328  }
   329  
   330  func (x *Config) GetPinnedPeerCertificateChainSha256() [][]byte {
   331  	if x != nil {
   332  		return x.PinnedPeerCertificateChainSha256
   333  	}
   334  	return nil
   335  }
   336  
   337  func (x *Config) GetPinnedPeerCertificatePublicKeySha256() [][]byte {
   338  	if x != nil {
   339  		return x.PinnedPeerCertificatePublicKeySha256
   340  	}
   341  	return nil
   342  }
   343  
   344  func (x *Config) GetMasterKeyLog() string {
   345  	if x != nil {
   346  		return x.MasterKeyLog
   347  	}
   348  	return ""
   349  }
   350  
   351  var File_transport_internet_tls_config_proto protoreflect.FileDescriptor
   352  
   353  var file_transport_internet_tls_config_proto_rawDesc = []byte{
   354  	0x0a, 0x23, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65,
   355  	0x72, 0x6e, 0x65, 0x74, 0x2f, 0x74, 0x6c, 0x73, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
   356  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1b, 0x78, 0x72, 0x61, 0x79, 0x2e, 0x74, 0x72, 0x61, 0x6e,
   357  	0x73, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x2e, 0x74,
   358  	0x6c, 0x73, 0x22, 0xe2, 0x02, 0x0a, 0x0b, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
   359  	0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
   360  	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
   361  	0x63, 0x61, 0x74, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28,
   362  	0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x44, 0x0a, 0x05, 0x75, 0x73, 0x61, 0x67, 0x65, 0x18,
   363  	0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x78, 0x72, 0x61, 0x79, 0x2e, 0x74, 0x72, 0x61,
   364  	0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x2e,
   365  	0x74, 0x6c, 0x73, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x2e,
   366  	0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x05, 0x75, 0x73, 0x61, 0x67, 0x65, 0x12, 0x23, 0x0a, 0x0d,
   367  	0x6f, 0x63, 0x73, 0x70, 0x5f, 0x73, 0x74, 0x61, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20,
   368  	0x01, 0x28, 0x04, 0x52, 0x0c, 0x6f, 0x63, 0x73, 0x70, 0x53, 0x74, 0x61, 0x70, 0x6c, 0x69, 0x6e,
   369  	0x67, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65,
   370  	0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x65, 0x72,
   371  	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x19, 0x0a, 0x08,
   372  	0x6b, 0x65, 0x79, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
   373  	0x6b, 0x65, 0x79, 0x50, 0x61, 0x74, 0x68, 0x12, 0x28, 0x0a, 0x10, 0x4f, 0x6e, 0x65, 0x5f, 0x74,
   374  	0x69, 0x6d, 0x65, 0x5f, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28,
   375  	0x08, 0x52, 0x0e, 0x4f, 0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x4c, 0x6f, 0x61, 0x64, 0x69, 0x6e,
   376  	0x67, 0x22, 0x44, 0x0a, 0x05, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x45, 0x4e,
   377  	0x43, 0x49, 0x50, 0x48, 0x45, 0x52, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10,
   378  	0x41, 0x55, 0x54, 0x48, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x59,
   379  	0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x55, 0x54, 0x48, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f,
   380  	0x49, 0x53, 0x53, 0x55, 0x45, 0x10, 0x02, 0x22, 0xf2, 0x05, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66,
   381  	0x69, 0x67, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x69, 0x6e, 0x73, 0x65,
   382  	0x63, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f,
   383  	0x77, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x63, 0x65, 0x72,
   384  	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28,
   385  	0x2e, 0x78, 0x72, 0x61, 0x79, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2e,
   386  	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x2e, 0x74, 0x6c, 0x73, 0x2e, 0x43, 0x65, 0x72,
   387  	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66,
   388  	0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f,
   389  	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76,
   390  	0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70,
   391  	0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x6e,
   392  	0x65, 0x78, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x3a, 0x0a, 0x19, 0x65,
   393  	0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65,
   394  	0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17,
   395  	0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
   396  	0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62,
   397  	0x6c, 0x65, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x06,
   398  	0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x79, 0x73,
   399  	0x74, 0x65, 0x6d, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x5f, 0x76,
   400  	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x69,
   401  	0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f,
   402  	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d,
   403  	0x61, 0x78, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x69, 0x70,
   404  	0x68, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x69, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09,
   405  	0x52, 0x0c, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x53, 0x75, 0x69, 0x74, 0x65, 0x73, 0x12, 0x3d,
   406  	0x0a, 0x1b, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f,
   407  	0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x69, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20,
   408  	0x01, 0x28, 0x08, 0x52, 0x18, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x65,
   409  	0x72, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x53, 0x75, 0x69, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a,
   410  	0x0b, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01,
   411  	0x28, 0x09, 0x52, 0x0b, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x12,
   412  	0x2c, 0x0a, 0x12, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77,
   413  	0x6e, 0x5f, 0x73, 0x6e, 0x69, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x72, 0x65, 0x6a,
   414  	0x65, 0x63, 0x74, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x53, 0x6e, 0x69, 0x12, 0x4e, 0x0a,
   415  	0x24, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x65, 0x72,
   416  	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x73,
   417  	0x68, 0x61, 0x32, 0x35, 0x36, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x20, 0x70, 0x69, 0x6e,
   418  	0x6e, 0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
   419  	0x74, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x53, 0x68, 0x61, 0x32, 0x35, 0x36, 0x12, 0x57, 0x0a,
   420  	0x29, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x63, 0x65, 0x72,
   421  	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f,
   422  	0x6b, 0x65, 0x79, 0x5f, 0x73, 0x68, 0x61, 0x32, 0x35, 0x36, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0c,
   423  	0x52, 0x24, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74,
   424  	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79,
   425  	0x53, 0x68, 0x61, 0x32, 0x35, 0x36, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72,
   426  	0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x6c, 0x6f, 0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
   427  	0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x4c, 0x6f, 0x67, 0x42, 0x73, 0x0a, 0x1f,
   428  	0x63, 0x6f, 0x6d, 0x2e, 0x78, 0x72, 0x61, 0x79, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f,
   429  	0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x2e, 0x74, 0x6c, 0x73, 0x50,
   430  	0x01, 0x5a, 0x30, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x74,
   431  	0x6c, 0x73, 0x2f, 0x78, 0x72, 0x61, 0x79, 0x2d, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x74, 0x72, 0x61,
   432  	0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x2f,
   433  	0x74, 0x6c, 0x73, 0xaa, 0x02, 0x1b, 0x58, 0x72, 0x61, 0x79, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73,
   434  	0x70, 0x6f, 0x72, 0x74, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x2e, 0x54, 0x6c,
   435  	0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
   436  }
   437  
   438  var (
   439  	file_transport_internet_tls_config_proto_rawDescOnce sync.Once
   440  	file_transport_internet_tls_config_proto_rawDescData = file_transport_internet_tls_config_proto_rawDesc
   441  )
   442  
   443  func file_transport_internet_tls_config_proto_rawDescGZIP() []byte {
   444  	file_transport_internet_tls_config_proto_rawDescOnce.Do(func() {
   445  		file_transport_internet_tls_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_transport_internet_tls_config_proto_rawDescData)
   446  	})
   447  	return file_transport_internet_tls_config_proto_rawDescData
   448  }
   449  
   450  var file_transport_internet_tls_config_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
   451  var file_transport_internet_tls_config_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
   452  var file_transport_internet_tls_config_proto_goTypes = []interface{}{
   453  	(Certificate_Usage)(0), // 0: xray.transport.internet.tls.Certificate.Usage
   454  	(*Certificate)(nil),    // 1: xray.transport.internet.tls.Certificate
   455  	(*Config)(nil),         // 2: xray.transport.internet.tls.Config
   456  }
   457  var file_transport_internet_tls_config_proto_depIdxs = []int32{
   458  	0, // 0: xray.transport.internet.tls.Certificate.usage:type_name -> xray.transport.internet.tls.Certificate.Usage
   459  	1, // 1: xray.transport.internet.tls.Config.certificate:type_name -> xray.transport.internet.tls.Certificate
   460  	2, // [2:2] is the sub-list for method output_type
   461  	2, // [2:2] is the sub-list for method input_type
   462  	2, // [2:2] is the sub-list for extension type_name
   463  	2, // [2:2] is the sub-list for extension extendee
   464  	0, // [0:2] is the sub-list for field type_name
   465  }
   466  
   467  func init() { file_transport_internet_tls_config_proto_init() }
   468  func file_transport_internet_tls_config_proto_init() {
   469  	if File_transport_internet_tls_config_proto != nil {
   470  		return
   471  	}
   472  	if !protoimpl.UnsafeEnabled {
   473  		file_transport_internet_tls_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   474  			switch v := v.(*Certificate); i {
   475  			case 0:
   476  				return &v.state
   477  			case 1:
   478  				return &v.sizeCache
   479  			case 2:
   480  				return &v.unknownFields
   481  			default:
   482  				return nil
   483  			}
   484  		}
   485  		file_transport_internet_tls_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
   486  			switch v := v.(*Config); i {
   487  			case 0:
   488  				return &v.state
   489  			case 1:
   490  				return &v.sizeCache
   491  			case 2:
   492  				return &v.unknownFields
   493  			default:
   494  				return nil
   495  			}
   496  		}
   497  	}
   498  	type x struct{}
   499  	out := protoimpl.TypeBuilder{
   500  		File: protoimpl.DescBuilder{
   501  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
   502  			RawDescriptor: file_transport_internet_tls_config_proto_rawDesc,
   503  			NumEnums:      1,
   504  			NumMessages:   2,
   505  			NumExtensions: 0,
   506  			NumServices:   0,
   507  		},
   508  		GoTypes:           file_transport_internet_tls_config_proto_goTypes,
   509  		DependencyIndexes: file_transport_internet_tls_config_proto_depIdxs,
   510  		EnumInfos:         file_transport_internet_tls_config_proto_enumTypes,
   511  		MessageInfos:      file_transport_internet_tls_config_proto_msgTypes,
   512  	}.Build()
   513  	File_transport_internet_tls_config_proto = out.File
   514  	file_transport_internet_tls_config_proto_rawDesc = nil
   515  	file_transport_internet_tls_config_proto_goTypes = nil
   516  	file_transport_internet_tls_config_proto_depIdxs = nil
   517  }