|
|
|
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.
|
|
|
|
TransportProtocol protocol = 1;
|
|
|
|
|
|
|
|
// Specific settings. Must be of the transports.
|
|
|
|
v2ray.core.common.serial.TypedMessage settings = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message StreamConfig {
|
|
|
|
// Effective network.
|
|
|
|
TransportProtocol protocol = 1;
|
|
|
|
|
|
|
|
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;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ProxyConfig {
|
|
|
|
string tag = 1;
|
|
|
|
}
|