lab3/tcp_server.py
2026-05-07 15:00:51 +03:00

40 lines
815 B
Python

import socket
HOST = "0.0.0.0"
PORT = 10000
def process_message(message: str) -> str:
return f"TCP server received: {message.upper()}"
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
server.bind((HOST, PORT))
server.listen(1)
print(f"TCP server started on port {PORT}")
print("Send EXIT from client to stop the server")
while True:
conn, addr = server.accept()
print(f"Connection from {addr}")
data = conn.recv(1024)
if not data:
conn.close()
continue
message = data.decode("utf-8")
response = process_message(message)
conn.sendall(response.encode("utf-8"))
conn.close()
if message.strip().upper() == "EXIT":
print("TCP server stopped")
break
server.close()