hi,
i am writing a socket program in python,both client side and server
side.I've written the client side which is working perfectly
fine(checked it against server program written in C).but as for my
server program written in python it simply hangs.it does not show any
error also.I've tried sample programs available .I don understand what
the reason is as i am quite new to it.
here is teh server side program:
///////////////////////
from socket import *
import socket
import sys
HOST = '' #any address
PORT = htons(9999) #same port address as client
try:
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
except socket.error:
print 'socket not created'
try:
s.bind((HOST,PORT))
except socket.error:
print 'error in bind'
try:
s.listen(5)
except socket.error:
print 'error in listen'
conn, addr = s.accept()
print 'Connected by', addr
while 1:
data = conn.recv(1024)
if not data: break
conn.send(data)
conn.close()
can someone tell me what the problem is? 11 8356
<an**********@sify.com> wrote in message
news:57**************************@posting.google.c om... hi, i am writing a socket program in python,both client side and server side.I've written the client side which is working perfectly fine(checked it against server program written in C).but as for my server program written in python it simply hangs.it does not show any error also.I've tried sample programs available .I don understand what the reason is as i am quite new to it. here is teh server side program:
/////////////////////// from socket import * import socket import sys
HOST = '' #any address PORT = htons(9999) #same port address as client
<snip code> can someone tell me what the problem is?
Your applying a function designed to simplyfy transfering IP addresses to a
literal value you want to use for your port. The following should show the
effect thats now happening.
PythonWin 2.3.1 (#47, Sep 23 2003, 23:47:32) [MSC v.1200 32 bit (Intel)] on
win32.
Portions Copyright 1994-2001 Mark Hammond (mh******@skippinet.com.au) - see
'Help/About PythonWin' for further copyright information. import socket socket.htons(9999)
3879
--
Anthony McDonald
This email address is protected by SpamBayes www.spambayes.org
hi,
was stuck with another work.now bac to python program.
i tried out using
PORT = socket.htons(9999)
it still doesn't work.here is the code.it still hangs.can some one
tell me what could be te problem?
#from socket import *
import socket
import sys
HOST = '' #any address
PORT = socket.htons(9222) #same port address as client
class Sock:
def __init__ (self,parent):
try:
self.s = socket(AF_INET,SOCK_STREAM)
except socket.error:
print 'socket not created'
try:
self.s.bind((HOST,PORT))
except self.error:
print 'error in bind'
try:
self.s.listen(5)
except self.error:
print 'error in listen'
conn, addr = self.s.accept()
# print 'Connected by',`addr`
while 1:
data = conn.recv(1024)
if not data: break
conn.send(data)
conn.close()
thanx,
AKR.
"Anthony McDonald" <tonym1972/at/club-internet/in/fr> wrote in message news:<3f***********************@news.club-internet.fr>... <an**********@sify.com> wrote in message news:57**************************@posting.google.c om... hi, i am writing a socket program in python,both client side and server side.I've written the client side which is working perfectly fine(checked it against server program written in C).but as for my server program written in python it simply hangs.it does not show any error also.I've tried sample programs available .I don understand what the reason is as i am quite new to it. here is teh server side program:
/////////////////////// from socket import * import socket import sys
HOST = '' #any address PORT = htons(9999) #same port address as client <snip code> can someone tell me what the problem is?
Your applying a function designed to simplyfy transfering IP addresses to a literal value you want to use for your port. The following should show the effect thats now happening.
PythonWin 2.3.1 (#47, Sep 23 2003, 23:47:32) [MSC v.1200 32 bit (Intel)] on win32. Portions Copyright 1994-2001 Mark Hammond (mh******@skippinet.com.au) - see 'Help/About PythonWin' for further copyright information. import socket socket.htons(9999) 3879
<an**********@sify.com> wrote in message
news:57**************************@posting.google.c om... hi, was stuck with another work.now bac to python program. i tried out using PORT = socket.htons(9999)
it still doesn't work.here is the code.it still hangs.can some one tell me what could be te problem?
#from socket import * import socket import sys
HOST = '' #any address PORT = socket.htons(9222) #same port address as client
class Sock: def __init__ (self,parent): try: self.s = socket(AF_INET,SOCK_STREAM) except socket.error: print 'socket not created' try: self.s.bind((HOST,PORT)) except self.error: print 'error in bind' try: self.s.listen(5) except self.error: print 'error in listen' conn, addr = self.s.accept() # print 'Connected by',`addr` while 1: data = conn.recv(1024) if not data: break conn.send(data) conn.close()
thanx, AKR.
Sorry for my brief answer last time, but I had hoped the code fragment I
posted would explain what was happening with your code.
Your code is almost a verbatum copy of the Python example, except you've
chosen to massage the port value using the HTONS function. So for most
architectures the port value 9999 or 9222 would be changed to somewhere in
the 3xxx port range. Any client trying to connect on those ports will fail.
Hence you noted success on a C server which isn't using that function, but
failure on your Python server which is. The solution is to just assign the
port value you want unchanged.
--
Anthony McDonald
This email address is protected by SpamBayes www.spambayes.org
hi,
My one problem is solved,python server no more hangs,but my main
purpose still remains unsolved,my client is not able to establish
connection.my client is a C program running on a windows machine.On
running the python program,in the python shell i get this way
(cursor)
i assumed my server is waiting for a connection,but my client did not
connect,it failed.
I tried debugging the python program using the step by step debug
control.it moves till def __init__(Self,parent):
and stops(seems to be waiting).It does not move to the next line.
Can you tell me what is happening? and what is the problem with my
server program?Sorry for the trouble,
thanx
AKR.
"Anthony McDonald" <tonym1972/at/club-internet/in/fr> wrote in message news:<3f***********************@news.club-internet.fr>... <an**********@sify.com> wrote in message news:57**************************@posting.google.c om... hi, was stuck with another work.now bac to python program. i tried out using PORT = socket.htons(9999)
it still doesn't work.here is the code.it still hangs.can some one tell me what could be te problem?
#from socket import * import socket import sys
HOST = '' #any address PORT = socket.htons(9222) #same port address as client
class Sock: def __init__ (self,parent): try: self.s = socket(AF_INET,SOCK_STREAM) except socket.error: print 'socket not created' try: self.s.bind((HOST,PORT)) except self.error: print 'error in bind' try: self.s.listen(5) except self.error: print 'error in listen' conn, addr = self.s.accept() # print 'Connected by',`addr` while 1: data = conn.recv(1024) if not data: break conn.send(data) conn.close()
thanx, AKR. Sorry for my brief answer last time, but I had hoped the code fragment I posted would explain what was happening with your code.
Your code is almost a verbatum copy of the Python example, except you've chosen to massage the port value using the HTONS function. So for most architectures the port value 9999 or 9222 would be changed to somewhere in the 3xxx port range. Any client trying to connect on those ports will fail. Hence you noted success on a C server which isn't using that function, but failure on your Python server which is. The solution is to just assign the port value you want unchanged.
hi,
i've posted my doubt on my server program written in python.i am not
able to communicate with any client.My server program does not even
create a socket.can someone tell me what the problem is?
thanx,
AKR an**********@sify.com wrote in message news:<57**************************@posting.google. com>... hi, My one problem is solved,python server no more hangs,but my main purpose still remains unsolved,my client is not able to establish connection.my client is a C program running on a windows machine.On running the python program,in the python shell i get this way
(cursor)
i assumed my server is waiting for a connection,but my client did not connect,it failed. I tried debugging the python program using the step by step debug control.it moves till def __init__(Self,parent): and stops(seems to be waiting).It does not move to the next line. Can you tell me what is happening? and what is the problem with my server program?Sorry for the trouble, thanx AKR. "Anthony McDonald" <tonym1972/at/club-internet/in/fr> wrote in message news:<3f***********************@news.club-internet.fr>... <an**********@sify.com> wrote in message news:57**************************@posting.google.c om... hi, was stuck with another work.now bac to python program. i tried out using PORT = socket.htons(9999)
it still doesn't work.here is the code.it still hangs.can some one tell me what could be te problem?
#from socket import * import socket import sys
HOST = '' #any address PORT = socket.htons(9222) #same port address as client
class Sock: def __init__ (self,parent): try: self.s = socket(AF_INET,SOCK_STREAM) except socket.error: print 'socket not created' try: self.s.bind((HOST,PORT)) except self.error: print 'error in bind' try: self.s.listen(5) except self.error: print 'error in listen' conn, addr = self.s.accept() # print 'Connected by',`addr` while 1: data = conn.recv(1024) if not data: break conn.send(data) conn.close()
thanx, AKR. Sorry for my brief answer last time, but I had hoped the code fragment I posted would explain what was happening with your code.
Your code is almost a verbatum copy of the Python example, except you've chosen to massage the port value using the HTONS function. So for most architectures the port value 9999 or 9222 would be changed to somewhere in the 3xxx port range. Any client trying to connect on those ports will fail. Hence you noted success on a C server which isn't using that function, but failure on your Python server which is. The solution is to just assign the port value you want unchanged.
hi,
my initial program was to take host value as ''(INADDR_ANY)
only.during my trial and error only i started using
gethostname.however as of now i am running my client (C program) also
from the same machine only.so it should not make any difference.
I've reverted bac to host ''.my program still hangs.i 'v e tried
changing the port address,but doesn't work.pls help
thanx,
AKR.
Jørgen Cederberg <jo*************@hotmail.com> wrote in message news:<9s***************@news.get2net.dk>... an**********@sify.com wrote: hi, i guess no one is ready to help.neways,my problem is getting solved.I 've slightly modified program (one of the samples found in the net),now program creates socket,gives bind ,listen success.however when i debug at accept it goes to the socket.py,at the accept() function definition.and one more step ahead and it hangs.i dono how to debug here(inside socket.py).
here is how the code looks like
Hi ...
the program actually works - but there is a quirk, look below for details.
//////////////// from socket import * import sys
try: s= socket(AF_INET,SOCK_STREAM) print 'socket created' except error: print 'socket not created' host = '' port = 9323 try: s.bind((gethostname(),port))
You are binding the socket to the hostname of your computer, instead of ''. Thus it will only accept connections specific to the hostname and therefor fail if you try to connect to localhost or 127.0.0.1
print 'bind success' except error: print 'bind' try: s.listen(1) print 'listen success' except error: print 'listen'
conn,addr = s.accept() print 'client is at ', addr data = conn.recv(1024) conn.send(data) conn.close() //////////////////////// but i have a feeling that teher's some problem with the port or some problem in the program that it hangs.can anyone help?or atleast give me few links where i can find a solution,thanx. AKR.
Hope this helps Jorgen an**********@sify.com wrote: hi, my initial program was to take host value as ''(INADDR_ANY) only.during my trial and error only i started using gethostname.however as of now i am running my client (C program) also from the same machine only.so it should not make any difference. I've reverted bac to host ''.my program still hangs.i 'v e tried changing the port address,but doesn't work.pls help thanx, AKR.
Hi
this is pretty odd. As mentioned in the previous mail, the program works
with my client program (written in Python by the way).
You keep saying that the programs 'hang', what do mean by that? I've
tried the program and all I can say is that it works. Are you sure that
your client works correctly?
Regards
Jorgen Jørgen Cederberg <jo*************@hotmail.com> wrote in message news:<9s***************@news.get2net.dk>... an**********@sify.com wrote: > hi, > i guess no one is ready to help.neways,my problem is getting > solved.I 've slightly modified program (one of the samples found in > the net),now program creates socket,gives bind ,listen success.however > when i debug at accept it goes to the socket.py,at the accept() > function definition.and one more step ahead and it hangs.i dono how to > debug here(inside socket.py). > > here is how the code looks like Hi ... the program actually works - but there is a quirk, look below for details. > > //////////////// > from socket import * > import sys > > try: > s= socket(AF_INET,SOCK_STREAM) > print 'socket created' > except error: > print 'socket not created' > host = '' > port = 9323 > try: > s.bind((gethostname(),port)) You are binding the socket to the hostname of your computer, instead of ''. Thus it will only accept connections specific to the hostname and therefor fail if you try to connect to localhost or 127.0.0.1 > print 'bind success' > except error: > print 'bind' > try: > s.listen(1) > print 'listen success' > except error: > print 'listen' > > conn,addr = s.accept() > print 'client is at ', addr > data = conn.recv(1024) > conn.send(data) > conn.close() > //////////////////////// > but i have a feeling that teher's some problem with the port or > some problem in the program that it hangs.can anyone help?or atleast > give me few links where i can find a solution,thanx. > AKR. Hope this helps Jorgen
hi,
Well i dono wat more to say.My client side is working properly ,the
error i get in the client side is connection refused.my client
responds to other server programs.
In my earlier postings i'd mentioned that while debugging i am not
able to understand what is happening at the def accept()(function call
in socket.py).
I use debugger control to debug,my program stays still at
accept().First i thought its waiting for a connection,but then my
client failed,morover my server is not ending.(it is not because of
the infinite while loop,i 've checked without the while loop).
When i try to close this program alone all the python applications
close.i guess itz hanging only.I don think it is system dependent.
Neways i tried from other machines ,the program still hangs.I am sorry
,but this is wat all i can say.
Do tell if there are any kind of problem related.
thanx,
AKR.
Jørgen Cederberg <jo*************@hotmail.com> wrote in message news:<dK***************@news.get2net.dk>... an**********@sify.com wrote: hi, my initial program was to take host value as ''(INADDR ANY) only.during my trial and error only i started using gethostname.however as of now i am running my client (C program) also from the same machine only.so it should not make any difference. I've reverted bac to host ''.my program still hangs.i 'v e tried changing the port address,but doesn't work.pls help thanx, AKR.
Hi
this is pretty odd. As mentioned in the previous mail, the program works
with my client program (written in Python by the way).
You keep saying that the programs 'hang', what do mean by that? I've tried the program and all I can say is that it works. Are you sure that your client works correctly?
Regards Jorgen
J rgen Cederberg <jo*************@hotmail.com> wrote in message news:
<9s***************@news.get2net.dk>... an**********@sify.com wrote: > hi, > i guess no one is ready to help.neways,my problem is getting > solved.I 've slightly modified program (one of the samples found in > the net),now program creates socket,gives bind ,listen success.howev er > when i debug at accept it goes to the socket.py,at the accept() > function definition.and one more step ahead and it hangs.i dono how to > debug here(inside socket.py). > > here is how the code looks like
Hi ...
the program actually works - but there is a quirk, look below for deta ils. > > //////////////// > from socket import * > import sys > > try: > s= socket(AF INET,SOCK STREAM) > print 'socket created' > except error: > print 'socket not created' > host = '' > port = 9323 > try: > s.bind((gethostname(),port))
You are binding the socket to the hostname of your computer, instead o f ''. Thus it will only accept connections specific to the hostname and therefor fail if you try to connect to localhost or 127.0.0.1
> print 'bind success' > except error: > print 'bind' > try: > s.listen(1) > print 'listen success' > except error: > print 'listen' > > conn,addr = s.accept() > print 'client is at ', addr > data = conn.recv(1024) > conn.send(data) > conn.close() > //////////////////////// > but i have a feeling that teher's some problem with the port or > some problem in the program that it hangs.can anyone help?or atleast give me few links where i can find a solution,thanx. > AKR.
Hope this helps Jorgen
hi,
do u think there's a version problem?i am using Python 2.2 (windows
2000).is it related in any way?
thanx,AKR.
Jørgen Cederberg <jo*************@hotmail.com> wrote in message news:<dK***************@news.get2net.dk>... an**********@sify.com wrote: hi, my initial program was to take host value as ''(INADDR ANY) only.during my trial and error only i started using gethostname.however as of now i am running my client (C program) also from the same machine only.so it should not make any difference. I've reverted bac to host ''.my program still hangs.i 'v e tried changing the port address,but doesn't work.pls help thanx, AKR.
Hi
this is pretty odd. As mentioned in the previous mail, the program works
with my client program (written in Python by the way).
You keep saying that the programs 'hang', what do mean by that? I've tried the program and all I can say is that it works. Are you sure that your client works correctly?
Regards Jorgen
J rgen Cederberg <jo*************@hotmail.com> wrote in message news:
<9s***************@news.get2net.dk>... an**********@sify.com wrote: > hi, > i guess no one is ready to help.neways,my problem is getting > solved.I 've slightly modified program (one of the samples found in > the net),now program creates socket,gives bind ,listen success.howev er > when i debug at accept it goes to the socket.py,at the accept() > function definition.and one more step ahead and it hangs.i dono how to > debug here(inside socket.py). > > here is how the code looks like
Hi ...
the program actually works - but there is a quirk, look below for deta ils. > > //////////////// > from socket import * > import sys > > try: > s= socket(AF INET,SOCK STREAM) > print 'socket created' > except error: > print 'socket not created' > host = '' > port = 9323 > try: > s.bind((gethostname(),port))
You are binding the socket to the hostname of your computer, instead o f ''. Thus it will only accept connections specific to the hostname and therefor fail if you try to connect to localhost or 127.0.0.1
> print 'bind success' > except error: > print 'bind' > try: > s.listen(1) > print 'listen success' > except error: > print 'listen' > > conn,addr = s.accept() > print 'client is at ', addr > data = conn.recv(1024) > conn.send(data) > conn.close() > //////////////////////// > but i have a feeling that teher's some problem with the port or > some problem in the program that it hangs.can anyone help?or atleast give me few links where i can find a solution,thanx. > AKR.
Hope this helps Jorgen
an**********@sify.com wrote: hi, do u think there's a version problem?i am using Python 2.2 (windows 2000).is it related in any way?
I'm also using Python 2.2 on a W2K machine. Sorry, I have no clue how to
help you.
Sorry
Jorgen
thanx,AKR.
<snipped>
hi,
My problem is solved finally.......:-))))))))))
it was the problem with port address.my server side does not accept
little endian,i need to convert it to big endian form...like if am
using the port address 9020 on the client side ,the corresponding big
endian wud be 15395 ( to be used in my server).so that was wat was
creating so much trouble..
neways thanx a lot for all the help.
AKR.
Jørgen Cederberg <jo*************@hotmail.com> wrote in message news:<nz*************@news.get2net.dk>... an**********@sify.com wrote: hi, do u think there's a version problem?i am using Python 2.2 (windows 2000).is it related in any way?
I'm also using Python 2.2 on a W2K machine. Sorry, I have no clue how to help you.
Sorry Jorgen
thanx,AKR. <snipped> This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics
by: Google Mike |
last post by:
After a lot of thought and research, and playing with FreeTDS and
InlineTDS, as well as various ODBC connections, I have determined that
the...
|
by: RadioFreq |
last post by:
I am writing an applet to display Julian Day and Time on a webpage. I have
all the code written except for a class to open a socket and extract a...
|
by: jas |
last post by:
I have a basic client/server socket situation setup....where the server
accepts a connection and then waits for commands.
On the client side, I...
|
by: Prince Kumar |
last post by:
I joined a company recently and they have a java program which hangs
(does nothing) after a while. This is no way consistent. It could
succeed...
|
by: feel52 |
last post by:
Below you'll find the code i'm working on.
It's in a button click routine and hangs after 3 or 4 sometimes 5 loops
done, probably in...
|
by: Mike Dole |
last post by:
I'm sorry to bother you with this question but it was either this or
giving up and trying to go for a simpler solution (which I will if
this is not...
|
by: rs |
last post by:
how I the client tell the server that the socket is closed? or this there an
even that informs the server that the clients socket is close?
Oh, I...
|
by: Blog the Haggis |
last post by:
Hi all,
I've written a program which distributes binary data to a number of clients
via TCP. The program runs perfectly unless one of the client...
|
by: Babloo |
last post by:
Hi everyone,
i wanted to implement a client- server connection
and transfer a file over the network. i was able to implement a normal
set up...
|
by: tammygombez |
last post by:
Hey fellow JavaFX developers,
I'm currently working on a project that involves using a ComboBox in JavaFX, and I've run into a bit of an issue....
|
by: tammygombez |
last post by:
Hey everyone!
I've been researching gaming laptops lately, and I must say, they can get pretty expensive. However, I've come across some great...
|
by: teenabhardwaj |
last post by:
How would one discover a valid source for learning news, comfort, and help for engineering designs? Covering through piles of books takes a lot of...
|
by: CD Tom |
last post by:
This happens in runtime 2013 and 2016. When a report is run and then closed a toolbar shows up and the only way to get it to go away is to right...
|
by: CD Tom |
last post by:
This only shows up in access runtime. When a user select a report from my report menu when they close the report they get a menu I've called Add-ins...
|
by: Naresh1 |
last post by:
What is WebLogic Admin Training?
WebLogic Admin Training is a specialized program designed to equip individuals with the skills and knowledge...
|
by: Matthew3360 |
last post by:
Hi there. I have been struggling to find out how to use a variable as my location in my header redirect function.
Here is my code.
...
|
by: Matthew3360 |
last post by:
Hi, I have a python app that i want to be able to get variables from a php page on my webserver. My python app is on my computer. How would I make it...
|
by: AndyPSV |
last post by:
HOW CAN I CREATE AN AI with an .executable file that would suck all files in the folder and on my computerHOW CAN I CREATE AN AI with an .executable...
| |