hermes-backend-typings/data.capnp

126 lines
No EOL
2.2 KiB
Cap'n Proto

@0x92a7c8962141ef12;
using Go = import "/go.capnp";
$Go.package("commonbackend");
$Go.import("git.terah.dev/imterah/hermes/backend/commonbackend");
enum Protocol {
tcp @0;
udp @1;
}
enum StatusCode {
success @0;
failure @1;
}
struct Start {
id @0 :UInt8 = 0;
arguments @1 :Data;
}
struct Stop {
id @0 :UInt8 = 1;
}
struct AddProxy {
id @0 :UInt8 = 2;
sourceIP @1 :Data;
sourcePort @2 :UInt16;
destPort @3 :UInt16;
protocol @4 :Protocol;
}
struct RemoveProxy {
id @0 :UInt8 = 3;
sourceIP @1 :Data;
sourcePort @2 :UInt16;
destPort @3 :UInt16;
protocol @4 :Protocol;
}
struct ProxyStatusRequest {
id @0 :UInt8 = 4;
sourceIP @1 :Data;
sourcePort @2 :UInt16;
destPort @3 :UInt16;
protocol @4 :Protocol;
}
struct ProxyStatusResponse {
id @0 :UInt8 = 5;
sourceIP @1 :Data;
sourcePort @2 :UInt16;
destPort @3 :UInt16;
protocol @4 :Protocol;
isActive @5 :Bool;
}
struct ProxyInstanceRequest {
id @0 :UInt8 = 6;
}
struct ProxyInstanceResponse {
id @0 :UInt8 = 7;
proxies @1 :List(ProxyInstance);
struct ProxyInstance {
sourceIP @0 :Text;
sourcePort @1 :UInt16;
destPort @2 :UInt16;
protocol @3 :Protocol;
}
}
struct BackendStatusRequest {
id @0 :UInt8 = 8;
}
struct BackendStatusResponse {
id @0 :UInt8 = 9;
isRunning @1 :Bool;
statusCode @2 :StatusCode;
message @3 :Text;
}
struct ProxyConnectionsRequest {
id @0 :UInt8 = 10;
}
struct ProxyConnectionsResponse {
id @0 :UInt8 = 11;
connections @1 :List(Connection);
struct Connection {
sourceIP @0 :Data;
sourcePort @1 :UInt16;
destPort @2 :UInt16;
clientIP @3 :Data;
clientPort @4 :UInt16;
}
}
struct CheckClientParameters {
id @0 :UInt8 = 12;
sourceIP @1 :Data;
sourcePort @2 :UInt16;
destPort @3 :UInt16;
protocol @4 :Protocol;
}
struct CheckServerParameters {
id @0 :UInt8 = 13;
arguments @1 :Data;
}
struct CheckParametersResponse {
id @0 :UInt8 = 14;
inResponseTo @1 :InResponseTo;
isValid @2 :Bool;
message @3 :Text;
enum InResponseTo {
checkClientParameters @0;
checkServerParameters @1;
}
}