github.com/xtls/xray-core@v1.8.12-0.20240518155711-3168d27b0bdb/proxy/socks/config.proto (about)

     1  syntax = "proto3";
     2  
     3  package xray.proxy.socks;
     4  option csharp_namespace = "Xray.Proxy.Socks";
     5  option go_package = "github.com/xtls/xray-core/proxy/socks";
     6  option java_package = "com.xray.proxy.socks";
     7  option java_multiple_files = true;
     8  
     9  import "common/net/address.proto";
    10  import "common/protocol/server_spec.proto";
    11  
    12  // Account represents a Socks account.
    13  message Account {
    14    string username = 1;
    15    string password = 2;
    16  }
    17  
    18  // AuthType is the authentication type of Socks proxy.
    19  enum AuthType {
    20    // NO_AUTH is for anounymous authentication.
    21    NO_AUTH = 0;
    22    // PASSWORD is for username/password authentication.
    23    PASSWORD = 1;
    24  }
    25  
    26  enum Version {
    27    SOCKS5 = 0;
    28    SOCKS4 = 1;
    29    SOCKS4A = 2;
    30  }
    31  
    32  // ServerConfig is the protobuf config for Socks server.
    33  message ServerConfig {
    34    AuthType auth_type = 1;
    35    map<string, string> accounts = 2;
    36    xray.common.net.IPOrDomain address = 3;
    37    bool udp_enabled = 4;
    38    uint32 timeout = 5 [deprecated = true];
    39    uint32 user_level = 6;
    40  }
    41  
    42  // ClientConfig is the protobuf config for Socks client.
    43  message ClientConfig {
    44    // Sever is a list of Socks server addresses.
    45    repeated xray.common.protocol.ServerEndpoint server = 1;
    46    Version version = 2;
    47  }