syntax = "proto3";

package v2ray.core.app.reverse;
option csharp_namespace = "V2Ray.Core.Proxy.Reverse";
option go_package = "github.com/v2fly/v2ray-core/v5/app/reverse";
option java_package = "com.v2ray.core.proxy.reverse";
option java_multiple_files = true;

import "common/protoext/extensions.proto";

message Control {
  enum State {
    ACTIVE = 0;
    DRAIN = 1;
  }

  State state = 1;
  bytes random = 99;
}

message BridgeConfig {
  string tag = 1;
  string domain = 2;
}

message PortalConfig {
  string tag = 1;
  string domain = 2;
}

message Config {
  option (v2ray.core.common.protoext.message_opt).type = "service";
  option (v2ray.core.common.protoext.message_opt).short_name = "reverse";

  repeated BridgeConfig bridge_config = 1;
  repeated PortalConfig portal_config = 2;
}
