From 510ebdca504915c51c2a23e8c4feea5379096e30 Mon Sep 17 00:00:00 2001 From: 21pages Date: Wed, 7 Jan 2026 12:42:01 +0800 Subject: [PATCH 1/2] Revert "add ControlPermissions" This reverts commit 178c97d59f1842fe89e0d89db44d8013da6afe93. --- protos/rendezvous.proto | 27 +++------------------------ 1 file changed, 3 insertions(+), 24 deletions(-) diff --git a/protos/rendezvous.proto b/protos/rendezvous.proto index f9ff3cf..afa86b4 100644 --- a/protos/rendezvous.proto +++ b/protos/rendezvous.proto @@ -30,25 +30,7 @@ message PunchHoleRequest { bytes socket_addr_v6 = 10; } -message ControlPermissions { - enum Feature { - keyboard = 0; - remote_printer = 1; - clipboard = 2; - file = 3; - audio = 4; - camera = 5; - terminal = 6; - tunnel = 7; - restart = 8; - recording = 9; - block_input = 10; - remote_modify = 11; - } - uint64 disabled_features = 1; -} - -message PunchHole { +message PunchHole { bytes socket_addr = 1; string relay_server = 2; NatType nat_type = 3; @@ -56,7 +38,6 @@ message PunchHole { bool force_relay = 5; int32 upnp_port = 6; bytes socket_addr_v6 = 7; - ControlPermissions control_permissions = 8; } message TestNatRequest { @@ -143,7 +124,6 @@ message RequestRelay { string licence_key = 6; ConnType conn_type = 7; string token = 8; - ControlPermissions control_permissions = 9; } message RelayResponse { @@ -167,11 +147,10 @@ message SoftwareUpdate { string url = 1; } // even some router has below connection error if we connect itself, // { kind: Other, error: "could not resolve to any address" }, // so we request local address to connect. -message FetchLocalAddr { - bytes socket_addr = 1; +message FetchLocalAddr { + bytes socket_addr = 1; string relay_server = 2; bytes socket_addr_v6 = 3; - ControlPermissions control_permissions = 4; } message LocalAddr { From e163e2d8295ea6ef7869fbff6ad1b701e2540c49 Mon Sep 17 00:00:00 2001 From: 21pages Date: Mon, 5 Jan 2026 19:12:08 +0800 Subject: [PATCH 2/2] add three state control permissions Signed-off-by: 21pages --- protos/rendezvous.proto | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/protos/rendezvous.proto b/protos/rendezvous.proto index afa86b4..fb0c75d 100644 --- a/protos/rendezvous.proto +++ b/protos/rendezvous.proto @@ -30,7 +30,25 @@ message PunchHoleRequest { bytes socket_addr_v6 = 10; } -message PunchHole { +message ControlPermissions { + enum Permission { + keyboard = 0; + remote_printer = 1; + clipboard = 2; + file = 3; + audio = 4; + camera = 5; + terminal = 6; + tunnel = 7; + restart = 8; + recording = 9; + block_input = 10; + remote_modify = 11; + } + uint64 permissions = 1; +} + +message PunchHole { bytes socket_addr = 1; string relay_server = 2; NatType nat_type = 3; @@ -38,6 +56,7 @@ message PunchHole { bool force_relay = 5; int32 upnp_port = 6; bytes socket_addr_v6 = 7; + ControlPermissions control_permissions = 8; } message TestNatRequest { @@ -124,6 +143,7 @@ message RequestRelay { string licence_key = 6; ConnType conn_type = 7; string token = 8; + ControlPermissions control_permissions = 9; } message RelayResponse { @@ -147,10 +167,11 @@ message SoftwareUpdate { string url = 1; } // even some router has below connection error if we connect itself, // { kind: Other, error: "could not resolve to any address" }, // so we request local address to connect. -message FetchLocalAddr { - bytes socket_addr = 1; +message FetchLocalAddr { + bytes socket_addr = 1; string relay_server = 2; bytes socket_addr_v6 = 3; + ControlPermissions control_permissions = 4; } message LocalAddr {