Share Pastebin
Guest
Public paste!

Untitled

By: a guest | Mar 16th, 2010 | Syntax: Python | Size: 1.08 KB | Hits: 42 | Expires: Never
Copy text to clipboard
  1. #!/usr/bin/python
  2. #coding=iso8859-2
  3. import sys, socket, select
  4.  
  5. ilPar = len(sys.argv) - 1
  6. msg = ""
  7. if ilPar == 0:
  8.   print "Nie podano argumentow programu"
  9. elif (ilPar == 1) or (ilPar == 3):
  10.   """Tryb serwera"""
  11.   print "Tryb serwera"
  12.   listenSock  = socket.socket();
  13.   port = sys.argv[1]
  14.   listenSock.bind(("",int(port)))
  15.   listenSock.listen(5)
  16.   sock,_ = listenSock.accept()
  17. elif (ilPar == 2) or (ilPar == 5):
  18.   """Tryb klienta"""
  19.   print "Tryb klienta"
  20.   adres = sys.argv[1]
  21.   port = sys.argv[2]
  22.   sock = socket.socket()
  23.   sock.connect((adres, int(port)))
  24. if (ilPar == 3) or (ilPar == 5):
  25.   """Tryb zapisu rozmowy"""
  26.  
  27. msgIn = ""
  28.  
  29. while True:
  30.   input,_,_ = select.select([sys.stdin, sock],[], [])
  31.   if sock in input:
  32.     subMsgIn = sock.recv(1)
  33.     while subMsgIn != '\n':
  34.       msgIn = msgIn + subMsgIn
  35.       subMsgIn = sock.recv(1)
  36.     """odebrano cala linie tekstu"""
  37.     print msgIn
  38.     msgIn = ""
  39.   if sys.stdin in input:
  40.     msgOut = sys.stdin.readline()
  41.     if not msgOut:
  42.       """Ctrl+D"""
  43.       sock.send("ENDCON")
  44.     else:
  45.       sock.send(msgOut)