Marco Meoni wrote: > Hi. I read the Gordon McMillan's "Socket Programming Howto". > I tried to use the example in this howto but this doesn't work.
You are right, that obviously won't work. The code passes 'self' to __init__, but not to any of the others methods. I'm cc'ing this post to [EMAIL PROTECTED] > The code is > class mysocket: > '''classe solamente dimostrativa > - codificata per chiarezza, non per efficenza''' > def __init__(self, sock=None): > if sock is None: > self.sock = socket.socket( > socket.AF_INET, socket.SOCK_STREAM) > else: > self.sock = sock > def connect(host, port): > self.sock.connect((host, port)) > def mysend(msg): > totalsent = 0 > while totalsent < MSGLEN: > sent = self.sock.send(msg[totalsent:]) > if sent == 0: > raise RuntimeError, \\ > "connessione socket interrotta" > totalsent = totalsent + sent To send exactly MSGLEN bytes, use socket's 'sendall' method. > def myreceive(): > msg = '' > while len(msg) < MSGLEN: > chunk = self.sock.recv(MSGLEN-len(msg)) > if chunk == '': > raise RuntimeError, \\ > "connessione socket interrotta" > msg = msg + chunk > return msg > How can i use this? Treat it as a "HowNotTo". -- --Bryan -- http://mail.python.org/mailman/listinfo/python-list