From c5edc60abd6794c9fa37c917128879edd680b10d Mon Sep 17 00:00:00 2001 From: missytake Date: Wed, 22 Apr 2026 09:45:41 +0200 Subject: [PATCH 1/2] fix: dclogin links for IP addresses need square brackets --- cmping.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cmping.py b/cmping.py index 8516cb0..bf372ae 100644 --- a/cmping.py +++ b/cmping.py @@ -87,7 +87,7 @@ def create_qr_url(domain_or_ip): domain_or_ip: Either a domain name or an IP address Returns: - str: Either dcaccount:domain or dclogin:username@ip/?p=password&v=1&ip=993&sp=465&ic=3&ss=default + str: Either dcaccount:domain or dclogin:username@[ip]/?p=password&v=1&ih=ip&sh=ip&ip=993&sp=465&ic=3&ss=default """ if is_ip_address(domain_or_ip): # Generate credentials for IP address @@ -99,8 +99,8 @@ def create_qr_url(domain_or_ip): # Format: dclogin:username@host/?query qr_url = ( - f"dclogin:{username}@{domain_or_ip}/?" - f"p={encoded_password}&v=1&ip=993&sp=465&ic=3&ss=default" + f"dclogin:{username}@[{domain_or_ip}]/?" + f"p={encoded_password}&v=1&ih={domain_or_ip}&sh={domain_or_ip}&ip=993&sp=465&ic=3&ss=default" ) return qr_url else: From 0355eb9c87aab55432964b36a70d2815e9c068cb Mon Sep 17 00:00:00 2001 From: missytake Date: Wed, 22 Apr 2026 10:35:08 +0200 Subject: [PATCH 2/2] fix: relay username length is 9 by default Co-authored-by: j4n --- cmping.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmping.py b/cmping.py index bf372ae..c2cccd7 100644 --- a/cmping.py +++ b/cmping.py @@ -72,10 +72,10 @@ def generate_credentials(): """Generate random username and password for IP-based login. Returns: - tuple: (username, password) where username is 12 chars and password is 20 chars + tuple: (username, password) where username is 9 chars and password is 20 chars """ chars = string.ascii_lowercase + string.digits - username = "".join(random.choices(chars, k=12)) + username = "".join(random.choices(chars, k=9)) password = "".join(random.choices(chars, k=20)) return username, password