import socket
import os

serveraddress="/tmp/square_server"
sock=socket.socket(socket.AF_UNIX,socket.SOCK_STREAM)
try:
	os.remove(serveraddress)
except OSError:
	pass
sock.bind(serveraddress)
# 5 klientov moze cakat vo fronte
sock.listen(5)
while True:
	# sock_client vrati socket pripojeny na druhej strane na klienta
	(sock_client,address)=sock.accept()
	print "server: pripojenie od klienta"
	# Vybavujeme teraz jedneho klienta po druhom,
	# aby sme si zjednodusili zivot.
	# Klasika je teraz spravit fork() a vybavovat klientov
	# sucasne v child procesoch.
	input=sock_client.recv(1024)
	print "server: klient poslal", input
	output="%d\n" % (int(input)*int(input))
	print "server: vraciam", output
	sock_client.send(output)
	print "server: vybavene, zatvaram socket"
	sock_client.close()
