From 710f0b2681b27644512a5c0626012320c4a5b545 Mon Sep 17 00:00:00 2001 From: opentrade Date: Tue, 6 Apr 2021 17:08:37 +0800 Subject: [PATCH] INVALID_ID_FORMAT --- Cargo.lock | 1 + libs/hbb_common | 2 +- src/rendezvous_server.rs | 4 +++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5e0c0b4..42578e8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -514,6 +514,7 @@ dependencies = [ "protobuf-codegen-pure", "quinn", "rand", + "regex", "serde", "serde_derive", "serde_json", diff --git a/libs/hbb_common b/libs/hbb_common index 7bf9906..4d5b935 160000 --- a/libs/hbb_common +++ b/libs/hbb_common @@ -1 +1 @@ -Subproject commit 7bf9906c1fabc2e4437871715db4ef7883fca3d4 +Subproject commit 4d5b935f16abe33e106b13f30877edb2960f53e9 diff --git a/src/rendezvous_server.rs b/src/rendezvous_server.rs index 94daf88..79ed121 100644 --- a/src/rendezvous_server.rs +++ b/src/rendezvous_server.rs @@ -392,7 +392,9 @@ impl RendezvousServer { } let id = rk.id; let mut res = register_pk_response::Result::OK; - if let Some(peer) = self.pm.get(&id).await { + if !hbb_common::is_valid_custom_id(&id) { + res = register_pk_response::Result::INVALID_ID_FORMAT; + } else if let Some(peer) = self.pm.get(&id).await { if peer.uuid != rk.uuid { log::warn!( "Peer {} uuid mismatch: {:?} vs {:?}",