config.pb.go 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653
  1. package proxyman
  2. import proto "github.com/golang/protobuf/proto"
  3. import fmt "fmt"
  4. import math "math"
  5. import net "v2ray.com/core/common/net"
  6. import serial "v2ray.com/core/common/serial"
  7. import internet "v2ray.com/core/transport/internet"
  8. // Reference imports to suppress errors if they are not otherwise used.
  9. var _ = proto.Marshal
  10. var _ = fmt.Errorf
  11. var _ = math.Inf
  12. // This is a compile-time assertion to ensure that this generated file
  13. // is compatible with the proto package it is being compiled against.
  14. // A compilation error at this line likely means your copy of the
  15. // proto package needs to be updated.
  16. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
  17. type KnownProtocols int32
  18. const (
  19. KnownProtocols_HTTP KnownProtocols = 0
  20. KnownProtocols_TLS KnownProtocols = 1
  21. )
  22. var KnownProtocols_name = map[int32]string{
  23. 0: "HTTP",
  24. 1: "TLS",
  25. }
  26. var KnownProtocols_value = map[string]int32{
  27. "HTTP": 0,
  28. "TLS": 1,
  29. }
  30. func (x KnownProtocols) String() string {
  31. return proto.EnumName(KnownProtocols_name, int32(x))
  32. }
  33. func (KnownProtocols) EnumDescriptor() ([]byte, []int) {
  34. return fileDescriptor_config_6857cd20ab15680d, []int{0}
  35. }
  36. type AllocationStrategy_Type int32
  37. const (
  38. // Always allocate all connection handlers.
  39. AllocationStrategy_Always AllocationStrategy_Type = 0
  40. // Randomly allocate specific range of handlers.
  41. AllocationStrategy_Random AllocationStrategy_Type = 1
  42. // External. Not supported yet.
  43. AllocationStrategy_External AllocationStrategy_Type = 2
  44. )
  45. var AllocationStrategy_Type_name = map[int32]string{
  46. 0: "Always",
  47. 1: "Random",
  48. 2: "External",
  49. }
  50. var AllocationStrategy_Type_value = map[string]int32{
  51. "Always": 0,
  52. "Random": 1,
  53. "External": 2,
  54. }
  55. func (x AllocationStrategy_Type) String() string {
  56. return proto.EnumName(AllocationStrategy_Type_name, int32(x))
  57. }
  58. func (AllocationStrategy_Type) EnumDescriptor() ([]byte, []int) {
  59. return fileDescriptor_config_6857cd20ab15680d, []int{1, 0}
  60. }
  61. type InboundConfig struct {
  62. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  63. XXX_unrecognized []byte `json:"-"`
  64. XXX_sizecache int32 `json:"-"`
  65. }
  66. func (m *InboundConfig) Reset() { *m = InboundConfig{} }
  67. func (m *InboundConfig) String() string { return proto.CompactTextString(m) }
  68. func (*InboundConfig) ProtoMessage() {}
  69. func (*InboundConfig) Descriptor() ([]byte, []int) {
  70. return fileDescriptor_config_6857cd20ab15680d, []int{0}
  71. }
  72. func (m *InboundConfig) XXX_Unmarshal(b []byte) error {
  73. return xxx_messageInfo_InboundConfig.Unmarshal(m, b)
  74. }
  75. func (m *InboundConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  76. return xxx_messageInfo_InboundConfig.Marshal(b, m, deterministic)
  77. }
  78. func (dst *InboundConfig) XXX_Merge(src proto.Message) {
  79. xxx_messageInfo_InboundConfig.Merge(dst, src)
  80. }
  81. func (m *InboundConfig) XXX_Size() int {
  82. return xxx_messageInfo_InboundConfig.Size(m)
  83. }
  84. func (m *InboundConfig) XXX_DiscardUnknown() {
  85. xxx_messageInfo_InboundConfig.DiscardUnknown(m)
  86. }
  87. var xxx_messageInfo_InboundConfig proto.InternalMessageInfo
  88. type AllocationStrategy struct {
  89. Type AllocationStrategy_Type `protobuf:"varint,1,opt,name=type,proto3,enum=v2ray.core.app.proxyman.AllocationStrategy_Type" json:"type,omitempty"`
  90. // Number of handlers (ports) running in parallel.
  91. // Default value is 3 if unset.
  92. Concurrency *AllocationStrategy_AllocationStrategyConcurrency `protobuf:"bytes,2,opt,name=concurrency,proto3" json:"concurrency,omitempty"`
  93. // Number of minutes before a handler is regenerated.
  94. // Default value is 5 if unset.
  95. Refresh *AllocationStrategy_AllocationStrategyRefresh `protobuf:"bytes,3,opt,name=refresh,proto3" json:"refresh,omitempty"`
  96. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  97. XXX_unrecognized []byte `json:"-"`
  98. XXX_sizecache int32 `json:"-"`
  99. }
  100. func (m *AllocationStrategy) Reset() { *m = AllocationStrategy{} }
  101. func (m *AllocationStrategy) String() string { return proto.CompactTextString(m) }
  102. func (*AllocationStrategy) ProtoMessage() {}
  103. func (*AllocationStrategy) Descriptor() ([]byte, []int) {
  104. return fileDescriptor_config_6857cd20ab15680d, []int{1}
  105. }
  106. func (m *AllocationStrategy) XXX_Unmarshal(b []byte) error {
  107. return xxx_messageInfo_AllocationStrategy.Unmarshal(m, b)
  108. }
  109. func (m *AllocationStrategy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  110. return xxx_messageInfo_AllocationStrategy.Marshal(b, m, deterministic)
  111. }
  112. func (dst *AllocationStrategy) XXX_Merge(src proto.Message) {
  113. xxx_messageInfo_AllocationStrategy.Merge(dst, src)
  114. }
  115. func (m *AllocationStrategy) XXX_Size() int {
  116. return xxx_messageInfo_AllocationStrategy.Size(m)
  117. }
  118. func (m *AllocationStrategy) XXX_DiscardUnknown() {
  119. xxx_messageInfo_AllocationStrategy.DiscardUnknown(m)
  120. }
  121. var xxx_messageInfo_AllocationStrategy proto.InternalMessageInfo
  122. func (m *AllocationStrategy) GetType() AllocationStrategy_Type {
  123. if m != nil {
  124. return m.Type
  125. }
  126. return AllocationStrategy_Always
  127. }
  128. func (m *AllocationStrategy) GetConcurrency() *AllocationStrategy_AllocationStrategyConcurrency {
  129. if m != nil {
  130. return m.Concurrency
  131. }
  132. return nil
  133. }
  134. func (m *AllocationStrategy) GetRefresh() *AllocationStrategy_AllocationStrategyRefresh {
  135. if m != nil {
  136. return m.Refresh
  137. }
  138. return nil
  139. }
  140. type AllocationStrategy_AllocationStrategyConcurrency struct {
  141. Value uint32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"`
  142. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  143. XXX_unrecognized []byte `json:"-"`
  144. XXX_sizecache int32 `json:"-"`
  145. }
  146. func (m *AllocationStrategy_AllocationStrategyConcurrency) Reset() {
  147. *m = AllocationStrategy_AllocationStrategyConcurrency{}
  148. }
  149. func (m *AllocationStrategy_AllocationStrategyConcurrency) String() string {
  150. return proto.CompactTextString(m)
  151. }
  152. func (*AllocationStrategy_AllocationStrategyConcurrency) ProtoMessage() {}
  153. func (*AllocationStrategy_AllocationStrategyConcurrency) Descriptor() ([]byte, []int) {
  154. return fileDescriptor_config_6857cd20ab15680d, []int{1, 0}
  155. }
  156. func (m *AllocationStrategy_AllocationStrategyConcurrency) XXX_Unmarshal(b []byte) error {
  157. return xxx_messageInfo_AllocationStrategy_AllocationStrategyConcurrency.Unmarshal(m, b)
  158. }
  159. func (m *AllocationStrategy_AllocationStrategyConcurrency) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  160. return xxx_messageInfo_AllocationStrategy_AllocationStrategyConcurrency.Marshal(b, m, deterministic)
  161. }
  162. func (dst *AllocationStrategy_AllocationStrategyConcurrency) XXX_Merge(src proto.Message) {
  163. xxx_messageInfo_AllocationStrategy_AllocationStrategyConcurrency.Merge(dst, src)
  164. }
  165. func (m *AllocationStrategy_AllocationStrategyConcurrency) XXX_Size() int {
  166. return xxx_messageInfo_AllocationStrategy_AllocationStrategyConcurrency.Size(m)
  167. }
  168. func (m *AllocationStrategy_AllocationStrategyConcurrency) XXX_DiscardUnknown() {
  169. xxx_messageInfo_AllocationStrategy_AllocationStrategyConcurrency.DiscardUnknown(m)
  170. }
  171. var xxx_messageInfo_AllocationStrategy_AllocationStrategyConcurrency proto.InternalMessageInfo
  172. func (m *AllocationStrategy_AllocationStrategyConcurrency) GetValue() uint32 {
  173. if m != nil {
  174. return m.Value
  175. }
  176. return 0
  177. }
  178. type AllocationStrategy_AllocationStrategyRefresh struct {
  179. Value uint32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"`
  180. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  181. XXX_unrecognized []byte `json:"-"`
  182. XXX_sizecache int32 `json:"-"`
  183. }
  184. func (m *AllocationStrategy_AllocationStrategyRefresh) Reset() {
  185. *m = AllocationStrategy_AllocationStrategyRefresh{}
  186. }
  187. func (m *AllocationStrategy_AllocationStrategyRefresh) String() string {
  188. return proto.CompactTextString(m)
  189. }
  190. func (*AllocationStrategy_AllocationStrategyRefresh) ProtoMessage() {}
  191. func (*AllocationStrategy_AllocationStrategyRefresh) Descriptor() ([]byte, []int) {
  192. return fileDescriptor_config_6857cd20ab15680d, []int{1, 1}
  193. }
  194. func (m *AllocationStrategy_AllocationStrategyRefresh) XXX_Unmarshal(b []byte) error {
  195. return xxx_messageInfo_AllocationStrategy_AllocationStrategyRefresh.Unmarshal(m, b)
  196. }
  197. func (m *AllocationStrategy_AllocationStrategyRefresh) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  198. return xxx_messageInfo_AllocationStrategy_AllocationStrategyRefresh.Marshal(b, m, deterministic)
  199. }
  200. func (dst *AllocationStrategy_AllocationStrategyRefresh) XXX_Merge(src proto.Message) {
  201. xxx_messageInfo_AllocationStrategy_AllocationStrategyRefresh.Merge(dst, src)
  202. }
  203. func (m *AllocationStrategy_AllocationStrategyRefresh) XXX_Size() int {
  204. return xxx_messageInfo_AllocationStrategy_AllocationStrategyRefresh.Size(m)
  205. }
  206. func (m *AllocationStrategy_AllocationStrategyRefresh) XXX_DiscardUnknown() {
  207. xxx_messageInfo_AllocationStrategy_AllocationStrategyRefresh.DiscardUnknown(m)
  208. }
  209. var xxx_messageInfo_AllocationStrategy_AllocationStrategyRefresh proto.InternalMessageInfo
  210. func (m *AllocationStrategy_AllocationStrategyRefresh) GetValue() uint32 {
  211. if m != nil {
  212. return m.Value
  213. }
  214. return 0
  215. }
  216. type SniffingConfig struct {
  217. // Whether or not to enable content sniffing on an inbound connection.
  218. Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
  219. // Override target destination if sniff'ed protocol is in the given list.
  220. // Supported values are "http", "tls".
  221. DestinationOverride []string `protobuf:"bytes,2,rep,name=destination_override,json=destinationOverride,proto3" json:"destination_override,omitempty"`
  222. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  223. XXX_unrecognized []byte `json:"-"`
  224. XXX_sizecache int32 `json:"-"`
  225. }
  226. func (m *SniffingConfig) Reset() { *m = SniffingConfig{} }
  227. func (m *SniffingConfig) String() string { return proto.CompactTextString(m) }
  228. func (*SniffingConfig) ProtoMessage() {}
  229. func (*SniffingConfig) Descriptor() ([]byte, []int) {
  230. return fileDescriptor_config_6857cd20ab15680d, []int{2}
  231. }
  232. func (m *SniffingConfig) XXX_Unmarshal(b []byte) error {
  233. return xxx_messageInfo_SniffingConfig.Unmarshal(m, b)
  234. }
  235. func (m *SniffingConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  236. return xxx_messageInfo_SniffingConfig.Marshal(b, m, deterministic)
  237. }
  238. func (dst *SniffingConfig) XXX_Merge(src proto.Message) {
  239. xxx_messageInfo_SniffingConfig.Merge(dst, src)
  240. }
  241. func (m *SniffingConfig) XXX_Size() int {
  242. return xxx_messageInfo_SniffingConfig.Size(m)
  243. }
  244. func (m *SniffingConfig) XXX_DiscardUnknown() {
  245. xxx_messageInfo_SniffingConfig.DiscardUnknown(m)
  246. }
  247. var xxx_messageInfo_SniffingConfig proto.InternalMessageInfo
  248. func (m *SniffingConfig) GetEnabled() bool {
  249. if m != nil {
  250. return m.Enabled
  251. }
  252. return false
  253. }
  254. func (m *SniffingConfig) GetDestinationOverride() []string {
  255. if m != nil {
  256. return m.DestinationOverride
  257. }
  258. return nil
  259. }
  260. type ReceiverConfig struct {
  261. // PortRange specifies the ports which the Receiver should listen on.
  262. PortRange *net.PortRange `protobuf:"bytes,1,opt,name=port_range,json=portRange,proto3" json:"port_range,omitempty"`
  263. // Listen specifies the IP address that the Receiver should listen on.
  264. Listen *net.IPOrDomain `protobuf:"bytes,2,opt,name=listen,proto3" json:"listen,omitempty"`
  265. AllocationStrategy *AllocationStrategy `protobuf:"bytes,3,opt,name=allocation_strategy,json=allocationStrategy,proto3" json:"allocation_strategy,omitempty"`
  266. StreamSettings *internet.StreamConfig `protobuf:"bytes,4,opt,name=stream_settings,json=streamSettings,proto3" json:"stream_settings,omitempty"`
  267. ReceiveOriginalDestination bool `protobuf:"varint,5,opt,name=receive_original_destination,json=receiveOriginalDestination,proto3" json:"receive_original_destination,omitempty"`
  268. // Override domains for the given protocol.
  269. // Deprecated. Use sniffing_settings.
  270. DomainOverride []KnownProtocols `protobuf:"varint,7,rep,packed,name=domain_override,json=domainOverride,proto3,enum=v2ray.core.app.proxyman.KnownProtocols" json:"domain_override,omitempty"` // Deprecated: Do not use.
  271. SniffingSettings *SniffingConfig `protobuf:"bytes,8,opt,name=sniffing_settings,json=sniffingSettings,proto3" json:"sniffing_settings,omitempty"`
  272. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  273. XXX_unrecognized []byte `json:"-"`
  274. XXX_sizecache int32 `json:"-"`
  275. }
  276. func (m *ReceiverConfig) Reset() { *m = ReceiverConfig{} }
  277. func (m *ReceiverConfig) String() string { return proto.CompactTextString(m) }
  278. func (*ReceiverConfig) ProtoMessage() {}
  279. func (*ReceiverConfig) Descriptor() ([]byte, []int) {
  280. return fileDescriptor_config_6857cd20ab15680d, []int{3}
  281. }
  282. func (m *ReceiverConfig) XXX_Unmarshal(b []byte) error {
  283. return xxx_messageInfo_ReceiverConfig.Unmarshal(m, b)
  284. }
  285. func (m *ReceiverConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  286. return xxx_messageInfo_ReceiverConfig.Marshal(b, m, deterministic)
  287. }
  288. func (dst *ReceiverConfig) XXX_Merge(src proto.Message) {
  289. xxx_messageInfo_ReceiverConfig.Merge(dst, src)
  290. }
  291. func (m *ReceiverConfig) XXX_Size() int {
  292. return xxx_messageInfo_ReceiverConfig.Size(m)
  293. }
  294. func (m *ReceiverConfig) XXX_DiscardUnknown() {
  295. xxx_messageInfo_ReceiverConfig.DiscardUnknown(m)
  296. }
  297. var xxx_messageInfo_ReceiverConfig proto.InternalMessageInfo
  298. func (m *ReceiverConfig) GetPortRange() *net.PortRange {
  299. if m != nil {
  300. return m.PortRange
  301. }
  302. return nil
  303. }
  304. func (m *ReceiverConfig) GetListen() *net.IPOrDomain {
  305. if m != nil {
  306. return m.Listen
  307. }
  308. return nil
  309. }
  310. func (m *ReceiverConfig) GetAllocationStrategy() *AllocationStrategy {
  311. if m != nil {
  312. return m.AllocationStrategy
  313. }
  314. return nil
  315. }
  316. func (m *ReceiverConfig) GetStreamSettings() *internet.StreamConfig {
  317. if m != nil {
  318. return m.StreamSettings
  319. }
  320. return nil
  321. }
  322. func (m *ReceiverConfig) GetReceiveOriginalDestination() bool {
  323. if m != nil {
  324. return m.ReceiveOriginalDestination
  325. }
  326. return false
  327. }
  328. // Deprecated: Do not use.
  329. func (m *ReceiverConfig) GetDomainOverride() []KnownProtocols {
  330. if m != nil {
  331. return m.DomainOverride
  332. }
  333. return nil
  334. }
  335. func (m *ReceiverConfig) GetSniffingSettings() *SniffingConfig {
  336. if m != nil {
  337. return m.SniffingSettings
  338. }
  339. return nil
  340. }
  341. type InboundHandlerConfig struct {
  342. Tag string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
  343. ReceiverSettings *serial.TypedMessage `protobuf:"bytes,2,opt,name=receiver_settings,json=receiverSettings,proto3" json:"receiver_settings,omitempty"`
  344. ProxySettings *serial.TypedMessage `protobuf:"bytes,3,opt,name=proxy_settings,json=proxySettings,proto3" json:"proxy_settings,omitempty"`
  345. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  346. XXX_unrecognized []byte `json:"-"`
  347. XXX_sizecache int32 `json:"-"`
  348. }
  349. func (m *InboundHandlerConfig) Reset() { *m = InboundHandlerConfig{} }
  350. func (m *InboundHandlerConfig) String() string { return proto.CompactTextString(m) }
  351. func (*InboundHandlerConfig) ProtoMessage() {}
  352. func (*InboundHandlerConfig) Descriptor() ([]byte, []int) {
  353. return fileDescriptor_config_6857cd20ab15680d, []int{4}
  354. }
  355. func (m *InboundHandlerConfig) XXX_Unmarshal(b []byte) error {
  356. return xxx_messageInfo_InboundHandlerConfig.Unmarshal(m, b)
  357. }
  358. func (m *InboundHandlerConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  359. return xxx_messageInfo_InboundHandlerConfig.Marshal(b, m, deterministic)
  360. }
  361. func (dst *InboundHandlerConfig) XXX_Merge(src proto.Message) {
  362. xxx_messageInfo_InboundHandlerConfig.Merge(dst, src)
  363. }
  364. func (m *InboundHandlerConfig) XXX_Size() int {
  365. return xxx_messageInfo_InboundHandlerConfig.Size(m)
  366. }
  367. func (m *InboundHandlerConfig) XXX_DiscardUnknown() {
  368. xxx_messageInfo_InboundHandlerConfig.DiscardUnknown(m)
  369. }
  370. var xxx_messageInfo_InboundHandlerConfig proto.InternalMessageInfo
  371. func (m *InboundHandlerConfig) GetTag() string {
  372. if m != nil {
  373. return m.Tag
  374. }
  375. return ""
  376. }
  377. func (m *InboundHandlerConfig) GetReceiverSettings() *serial.TypedMessage {
  378. if m != nil {
  379. return m.ReceiverSettings
  380. }
  381. return nil
  382. }
  383. func (m *InboundHandlerConfig) GetProxySettings() *serial.TypedMessage {
  384. if m != nil {
  385. return m.ProxySettings
  386. }
  387. return nil
  388. }
  389. type OutboundConfig struct {
  390. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  391. XXX_unrecognized []byte `json:"-"`
  392. XXX_sizecache int32 `json:"-"`
  393. }
  394. func (m *OutboundConfig) Reset() { *m = OutboundConfig{} }
  395. func (m *OutboundConfig) String() string { return proto.CompactTextString(m) }
  396. func (*OutboundConfig) ProtoMessage() {}
  397. func (*OutboundConfig) Descriptor() ([]byte, []int) {
  398. return fileDescriptor_config_6857cd20ab15680d, []int{5}
  399. }
  400. func (m *OutboundConfig) XXX_Unmarshal(b []byte) error {
  401. return xxx_messageInfo_OutboundConfig.Unmarshal(m, b)
  402. }
  403. func (m *OutboundConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  404. return xxx_messageInfo_OutboundConfig.Marshal(b, m, deterministic)
  405. }
  406. func (dst *OutboundConfig) XXX_Merge(src proto.Message) {
  407. xxx_messageInfo_OutboundConfig.Merge(dst, src)
  408. }
  409. func (m *OutboundConfig) XXX_Size() int {
  410. return xxx_messageInfo_OutboundConfig.Size(m)
  411. }
  412. func (m *OutboundConfig) XXX_DiscardUnknown() {
  413. xxx_messageInfo_OutboundConfig.DiscardUnknown(m)
  414. }
  415. var xxx_messageInfo_OutboundConfig proto.InternalMessageInfo
  416. type SenderConfig struct {
  417. // Send traffic through the given IP. Only IP is allowed.
  418. Via *net.IPOrDomain `protobuf:"bytes,1,opt,name=via,proto3" json:"via,omitempty"`
  419. StreamSettings *internet.StreamConfig `protobuf:"bytes,2,opt,name=stream_settings,json=streamSettings,proto3" json:"stream_settings,omitempty"`
  420. ProxySettings *internet.ProxyConfig `protobuf:"bytes,3,opt,name=proxy_settings,json=proxySettings,proto3" json:"proxy_settings,omitempty"`
  421. MultiplexSettings *MultiplexingConfig `protobuf:"bytes,4,opt,name=multiplex_settings,json=multiplexSettings,proto3" json:"multiplex_settings,omitempty"`
  422. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  423. XXX_unrecognized []byte `json:"-"`
  424. XXX_sizecache int32 `json:"-"`
  425. }
  426. func (m *SenderConfig) Reset() { *m = SenderConfig{} }
  427. func (m *SenderConfig) String() string { return proto.CompactTextString(m) }
  428. func (*SenderConfig) ProtoMessage() {}
  429. func (*SenderConfig) Descriptor() ([]byte, []int) {
  430. return fileDescriptor_config_6857cd20ab15680d, []int{6}
  431. }
  432. func (m *SenderConfig) XXX_Unmarshal(b []byte) error {
  433. return xxx_messageInfo_SenderConfig.Unmarshal(m, b)
  434. }
  435. func (m *SenderConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  436. return xxx_messageInfo_SenderConfig.Marshal(b, m, deterministic)
  437. }
  438. func (dst *SenderConfig) XXX_Merge(src proto.Message) {
  439. xxx_messageInfo_SenderConfig.Merge(dst, src)
  440. }
  441. func (m *SenderConfig) XXX_Size() int {
  442. return xxx_messageInfo_SenderConfig.Size(m)
  443. }
  444. func (m *SenderConfig) XXX_DiscardUnknown() {
  445. xxx_messageInfo_SenderConfig.DiscardUnknown(m)
  446. }
  447. var xxx_messageInfo_SenderConfig proto.InternalMessageInfo
  448. func (m *SenderConfig) GetVia() *net.IPOrDomain {
  449. if m != nil {
  450. return m.Via
  451. }
  452. return nil
  453. }
  454. func (m *SenderConfig) GetStreamSettings() *internet.StreamConfig {
  455. if m != nil {
  456. return m.StreamSettings
  457. }
  458. return nil
  459. }
  460. func (m *SenderConfig) GetProxySettings() *internet.ProxyConfig {
  461. if m != nil {
  462. return m.ProxySettings
  463. }
  464. return nil
  465. }
  466. func (m *SenderConfig) GetMultiplexSettings() *MultiplexingConfig {
  467. if m != nil {
  468. return m.MultiplexSettings
  469. }
  470. return nil
  471. }
  472. type MultiplexingConfig struct {
  473. // Whether or not Mux is enabled.
  474. Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
  475. // Max number of concurrent connections that one Mux connection can handle.
  476. Concurrency uint32 `protobuf:"varint,2,opt,name=concurrency,proto3" json:"concurrency,omitempty"`
  477. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  478. XXX_unrecognized []byte `json:"-"`
  479. XXX_sizecache int32 `json:"-"`
  480. }
  481. func (m *MultiplexingConfig) Reset() { *m = MultiplexingConfig{} }
  482. func (m *MultiplexingConfig) String() string { return proto.CompactTextString(m) }
  483. func (*MultiplexingConfig) ProtoMessage() {}
  484. func (*MultiplexingConfig) Descriptor() ([]byte, []int) {
  485. return fileDescriptor_config_6857cd20ab15680d, []int{7}
  486. }
  487. func (m *MultiplexingConfig) XXX_Unmarshal(b []byte) error {
  488. return xxx_messageInfo_MultiplexingConfig.Unmarshal(m, b)
  489. }
  490. func (m *MultiplexingConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  491. return xxx_messageInfo_MultiplexingConfig.Marshal(b, m, deterministic)
  492. }
  493. func (dst *MultiplexingConfig) XXX_Merge(src proto.Message) {
  494. xxx_messageInfo_MultiplexingConfig.Merge(dst, src)
  495. }
  496. func (m *MultiplexingConfig) XXX_Size() int {
  497. return xxx_messageInfo_MultiplexingConfig.Size(m)
  498. }
  499. func (m *MultiplexingConfig) XXX_DiscardUnknown() {
  500. xxx_messageInfo_MultiplexingConfig.DiscardUnknown(m)
  501. }
  502. var xxx_messageInfo_MultiplexingConfig proto.InternalMessageInfo
  503. func (m *MultiplexingConfig) GetEnabled() bool {
  504. if m != nil {
  505. return m.Enabled
  506. }
  507. return false
  508. }
  509. func (m *MultiplexingConfig) GetConcurrency() uint32 {
  510. if m != nil {
  511. return m.Concurrency
  512. }
  513. return 0
  514. }
  515. func init() {
  516. proto.RegisterType((*InboundConfig)(nil), "v2ray.core.app.proxyman.InboundConfig")
  517. proto.RegisterType((*AllocationStrategy)(nil), "v2ray.core.app.proxyman.AllocationStrategy")
  518. proto.RegisterType((*AllocationStrategy_AllocationStrategyConcurrency)(nil), "v2ray.core.app.proxyman.AllocationStrategy.AllocationStrategyConcurrency")
  519. proto.RegisterType((*AllocationStrategy_AllocationStrategyRefresh)(nil), "v2ray.core.app.proxyman.AllocationStrategy.AllocationStrategyRefresh")
  520. proto.RegisterType((*SniffingConfig)(nil), "v2ray.core.app.proxyman.SniffingConfig")
  521. proto.RegisterType((*ReceiverConfig)(nil), "v2ray.core.app.proxyman.ReceiverConfig")
  522. proto.RegisterType((*InboundHandlerConfig)(nil), "v2ray.core.app.proxyman.InboundHandlerConfig")
  523. proto.RegisterType((*OutboundConfig)(nil), "v2ray.core.app.proxyman.OutboundConfig")
  524. proto.RegisterType((*SenderConfig)(nil), "v2ray.core.app.proxyman.SenderConfig")
  525. proto.RegisterType((*MultiplexingConfig)(nil), "v2ray.core.app.proxyman.MultiplexingConfig")
  526. proto.RegisterEnum("v2ray.core.app.proxyman.KnownProtocols", KnownProtocols_name, KnownProtocols_value)
  527. proto.RegisterEnum("v2ray.core.app.proxyman.AllocationStrategy_Type", AllocationStrategy_Type_name, AllocationStrategy_Type_value)
  528. }
  529. func init() {
  530. proto.RegisterFile("v2ray.com/core/app/proxyman/config.proto", fileDescriptor_config_6857cd20ab15680d)
  531. }
  532. var fileDescriptor_config_6857cd20ab15680d = []byte{
  533. // 825 bytes of a gzipped FileDescriptorProto
  534. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x95, 0x4f, 0x6f, 0xdb, 0x36,
  535. 0x18, 0xc6, 0x6b, 0xcb, 0x8d, 0x9d, 0x37, 0x8d, 0xaa, 0xb0, 0x01, 0xaa, 0x79, 0x1b, 0xe0, 0x79,
  536. 0xc3, 0x6a, 0x74, 0x83, 0xd4, 0xba, 0xd8, 0x61, 0xa7, 0x2d, 0x4d, 0x0a, 0x34, 0xdb, 0x82, 0x78,
  537. 0xb4, 0xb1, 0x43, 0xb1, 0x41, 0x60, 0x24, 0x46, 0x23, 0x26, 0x91, 0x02, 0x49, 0xbb, 0xd1, 0x57,
  538. 0xda, 0x79, 0x1f, 0x60, 0xc7, 0x1d, 0xf6, 0xa1, 0x06, 0x89, 0x92, 0xff, 0xd4, 0x56, 0xd6, 0xa0,
  539. 0x37, 0xda, 0x7a, 0xde, 0x9f, 0xde, 0xf7, 0xe1, 0x43, 0x0a, 0x46, 0x8b, 0xb1, 0x24, 0xb9, 0x17,
  540. 0x8a, 0xd4, 0x0f, 0x85, 0xa4, 0x3e, 0xc9, 0x32, 0x3f, 0x93, 0xe2, 0x26, 0x4f, 0x09, 0xf7, 0x43,
  541. 0xc1, 0xaf, 0x59, 0xec, 0x65, 0x52, 0x68, 0x81, 0x1e, 0xd7, 0x4a, 0x49, 0x3d, 0x92, 0x65, 0x5e,
  542. 0xad, 0xea, 0x3f, 0x79, 0x07, 0x11, 0x8a, 0x34, 0x15, 0xdc, 0xe7, 0x54, 0xfb, 0x24, 0x8a, 0x24,
  543. 0x55, 0xca, 0x10, 0xfa, 0x5f, 0x34, 0x0b, 0x33, 0x21, 0x75, 0xa5, 0xf2, 0xde, 0x51, 0x69, 0x49,
  544. 0xb8, 0x2a, 0x9e, 0xfb, 0x8c, 0x6b, 0x2a, 0x0b, 0xf5, 0x7a, 0x5f, 0xfd, 0x67, 0xbb, 0xa9, 0x8a,
  545. 0x4a, 0x46, 0x12, 0x5f, 0xe7, 0x19, 0x8d, 0x82, 0x94, 0x2a, 0x45, 0x62, 0x6a, 0x2a, 0x86, 0x0f,
  546. 0xe1, 0xf0, 0x9c, 0x5f, 0x89, 0x39, 0x8f, 0x4e, 0x4b, 0xd0, 0xf0, 0x6f, 0x0b, 0xd0, 0x49, 0x92,
  547. 0x88, 0x90, 0x68, 0x26, 0xf8, 0x54, 0x4b, 0xa2, 0x69, 0x9c, 0xa3, 0x33, 0xe8, 0x14, 0xe5, 0x6e,
  548. 0x6b, 0xd0, 0x1a, 0xd9, 0xe3, 0x67, 0x5e, 0x83, 0x01, 0xde, 0x76, 0xa9, 0x37, 0xcb, 0x33, 0x8a,
  549. 0xcb, 0x6a, 0xf4, 0x07, 0x1c, 0x84, 0x82, 0x87, 0x73, 0x29, 0x29, 0x0f, 0x73, 0xb7, 0x3d, 0x68,
  550. 0x8d, 0x0e, 0xc6, 0xe7, 0x77, 0x81, 0x6d, 0xff, 0x75, 0xba, 0x02, 0xe2, 0x75, 0x3a, 0x0a, 0xa0,
  551. 0x2b, 0xe9, 0xb5, 0xa4, 0xea, 0x77, 0xd7, 0x2a, 0x5f, 0xf4, 0xea, 0xc3, 0x5e, 0x84, 0x0d, 0x0c,
  552. 0xd7, 0xd4, 0xfe, 0x37, 0xf0, 0xe9, 0xad, 0xed, 0xa0, 0x63, 0xb8, 0xbf, 0x20, 0xc9, 0xdc, 0xb8,
  553. 0x76, 0x88, 0xcd, 0x8f, 0xfe, 0x73, 0xf8, 0xa8, 0x11, 0xbe, 0xbb, 0x64, 0xf8, 0x35, 0x74, 0x0a,
  554. 0x17, 0x11, 0xc0, 0xde, 0x49, 0xf2, 0x96, 0xe4, 0xca, 0xb9, 0x57, 0xac, 0x31, 0xe1, 0x91, 0x48,
  555. 0x9d, 0x16, 0x7a, 0x00, 0xbd, 0x57, 0x37, 0x45, 0x20, 0x48, 0xe2, 0xb4, 0x87, 0xbf, 0x81, 0x3d,
  556. 0xe5, 0xec, 0xfa, 0x9a, 0xf1, 0xd8, 0x6c, 0x2a, 0x72, 0xa1, 0x4b, 0x39, 0xb9, 0x4a, 0x68, 0x54,
  557. 0x72, 0x7b, 0xb8, 0xfe, 0x89, 0x9e, 0xc3, 0x71, 0x44, 0x95, 0x66, 0xbc, 0xec, 0x26, 0x10, 0x0b,
  558. 0x2a, 0x25, 0x8b, 0xa8, 0xdb, 0x1e, 0x58, 0xa3, 0x7d, 0xfc, 0x68, 0xed, 0xd9, 0x65, 0xf5, 0x68,
  559. 0xf8, 0x57, 0x07, 0x6c, 0x4c, 0x43, 0xca, 0x16, 0x54, 0x56, 0xfc, 0xef, 0x00, 0x8a, 0x54, 0x06,
  560. 0x92, 0xf0, 0xd8, 0xb4, 0x7e, 0x30, 0x1e, 0xac, 0xbb, 0x6d, 0x82, 0xe8, 0x71, 0xaa, 0xbd, 0x89,
  561. 0x90, 0x1a, 0x17, 0x3a, 0xbc, 0x9f, 0xd5, 0x4b, 0xf4, 0x2d, 0xec, 0x25, 0x4c, 0x69, 0xca, 0xab,
  562. 0x4c, 0x7c, 0xd6, 0x50, 0x7c, 0x3e, 0xb9, 0x94, 0x67, 0x22, 0x25, 0x8c, 0xe3, 0xaa, 0x00, 0xfd,
  563. 0x0a, 0x8f, 0xc8, 0xd2, 0xce, 0x40, 0x55, 0x7e, 0x56, 0x5b, 0xfe, 0xd5, 0x1d, 0xb6, 0x1c, 0x23,
  564. 0xb2, 0x9d, 0xfb, 0x19, 0x3c, 0x54, 0x5a, 0x52, 0x92, 0x06, 0x8a, 0x6a, 0xcd, 0x78, 0xac, 0xdc,
  565. 0xce, 0x36, 0x79, 0x79, 0x2e, 0xbd, 0xfa, 0x5c, 0x7a, 0xd3, 0xb2, 0xca, 0xf8, 0x83, 0x6d, 0xc3,
  566. 0x98, 0x56, 0x08, 0xf4, 0x3d, 0x7c, 0x22, 0x8d, 0x83, 0x81, 0x90, 0x2c, 0x66, 0x9c, 0x24, 0xc1,
  567. 0x9a, 0xd5, 0xee, 0xfd, 0x72, 0x93, 0xfa, 0x95, 0xe6, 0xb2, 0x92, 0x9c, 0xad, 0x14, 0x45, 0x5f,
  568. 0x51, 0xe9, 0xc3, 0x6a, 0xcb, 0xba, 0x03, 0x6b, 0x64, 0x8f, 0x9f, 0x34, 0x4e, 0xfc, 0x23, 0x17,
  569. 0x6f, 0xf9, 0xa4, 0x38, 0xf5, 0xa1, 0x48, 0xd4, 0xcb, 0xb6, 0xdb, 0xc2, 0xb6, 0x61, 0xd4, 0x5b,
  570. 0x8b, 0x66, 0x70, 0xa4, 0xaa, 0xe4, 0xac, 0xe6, 0xed, 0x95, 0xf3, 0x36, 0x73, 0x37, 0xb3, 0x86,
  571. 0x9d, 0x9a, 0x50, 0x4f, 0xfb, 0x43, 0xa7, 0xb7, 0xe7, 0x74, 0x87, 0xff, 0xb6, 0xe0, 0xb8, 0xba,
  572. 0x6a, 0x5e, 0x13, 0x1e, 0x25, 0xcb, 0xf0, 0x38, 0x60, 0x69, 0x12, 0x97, 0xa9, 0xd9, 0xc7, 0xc5,
  573. 0x12, 0x4d, 0xe1, 0xa8, 0x1a, 0x5d, 0xae, 0xda, 0x30, 0xc1, 0xf8, 0x72, 0x47, 0x30, 0xcc, 0xf5,
  574. 0x56, 0xde, 0x33, 0xd1, 0x85, 0xb9, 0xdd, 0xb0, 0x53, 0x03, 0x96, 0x9e, 0x5f, 0x80, 0x5d, 0xb6,
  575. 0xbc, 0x22, 0x5a, 0x77, 0x22, 0x1e, 0x96, 0xd5, 0x35, 0x6e, 0xe8, 0x80, 0x7d, 0x39, 0xd7, 0xeb,
  576. 0x37, 0xe7, 0x3f, 0x6d, 0x78, 0x30, 0xa5, 0x3c, 0x5a, 0x0e, 0xf6, 0x02, 0xac, 0x05, 0x23, 0xd5,
  577. 0x71, 0x78, 0x8f, 0x44, 0x17, 0xea, 0x5d, 0x81, 0x6b, 0x7f, 0x78, 0xe0, 0x7e, 0x6e, 0x18, 0xfe,
  578. 0xe9, 0xff, 0x40, 0x27, 0x45, 0x51, 0xc5, 0xdc, 0x34, 0x00, 0xbd, 0x01, 0x94, 0xce, 0x13, 0xcd,
  579. 0xb2, 0x84, 0xde, 0xdc, 0x7a, 0x38, 0x36, 0xc2, 0x72, 0x51, 0x97, 0xac, 0x02, 0x73, 0xb4, 0xc4,
  580. 0x2c, 0xcd, 0x9d, 0x00, 0xda, 0x16, 0xde, 0x72, 0x8b, 0x0d, 0xb6, 0xbf, 0x2b, 0x87, 0x1b, 0x1f,
  581. 0x83, 0xa7, 0x9f, 0x83, 0xbd, 0x99, 0x7f, 0xd4, 0x83, 0xce, 0xeb, 0xd9, 0x6c, 0xe2, 0xdc, 0x43,
  582. 0x5d, 0xb0, 0x66, 0x3f, 0x4d, 0x9d, 0xd6, 0xcb, 0x53, 0xf8, 0x38, 0x14, 0x69, 0x53, 0xef, 0x93,
  583. 0xd6, 0x9b, 0x5e, 0xbd, 0xfe, 0xb3, 0xfd, 0xf8, 0x97, 0x31, 0x26, 0xb9, 0x77, 0x5a, 0xa8, 0x4e,
  584. 0xb2, 0xcc, 0x38, 0x95, 0x12, 0x7e, 0xb5, 0x57, 0x7e, 0x58, 0x5f, 0xfc, 0x17, 0x00, 0x00, 0xff,
  585. 0xff, 0x4d, 0xe1, 0x89, 0x0d, 0x4e, 0x08, 0x00, 0x00,
  586. }