Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions cmping.py
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand All @@ -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
Expand All @@ -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:
Expand Down