-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathserver.py
More file actions
35 lines (28 loc) · 906 Bytes
/
Copy pathserver.py
File metadata and controls
35 lines (28 loc) · 906 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import socket
IP = socket.gethostbyname(socket.gethostname())
PORT = 4455
ADDR = (IP, PORT)
FORMAT = "utf-8"
SIZE = 1024
def main():
server= socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(ADDR)
server.listen()
print("[LISTENING] Server is listening. ")
while True:
conn, addr = server.accept()
print(f"[NEW CONNECTION] {addr} connected.")
filename = conn.recv(SIZE).decode(FORMAT)
print(filename)
print("[RECV] Filename received")
file = open(filename, "w")
conn.send("Filename received.".encode(FORMAT))
data = conn.recv(SIZE).decode(FORMAT)
print(f"[RECV] File data received.")
file.write(data)
conn.send("File data received.".encode(FORMAT))
file.close()
conn.close()
print(f"[DISCONNECTED] Server has ended")
if __name__ == "__main__":
main()