secret validation
This commit is contained in:
parent
46426c45b0
commit
be8d178e5c
4
linux.py
4
linux.py
|
|
@ -151,16 +151,16 @@ def _edit_config_dialog() -> None:
|
|||
done.set()
|
||||
|
||||
def on_save() -> None:
|
||||
from tkinter import messagebox
|
||||
merged = validate_config_form(widgets, DEFAULT_CONFIG, include_autostart=False)
|
||||
if isinstance(merged, str):
|
||||
_show_error(merged)
|
||||
messagebox.showerror("TG WS Proxy — Ошибка", merged, parent=root)
|
||||
return
|
||||
save_config(merged)
|
||||
_config.update(merged)
|
||||
log.info("Config saved: %s", merged)
|
||||
_tray_icon.menu = _build_menu()
|
||||
|
||||
from tkinter import messagebox
|
||||
do_restart = messagebox.askyesno(
|
||||
"Перезапустить?",
|
||||
"Настройки сохранены.\n\nПерезапустить прокси сейчас?",
|
||||
|
|
|
|||
|
|
@ -1043,7 +1043,7 @@ async def _run(stop_event: Optional[asyncio.Event] = None):
|
|||
log.info("=" * 60)
|
||||
log.info(" Telegram MTProto WS Bridge Proxy")
|
||||
log.info(" Listening on %s:%d", proxy_config.host, proxy_config.port)
|
||||
log.info(" Secret: %s", "dd" + proxy_config.secret)
|
||||
log.info(" Secret: %s", proxy_config.secret)
|
||||
log.info(" Target DC IPs:")
|
||||
for dc in sorted(proxy_config.dc_redirects.keys()):
|
||||
ip = proxy_config.dc_redirects.get(dc)
|
||||
|
|
|
|||
|
|
@ -372,10 +372,18 @@ def validate_config_form(
|
|||
except ValueError as e:
|
||||
return str(e)
|
||||
|
||||
secret_val = widgets.secret_var.get().strip()
|
||||
if len(secret_val) != 32:
|
||||
return "Secret должен содержать ровно 32 hex-символа (16 байт)."
|
||||
try:
|
||||
bytes.fromhex(secret_val)
|
||||
except ValueError:
|
||||
return "Secret должен состоять только из hex-символов (0-9, a-f)."
|
||||
|
||||
new_cfg: Dict[str, Any] = {
|
||||
"host": host_val,
|
||||
"port": port_val,
|
||||
"secret": widgets.secret_var.get().strip(),
|
||||
"secret": secret_val,
|
||||
"dc_ip": lines,
|
||||
"verbose": widgets.verbose_var.get(),
|
||||
}
|
||||
|
|
|
|||
|
|
@ -214,9 +214,10 @@ def _edit_config_dialog() -> None:
|
|||
done.set()
|
||||
|
||||
def on_save() -> None:
|
||||
from tkinter import messagebox
|
||||
merged = validate_config_form(widgets, DEFAULT_CONFIG, include_autostart=_supports_autostart())
|
||||
if isinstance(merged, str):
|
||||
_show_error(merged)
|
||||
messagebox.showerror("TG WS Proxy — Ошибка", merged, parent=root)
|
||||
return
|
||||
save_config(merged)
|
||||
_config.update(merged)
|
||||
|
|
@ -225,7 +226,6 @@ def _edit_config_dialog() -> None:
|
|||
set_autostart_enabled(bool(merged.get("autostart", False)))
|
||||
_tray_icon.menu = _build_menu()
|
||||
|
||||
from tkinter import messagebox
|
||||
do_restart = messagebox.askyesno(
|
||||
"Перезапустить?",
|
||||
"Настройки сохранены.\n\nПерезапустить прокси сейчас?",
|
||||
|
|
|
|||
Loading…
Reference in New Issue