1// Code generated by protoc-gen-go. DO NOT EDIT.
2// versions:
3// 	protoc-gen-go v1.25.0
4// 	protoc        v3.15.5
5// source: transport/internet/config.proto
6
7package internet
8
9import (
10	proto "github.com/golang/protobuf/proto"
11	serial "github.com/v2fly/v2ray-core/v4/common/serial"
12	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
13	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
14	reflect "reflect"
15	sync "sync"
16)
17
18const (
19	// Verify that this generated code is sufficiently up-to-date.
20	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
21	// Verify that runtime/protoimpl is sufficiently up-to-date.
22	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
23)
24
25// This is a compile-time assertion that a sufficiently up-to-date version
26// of the legacy proto package is being used.
27const _ = proto.ProtoPackageIsVersion4
28
29type TransportProtocol int32
30
31const (
32	TransportProtocol_TCP          TransportProtocol = 0
33	TransportProtocol_UDP          TransportProtocol = 1
34	TransportProtocol_MKCP         TransportProtocol = 2
35	TransportProtocol_WebSocket    TransportProtocol = 3
36	TransportProtocol_HTTP         TransportProtocol = 4
37	TransportProtocol_DomainSocket TransportProtocol = 5
38)
39
40// Enum value maps for TransportProtocol.
41var (
42	TransportProtocol_name = map[int32]string{
43		0: "TCP",
44		1: "UDP",
45		2: "MKCP",
46		3: "WebSocket",
47		4: "HTTP",
48		5: "DomainSocket",
49	}
50	TransportProtocol_value = map[string]int32{
51		"TCP":          0,
52		"UDP":          1,
53		"MKCP":         2,
54		"WebSocket":    3,
55		"HTTP":         4,
56		"DomainSocket": 5,
57	}
58)
59
60func (x TransportProtocol) Enum() *TransportProtocol {
61	p := new(TransportProtocol)
62	*p = x
63	return p
64}
65
66func (x TransportProtocol) String() string {
67	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
68}
69
70func (TransportProtocol) Descriptor() protoreflect.EnumDescriptor {
71	return file_transport_internet_config_proto_enumTypes[0].Descriptor()
72}
73
74func (TransportProtocol) Type() protoreflect.EnumType {
75	return &file_transport_internet_config_proto_enumTypes[0]
76}
77
78func (x TransportProtocol) Number() protoreflect.EnumNumber {
79	return protoreflect.EnumNumber(x)
80}
81
82// Deprecated: Use TransportProtocol.Descriptor instead.
83func (TransportProtocol) EnumDescriptor() ([]byte, []int) {
84	return file_transport_internet_config_proto_rawDescGZIP(), []int{0}
85}
86
87type SocketConfig_TCPFastOpenState int32
88
89const (
90	// AsIs is to leave the current TFO state as is, unmodified.
91	SocketConfig_AsIs SocketConfig_TCPFastOpenState = 0
92	// Enable is for enabling TFO explictly.
93	SocketConfig_Enable SocketConfig_TCPFastOpenState = 1
94	// Disable is for disabling TFO explictly.
95	SocketConfig_Disable SocketConfig_TCPFastOpenState = 2
96)
97
98// Enum value maps for SocketConfig_TCPFastOpenState.
99var (
100	SocketConfig_TCPFastOpenState_name = map[int32]string{
101		0: "AsIs",
102		1: "Enable",
103		2: "Disable",
104	}
105	SocketConfig_TCPFastOpenState_value = map[string]int32{
106		"AsIs":    0,
107		"Enable":  1,
108		"Disable": 2,
109	}
110)
111
112func (x SocketConfig_TCPFastOpenState) Enum() *SocketConfig_TCPFastOpenState {
113	p := new(SocketConfig_TCPFastOpenState)
114	*p = x
115	return p
116}
117
118func (x SocketConfig_TCPFastOpenState) String() string {
119	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
120}
121
122func (SocketConfig_TCPFastOpenState) Descriptor() protoreflect.EnumDescriptor {
123	return file_transport_internet_config_proto_enumTypes[1].Descriptor()
124}
125
126func (SocketConfig_TCPFastOpenState) Type() protoreflect.EnumType {
127	return &file_transport_internet_config_proto_enumTypes[1]
128}
129
130func (x SocketConfig_TCPFastOpenState) Number() protoreflect.EnumNumber {
131	return protoreflect.EnumNumber(x)
132}
133
134// Deprecated: Use SocketConfig_TCPFastOpenState.Descriptor instead.
135func (SocketConfig_TCPFastOpenState) EnumDescriptor() ([]byte, []int) {
136	return file_transport_internet_config_proto_rawDescGZIP(), []int{3, 0}
137}
138
139type SocketConfig_TProxyMode int32
140
141const (
142	// TProxy is off.
143	SocketConfig_Off SocketConfig_TProxyMode = 0
144	// TProxy mode.
145	SocketConfig_TProxy SocketConfig_TProxyMode = 1
146	// Redirect mode.
147	SocketConfig_Redirect SocketConfig_TProxyMode = 2
148)
149
150// Enum value maps for SocketConfig_TProxyMode.
151var (
152	SocketConfig_TProxyMode_name = map[int32]string{
153		0: "Off",
154		1: "TProxy",
155		2: "Redirect",
156	}
157	SocketConfig_TProxyMode_value = map[string]int32{
158		"Off":      0,
159		"TProxy":   1,
160		"Redirect": 2,
161	}
162)
163
164func (x SocketConfig_TProxyMode) Enum() *SocketConfig_TProxyMode {
165	p := new(SocketConfig_TProxyMode)
166	*p = x
167	return p
168}
169
170func (x SocketConfig_TProxyMode) String() string {
171	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
172}
173
174func (SocketConfig_TProxyMode) Descriptor() protoreflect.EnumDescriptor {
175	return file_transport_internet_config_proto_enumTypes[2].Descriptor()
176}
177
178func (SocketConfig_TProxyMode) Type() protoreflect.EnumType {
179	return &file_transport_internet_config_proto_enumTypes[2]
180}
181
182func (x SocketConfig_TProxyMode) Number() protoreflect.EnumNumber {
183	return protoreflect.EnumNumber(x)
184}
185
186// Deprecated: Use SocketConfig_TProxyMode.Descriptor instead.
187func (SocketConfig_TProxyMode) EnumDescriptor() ([]byte, []int) {
188	return file_transport_internet_config_proto_rawDescGZIP(), []int{3, 1}
189}
190
191type TransportConfig struct {
192	state         protoimpl.MessageState
193	sizeCache     protoimpl.SizeCache
194	unknownFields protoimpl.UnknownFields
195
196	// Type of network that this settings supports.
197	// Deprecated. Use the string form below.
198	//
199	// Deprecated: Do not use.
200	Protocol TransportProtocol `protobuf:"varint,1,opt,name=protocol,proto3,enum=v2ray.core.transport.internet.TransportProtocol" json:"protocol,omitempty"`
201	// Type of network that this settings supports.
202	ProtocolName string `protobuf:"bytes,3,opt,name=protocol_name,json=protocolName,proto3" json:"protocol_name,omitempty"`
203	// Specific settings. Must be of the transports.
204	Settings *serial.TypedMessage `protobuf:"bytes,2,opt,name=settings,proto3" json:"settings,omitempty"`
205}
206
207func (x *TransportConfig) Reset() {
208	*x = TransportConfig{}
209	if protoimpl.UnsafeEnabled {
210		mi := &file_transport_internet_config_proto_msgTypes[0]
211		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
212		ms.StoreMessageInfo(mi)
213	}
214}
215
216func (x *TransportConfig) String() string {
217	return protoimpl.X.MessageStringOf(x)
218}
219
220func (*TransportConfig) ProtoMessage() {}
221
222func (x *TransportConfig) ProtoReflect() protoreflect.Message {
223	mi := &file_transport_internet_config_proto_msgTypes[0]
224	if protoimpl.UnsafeEnabled && x != nil {
225		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
226		if ms.LoadMessageInfo() == nil {
227			ms.StoreMessageInfo(mi)
228		}
229		return ms
230	}
231	return mi.MessageOf(x)
232}
233
234// Deprecated: Use TransportConfig.ProtoReflect.Descriptor instead.
235func (*TransportConfig) Descriptor() ([]byte, []int) {
236	return file_transport_internet_config_proto_rawDescGZIP(), []int{0}
237}
238
239// Deprecated: Do not use.
240func (x *TransportConfig) GetProtocol() TransportProtocol {
241	if x != nil {
242		return x.Protocol
243	}
244	return TransportProtocol_TCP
245}
246
247func (x *TransportConfig) GetProtocolName() string {
248	if x != nil {
249		return x.ProtocolName
250	}
251	return ""
252}
253
254func (x *TransportConfig) GetSettings() *serial.TypedMessage {
255	if x != nil {
256		return x.Settings
257	}
258	return nil
259}
260
261type StreamConfig struct {
262	state         protoimpl.MessageState
263	sizeCache     protoimpl.SizeCache
264	unknownFields protoimpl.UnknownFields
265
266	// Effective network. Deprecated. Use the string form below.
267	//
268	// Deprecated: Do not use.
269	Protocol TransportProtocol `protobuf:"varint,1,opt,name=protocol,proto3,enum=v2ray.core.transport.internet.TransportProtocol" json:"protocol,omitempty"`
270	// Effective network.
271	ProtocolName      string             `protobuf:"bytes,5,opt,name=protocol_name,json=protocolName,proto3" json:"protocol_name,omitempty"`
272	TransportSettings []*TransportConfig `protobuf:"bytes,2,rep,name=transport_settings,json=transportSettings,proto3" json:"transport_settings,omitempty"`
273	// Type of security. Must be a message name of the settings proto.
274	SecurityType string `protobuf:"bytes,3,opt,name=security_type,json=securityType,proto3" json:"security_type,omitempty"`
275	// Settings for transport security. For now the only choice is TLS.
276	SecuritySettings []*serial.TypedMessage `protobuf:"bytes,4,rep,name=security_settings,json=securitySettings,proto3" json:"security_settings,omitempty"`
277	SocketSettings   *SocketConfig          `protobuf:"bytes,6,opt,name=socket_settings,json=socketSettings,proto3" json:"socket_settings,omitempty"`
278}
279
280func (x *StreamConfig) Reset() {
281	*x = StreamConfig{}
282	if protoimpl.UnsafeEnabled {
283		mi := &file_transport_internet_config_proto_msgTypes[1]
284		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
285		ms.StoreMessageInfo(mi)
286	}
287}
288
289func (x *StreamConfig) String() string {
290	return protoimpl.X.MessageStringOf(x)
291}
292
293func (*StreamConfig) ProtoMessage() {}
294
295func (x *StreamConfig) ProtoReflect() protoreflect.Message {
296	mi := &file_transport_internet_config_proto_msgTypes[1]
297	if protoimpl.UnsafeEnabled && x != nil {
298		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
299		if ms.LoadMessageInfo() == nil {
300			ms.StoreMessageInfo(mi)
301		}
302		return ms
303	}
304	return mi.MessageOf(x)
305}
306
307// Deprecated: Use StreamConfig.ProtoReflect.Descriptor instead.
308func (*StreamConfig) Descriptor() ([]byte, []int) {
309	return file_transport_internet_config_proto_rawDescGZIP(), []int{1}
310}
311
312// Deprecated: Do not use.
313func (x *StreamConfig) GetProtocol() TransportProtocol {
314	if x != nil {
315		return x.Protocol
316	}
317	return TransportProtocol_TCP
318}
319
320func (x *StreamConfig) GetProtocolName() string {
321	if x != nil {
322		return x.ProtocolName
323	}
324	return ""
325}
326
327func (x *StreamConfig) GetTransportSettings() []*TransportConfig {
328	if x != nil {
329		return x.TransportSettings
330	}
331	return nil
332}
333
334func (x *StreamConfig) GetSecurityType() string {
335	if x != nil {
336		return x.SecurityType
337	}
338	return ""
339}
340
341func (x *StreamConfig) GetSecuritySettings() []*serial.TypedMessage {
342	if x != nil {
343		return x.SecuritySettings
344	}
345	return nil
346}
347
348func (x *StreamConfig) GetSocketSettings() *SocketConfig {
349	if x != nil {
350		return x.SocketSettings
351	}
352	return nil
353}
354
355type ProxyConfig struct {
356	state         protoimpl.MessageState
357	sizeCache     protoimpl.SizeCache
358	unknownFields protoimpl.UnknownFields
359
360	Tag                 string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
361	TransportLayerProxy bool   `protobuf:"varint,2,opt,name=transportLayerProxy,proto3" json:"transportLayerProxy,omitempty"`
362}
363
364func (x *ProxyConfig) Reset() {
365	*x = ProxyConfig{}
366	if protoimpl.UnsafeEnabled {
367		mi := &file_transport_internet_config_proto_msgTypes[2]
368		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
369		ms.StoreMessageInfo(mi)
370	}
371}
372
373func (x *ProxyConfig) String() string {
374	return protoimpl.X.MessageStringOf(x)
375}
376
377func (*ProxyConfig) ProtoMessage() {}
378
379func (x *ProxyConfig) ProtoReflect() protoreflect.Message {
380	mi := &file_transport_internet_config_proto_msgTypes[2]
381	if protoimpl.UnsafeEnabled && x != nil {
382		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
383		if ms.LoadMessageInfo() == nil {
384			ms.StoreMessageInfo(mi)
385		}
386		return ms
387	}
388	return mi.MessageOf(x)
389}
390
391// Deprecated: Use ProxyConfig.ProtoReflect.Descriptor instead.
392func (*ProxyConfig) Descriptor() ([]byte, []int) {
393	return file_transport_internet_config_proto_rawDescGZIP(), []int{2}
394}
395
396func (x *ProxyConfig) GetTag() string {
397	if x != nil {
398		return x.Tag
399	}
400	return ""
401}
402
403func (x *ProxyConfig) GetTransportLayerProxy() bool {
404	if x != nil {
405		return x.TransportLayerProxy
406	}
407	return false
408}
409
410// SocketConfig is options to be applied on network sockets.
411type SocketConfig struct {
412	state         protoimpl.MessageState
413	sizeCache     protoimpl.SizeCache
414	unknownFields protoimpl.UnknownFields
415
416	// Mark of the connection. If non-zero, the value will be set to SO_MARK.
417	Mark int32 `protobuf:"varint,1,opt,name=mark,proto3" json:"mark,omitempty"`
418	// TFO is the state of TFO settings.
419	Tfo SocketConfig_TCPFastOpenState `protobuf:"varint,2,opt,name=tfo,proto3,enum=v2ray.core.transport.internet.SocketConfig_TCPFastOpenState" json:"tfo,omitempty"`
420	// TProxy is for enabling TProxy socket option.
421	Tproxy SocketConfig_TProxyMode `protobuf:"varint,3,opt,name=tproxy,proto3,enum=v2ray.core.transport.internet.SocketConfig_TProxyMode" json:"tproxy,omitempty"`
422	// ReceiveOriginalDestAddress is for enabling IP_RECVORIGDSTADDR socket
423	// option. This option is for UDP only.
424	ReceiveOriginalDestAddress bool   `protobuf:"varint,4,opt,name=receive_original_dest_address,json=receiveOriginalDestAddress,proto3" json:"receive_original_dest_address,omitempty"`
425	BindAddress                []byte `protobuf:"bytes,5,opt,name=bind_address,json=bindAddress,proto3" json:"bind_address,omitempty"`
426	BindPort                   uint32 `protobuf:"varint,6,opt,name=bind_port,json=bindPort,proto3" json:"bind_port,omitempty"`
427	AcceptProxyProtocol        bool   `protobuf:"varint,7,opt,name=accept_proxy_protocol,json=acceptProxyProtocol,proto3" json:"accept_proxy_protocol,omitempty"`
428}
429
430func (x *SocketConfig) Reset() {
431	*x = SocketConfig{}
432	if protoimpl.UnsafeEnabled {
433		mi := &file_transport_internet_config_proto_msgTypes[3]
434		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
435		ms.StoreMessageInfo(mi)
436	}
437}
438
439func (x *SocketConfig) String() string {
440	return protoimpl.X.MessageStringOf(x)
441}
442
443func (*SocketConfig) ProtoMessage() {}
444
445func (x *SocketConfig) ProtoReflect() protoreflect.Message {
446	mi := &file_transport_internet_config_proto_msgTypes[3]
447	if protoimpl.UnsafeEnabled && x != nil {
448		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
449		if ms.LoadMessageInfo() == nil {
450			ms.StoreMessageInfo(mi)
451		}
452		return ms
453	}
454	return mi.MessageOf(x)
455}
456
457// Deprecated: Use SocketConfig.ProtoReflect.Descriptor instead.
458func (*SocketConfig) Descriptor() ([]byte, []int) {
459	return file_transport_internet_config_proto_rawDescGZIP(), []int{3}
460}
461
462func (x *SocketConfig) GetMark() int32 {
463	if x != nil {
464		return x.Mark
465	}
466	return 0
467}
468
469func (x *SocketConfig) GetTfo() SocketConfig_TCPFastOpenState {
470	if x != nil {
471		return x.Tfo
472	}
473	return SocketConfig_AsIs
474}
475
476func (x *SocketConfig) GetTproxy() SocketConfig_TProxyMode {
477	if x != nil {
478		return x.Tproxy
479	}
480	return SocketConfig_Off
481}
482
483func (x *SocketConfig) GetReceiveOriginalDestAddress() bool {
484	if x != nil {
485		return x.ReceiveOriginalDestAddress
486	}
487	return false
488}
489
490func (x *SocketConfig) GetBindAddress() []byte {
491	if x != nil {
492		return x.BindAddress
493	}
494	return nil
495}
496
497func (x *SocketConfig) GetBindPort() uint32 {
498	if x != nil {
499		return x.BindPort
500	}
501	return 0
502}
503
504func (x *SocketConfig) GetAcceptProxyProtocol() bool {
505	if x != nil {
506		return x.AcceptProxyProtocol
507	}
508	return false
509}
510
511var File_transport_internet_config_proto protoreflect.FileDescriptor
512
513var file_transport_internet_config_proto_rawDesc = []byte{
514	0x0a, 0x1f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65,
515	0x72, 0x6e, 0x65, 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74,
516	0x6f, 0x12, 0x1d, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x74, 0x72,
517	0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74,
518	0x1a, 0x21, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x2f,
519	0x74, 0x79, 0x70, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x70, 0x72,
520	0x6f, 0x74, 0x6f, 0x22, 0xcc, 0x01, 0x0a, 0x0f, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72,
521	0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x50, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f,
522	0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x76, 0x32, 0x72, 0x61,
523	0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74,
524	0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70,
525	0x6f, 0x72, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x42, 0x02, 0x18, 0x01, 0x52,
526	0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x6f,
527	0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
528	0x52, 0x0c, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x42,
529	0x0a, 0x08, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
530	0x32, 0x26, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x63, 0x6f,
531	0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x54, 0x79, 0x70, 0x65,
532	0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x08, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e,
533	0x67, 0x73, 0x22, 0xb4, 0x03, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6e,
534	0x66, 0x69, 0x67, 0x12, 0x50, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18,
535	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f,
536	0x72, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74,
537	0x65, 0x72, 0x6e, 0x65, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x50,
538	0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f,
539	0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
540	0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72,
541	0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x5d, 0x0a, 0x12, 0x74, 0x72,
542	0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
543	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63,
544	0x6f, 0x72, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e,
545	0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74,
546	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x11, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72,
547	0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x63,
548	0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
549	0x52, 0x0c, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x53,
550	0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69,
551	0x6e, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x76, 0x32, 0x72, 0x61,
552	0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x73, 0x65,
553	0x72, 0x69, 0x61, 0x6c, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
554	0x65, 0x52, 0x10, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69,
555	0x6e, 0x67, 0x73, 0x12, 0x54, 0x0a, 0x0f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x73, 0x65,
556	0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x76,
557	0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70,
558	0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x2e, 0x53, 0x6f, 0x63,
559	0x6b, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x73, 0x6f, 0x63, 0x6b, 0x65,
560	0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x22, 0x51, 0x0a, 0x0b, 0x50, 0x72, 0x6f,
561	0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18,
562	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x30, 0x0a, 0x13, 0x74, 0x72,
563	0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x78,
564	0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f,
565	0x72, 0x74, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x22, 0xe1, 0x03, 0x0a,
566	0x0c, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a,
567	0x04, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x6d, 0x61, 0x72,
568	0x6b, 0x12, 0x4e, 0x0a, 0x03, 0x74, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c,
569	0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x6e,
570	0x73, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x2e, 0x53,
571	0x6f, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x54, 0x43, 0x50, 0x46,
572	0x61, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x03, 0x74, 0x66,
573	0x6f, 0x12, 0x4e, 0x0a, 0x06, 0x74, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28,
574	0x0e, 0x32, 0x36, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x74,
575	0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
576	0x74, 0x2e, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x54,
577	0x50, 0x72, 0x6f, 0x78, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x74, 0x70, 0x72, 0x6f, 0x78,
578	0x79, 0x12, 0x41, 0x0a, 0x1d, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x5f, 0x6f, 0x72, 0x69,
579	0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
580	0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76,
581	0x65, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x44, 0x65, 0x73, 0x74, 0x41, 0x64, 0x64,
582	0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x62, 0x69, 0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64,
583	0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x62, 0x69, 0x6e, 0x64,
584	0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x69, 0x6e, 0x64, 0x5f,
585	0x70, 0x6f, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x62, 0x69, 0x6e, 0x64,
586	0x50, 0x6f, 0x72, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x5f, 0x70,
587	0x72, 0x6f, 0x78, 0x79, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x07, 0x20,
588	0x01, 0x28, 0x08, 0x52, 0x13, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79,
589	0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x22, 0x35, 0x0a, 0x10, 0x54, 0x43, 0x50, 0x46,
590	0x61, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x08, 0x0a, 0x04,
591	0x41, 0x73, 0x49, 0x73, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
592	0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x02, 0x22,
593	0x2f, 0x0a, 0x0a, 0x54, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x07, 0x0a,
594	0x03, 0x4f, 0x66, 0x66, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x50, 0x72, 0x6f, 0x78, 0x79,
595	0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x10, 0x02,
596	0x2a, 0x5a, 0x0a, 0x11, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x50, 0x72, 0x6f,
597	0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x43, 0x50, 0x10, 0x00, 0x12, 0x07,
598	0x0a, 0x03, 0x55, 0x44, 0x50, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4d, 0x4b, 0x43, 0x50, 0x10,
599	0x02, 0x12, 0x0d, 0x0a, 0x09, 0x57, 0x65, 0x62, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x03,
600	0x12, 0x08, 0x0a, 0x04, 0x48, 0x54, 0x54, 0x50, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x6f,
601	0x6d, 0x61, 0x69, 0x6e, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x10, 0x05, 0x42, 0x78, 0x0a, 0x21,
602	0x63, 0x6f, 0x6d, 0x2e, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x74,
603	0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65,
604	0x74, 0x50, 0x01, 0x5a, 0x31, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
605	0x76, 0x32, 0x66, 0x6c, 0x79, 0x2f, 0x76, 0x32, 0x72, 0x61, 0x79, 0x2d, 0x63, 0x6f, 0x72, 0x65,
606	0x2f, 0x76, 0x34, 0x2f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x69, 0x6e,
607	0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0xaa, 0x02, 0x1d, 0x56, 0x32, 0x52, 0x61, 0x79, 0x2e, 0x43,
608	0x6f, 0x72, 0x65, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x49, 0x6e,
609	0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
610}
611
612var (
613	file_transport_internet_config_proto_rawDescOnce sync.Once
614	file_transport_internet_config_proto_rawDescData = file_transport_internet_config_proto_rawDesc
615)
616
617func file_transport_internet_config_proto_rawDescGZIP() []byte {
618	file_transport_internet_config_proto_rawDescOnce.Do(func() {
619		file_transport_internet_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_transport_internet_config_proto_rawDescData)
620	})
621	return file_transport_internet_config_proto_rawDescData
622}
623
624var file_transport_internet_config_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
625var file_transport_internet_config_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
626var file_transport_internet_config_proto_goTypes = []interface{}{
627	(TransportProtocol)(0),             // 0: v2ray.core.transport.internet.TransportProtocol
628	(SocketConfig_TCPFastOpenState)(0), // 1: v2ray.core.transport.internet.SocketConfig.TCPFastOpenState
629	(SocketConfig_TProxyMode)(0),       // 2: v2ray.core.transport.internet.SocketConfig.TProxyMode
630	(*TransportConfig)(nil),            // 3: v2ray.core.transport.internet.TransportConfig
631	(*StreamConfig)(nil),               // 4: v2ray.core.transport.internet.StreamConfig
632	(*ProxyConfig)(nil),                // 5: v2ray.core.transport.internet.ProxyConfig
633	(*SocketConfig)(nil),               // 6: v2ray.core.transport.internet.SocketConfig
634	(*serial.TypedMessage)(nil),        // 7: v2ray.core.common.serial.TypedMessage
635}
636var file_transport_internet_config_proto_depIdxs = []int32{
637	0, // 0: v2ray.core.transport.internet.TransportConfig.protocol:type_name -> v2ray.core.transport.internet.TransportProtocol
638	7, // 1: v2ray.core.transport.internet.TransportConfig.settings:type_name -> v2ray.core.common.serial.TypedMessage
639	0, // 2: v2ray.core.transport.internet.StreamConfig.protocol:type_name -> v2ray.core.transport.internet.TransportProtocol
640	3, // 3: v2ray.core.transport.internet.StreamConfig.transport_settings:type_name -> v2ray.core.transport.internet.TransportConfig
641	7, // 4: v2ray.core.transport.internet.StreamConfig.security_settings:type_name -> v2ray.core.common.serial.TypedMessage
642	6, // 5: v2ray.core.transport.internet.StreamConfig.socket_settings:type_name -> v2ray.core.transport.internet.SocketConfig
643	1, // 6: v2ray.core.transport.internet.SocketConfig.tfo:type_name -> v2ray.core.transport.internet.SocketConfig.TCPFastOpenState
644	2, // 7: v2ray.core.transport.internet.SocketConfig.tproxy:type_name -> v2ray.core.transport.internet.SocketConfig.TProxyMode
645	8, // [8:8] is the sub-list for method output_type
646	8, // [8:8] is the sub-list for method input_type
647	8, // [8:8] is the sub-list for extension type_name
648	8, // [8:8] is the sub-list for extension extendee
649	0, // [0:8] is the sub-list for field type_name
650}
651
652func init() { file_transport_internet_config_proto_init() }
653func file_transport_internet_config_proto_init() {
654	if File_transport_internet_config_proto != nil {
655		return
656	}
657	if !protoimpl.UnsafeEnabled {
658		file_transport_internet_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
659			switch v := v.(*TransportConfig); i {
660			case 0:
661				return &v.state
662			case 1:
663				return &v.sizeCache
664			case 2:
665				return &v.unknownFields
666			default:
667				return nil
668			}
669		}
670		file_transport_internet_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
671			switch v := v.(*StreamConfig); i {
672			case 0:
673				return &v.state
674			case 1:
675				return &v.sizeCache
676			case 2:
677				return &v.unknownFields
678			default:
679				return nil
680			}
681		}
682		file_transport_internet_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
683			switch v := v.(*ProxyConfig); i {
684			case 0:
685				return &v.state
686			case 1:
687				return &v.sizeCache
688			case 2:
689				return &v.unknownFields
690			default:
691				return nil
692			}
693		}
694		file_transport_internet_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
695			switch v := v.(*SocketConfig); i {
696			case 0:
697				return &v.state
698			case 1:
699				return &v.sizeCache
700			case 2:
701				return &v.unknownFields
702			default:
703				return nil
704			}
705		}
706	}
707	type x struct{}
708	out := protoimpl.TypeBuilder{
709		File: protoimpl.DescBuilder{
710			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
711			RawDescriptor: file_transport_internet_config_proto_rawDesc,
712			NumEnums:      3,
713			NumMessages:   4,
714			NumExtensions: 0,
715			NumServices:   0,
716		},
717		GoTypes:           file_transport_internet_config_proto_goTypes,
718		DependencyIndexes: file_transport_internet_config_proto_depIdxs,
719		EnumInfos:         file_transport_internet_config_proto_enumTypes,
720		MessageInfos:      file_transport_internet_config_proto_msgTypes,
721	}.Build()
722	File_transport_internet_config_proto = out.File
723	file_transport_internet_config_proto_rawDesc = nil
724	file_transport_internet_config_proto_goTypes = nil
725	file_transport_internet_config_proto_depIdxs = nil
726}
727