From 42d085bdd91fb2d18d3e1298652d0a32ae686e21 Mon Sep 17 00:00:00 2001 From: none Date: Fri, 23 Feb 2024 19:37:59 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7=D0=BE?= =?UTF-8?q?=D0=B2=D0=B0=D0=BD=20=D0=BF=D1=80=D0=B8=D1=91=D0=BC=20=D1=80?= =?UTF-8?q?=D0=B0=D1=81=D1=81=D1=8B=D0=BB=D0=BA=D0=B8=20=D1=81=D0=B0=D0=B9?= =?UTF-8?q?=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 7 ++++--- network.py | 17 ++++++++++++----- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/main.py b/main.py index 255b1bd..8f9d4e3 100644 --- a/main.py +++ b/main.py @@ -50,7 +50,8 @@ if mode == 0: serv.start() elif mode == 1: pport = int(input()) - port_dest = client(pport, "is_just.jet") - if port_dest != "not exist": - client(port_dest, "get_just.jet") + port_dest = client(pport, f"publish_just.jet<>{http_port}") + print(port_dest) +# if port_dest != "not exist": +# client(port_dest, "get_just.jet") diff --git a/network.py b/network.py index 5e66e7a..af0861e 100644 --- a/network.py +++ b/network.py @@ -18,7 +18,7 @@ from domain_check import * # 1. [+] Пинг # 2. [+] Проверка существования сайта # 3. [+] Передача сайта -# 4. Приём рассылки сайтов +# 4. [+] Приём рассылки сайтов # 5. Проверка всех сайтов def port_gen(): @@ -51,6 +51,7 @@ def server(http_port): while True: try: op = conn.recv(1024).decode() + print(op) except: pass if not op: @@ -60,22 +61,28 @@ def server(http_port): conn.send("pong".encode()) elif op[:3] == "is_": check = op[3:] - print(check) - # Защита от доступа выше + # Защита от доступа выше и т.п. check = domain_ok(check) - print(check) if os.path.exists(f'cached/{check}'): conn.send(str(http_port).encode()) else: conn.send("not_exist".encode()) + elif op[:8] == "publish_": + data = op[8:] + site, port = data.split("<>") + site = domain_ok(site) + if site: + conn.send("accepted".encode()) + client(port, f"get_{site}") + conn.close() # op = operation def client(port, op = "ping"): host = 'jetwork.404.mn' - if op == "ping" or op[:3] == "is_": + if op == "ping" or op[:3] == "is_" or op[:8] == "publish_": s = socket.socket() try: s.connect((host, port))