| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- syntax = "proto3";
- package v2ray.core.transport.internet;
- option csharp_namespace = "V2Ray.Core.Transport.Internet";
- option go_package = "internet";
- option java_package = "com.v2ray.core.transport.internet";
- option java_multiple_files = true;
- import "v2ray.com/core/common/serial/typed_message.proto";
- enum TransportProtocol {
- TCP = 0;
- UDP = 1;
- MKCP = 2;
- WebSocket = 3;
- HTTP = 4;
- DomainSocket = 5;
- }
- message TransportConfig {
- // Type of network that this settings supports.
- // Deprecated. Use the string form below.
- TransportProtocol protocol = 1;
- // Type of network that this settings supports.
- string protocol_name = 3;
- // Specific settings. Must be of the transports.
- v2ray.core.common.serial.TypedMessage settings = 2;
- }
- message StreamConfig {
- // Effective network. Deprecated. Use the string form below.
- TransportProtocol protocol = 1 [deprecated = true];
- // Effective network.
- string protocol_name = 5;
- repeated TransportConfig transport_settings = 2;
- // Type of security. Must be a message name of the settings proto.
- string security_type = 3;
-
- // Settings for transport security. For now the only choice is TLS.
- repeated v2ray.core.common.serial.TypedMessage security_settings = 4;
- SocketConfig socket_settings = 6;
- }
- message ProxyConfig {
- string tag = 1;
- }
- // SocketConfig is options to be applied on network sockets.
- message SocketConfig {
- // Mark of the connection. If non-zero, the value will be set to SO_MARK.
- int32 mark = 1;
- enum TCPFastOpenState {
- // AsIs is to leave the current TFO state as is, unmodified.
- AsIs = 0;
- // Enable is for enabling TFO explictly.
- Enable = 1;
- // Disable is for disabling TFO explictly.
- Disable = 2;
- }
- // TFO is the state of TFO settings.
- TCPFastOpenState tfo = 2;
- // TProxy is for enabling TProxy socket option.
- bool tproxy = 3;
- }
|