socket problem?

Donn Cave donn at
Tue Sep 12 07:27:22 CEST 2000

Quoth Zajcev Evgeny <lg at>:

| want to use socket.sendto method to send data via TCP
| and for example send SYN packet to some host

| >>> import socket
| >>> a = socket.socket(socket.AF_INET, socket.SOCK_STREAM, socket.IPPROTO_TCP)
| >>> a.sendto('E\020\000,\001\360@\000@\006t\223\325\270\214d\325\270\214c\0179\000\025X\352\247g\000\000\000`\002\000\004M\000\002\004[@\000', ('', 0))
| Traceback (most recent call last):
|   File "<stdin>", line 1, in ?
| socket.error: (49, "Can't assign requested address")
| >>> 
| i'm fall in out, it doesnt work!
| i try with other socket types and protos ==> work perfect but TCP
| explain me please where i'm misataken or it is long discovered bug?

I could be wrong, but I believe a SOCK_STREAM has to be connected.  Like,

 a = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
 a.connect(('', 7010))

If I understand right, you may have already tried SOCK_DGRAM and
found that to work - that's where I would use sendto() and recvfrom().

	Donn Cave, donn at

More information about the Python-list mailing list