Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import socket
- import os
- import sys
- #gestione processo figlio
- def child():
- print('\nUn nuovo processo figlio', os.getpid())
- #gestione processo padre
- def parent():
- global newpid
- newpid = os.fork()
- if newpid == 0:
- child()
- else:
- pids = (os.getpid(), newpid)
- print("padre: %d, figlio: %d\n" %pids)
- s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- print('Socket creata')
- #Bind socket to local host and port
- try:
- s.bind((HOST, PORT))
- except socket.error as msg:
- # print('Bind failed. Error Code : ' + msg[0] + ' Message ' + msg[1])
- #sys.exit()
- print('bind della socket completata')
- #Start listening on socket
- s.listen(5)
- print('Socket in ascolto')
- #wait to accept a connection - blocking call
- #accetta connessioni fino a 2 client
- for i in range(2):
- conn[i], addr = s.accept()
- parent()
- print('Connesso con' + ':' + str(addr[1]))
- if newpid == 0:
- if i == 0:
- buff=b'229 X\r\n'
- conn[0].send(buff)
- if i == 1:
- buff=b'229 O\r\n'
- conn[1].send(buff)
- #inizia dialogo tra client e server
- while 1:
- s.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement