Re: g_io_add_watch, g_io_channel_read stops working after sometime.

2007-04-20 Thread Rehan

Hi James,

 The problems seems to be solved.. I had to return TRUE from my callback
function read_request() and listentosocket is the channel. listentosocket =
g_io_channel_unix_new (global_sock);

thanks for your reply and yes i am now listening to G_IO_HUP also...

regards,
Rehan.


James Scott Jr-2 wrote:
 
 On Wed, 2007-04-18 at 04:39 -0700, Rehan wrote:
 
 Hi, 
 
  I am trying to write a program based on client-server architecture. I
 need
 only one client connection hence i am first listening to client then
 accept() is called. after accept() i call g_io_channel_unix_new () and
 then
 g_io_add_watch() and later in the function i use g_io_channel_read to
 read
 data from the channel. 
 
   Everything works fine till 4-5 requests from the client. Later the
 server
 simply stops listening to client. I have tried tcpdump on server side and
 i
 do recieve the TCP packet from the client. So it means there is some bug
 at
 server side. I am not sure if i have done something wrong or some bug in
 core library... 
 
 I am confused as the code works for 4-5 request and then simply starts
 ignoring the client messages. Is g_io_add_watch ignoring the incoming
 signals?? thats what i can detect from my gdb tracing there is no
 invocation of my function even if i recieve a packet on server side from
 the
 client 
 
 in summary function calls: 
 
 -socket(AF_INET,SOCK_STREAM,0) 
 -bind(sockfd, (struct sockaddr *)serv_addr, sizeof(serv_addr))) 
 -listen(sockfd,5) 
 -accept(sockfd, (struct sockaddr *) cli_addr, clilen) 
 -g_io_channel_unix_new (global_sock) 
 -g_io_add_watch(listenonsocket, G_IO_IN |
 G_IO_PRI,read_request,global_sock) 
 
 Rehan,
 
 What is listenonsocket ?  Why no G_IO_HUP ?   the above sequence is
 correct; however the api values seem to be wrong and in the wrong order!
 Post or include the real code.  
 
 As an example, look at the code in this sample sknet for the following
 url.
 http://mysite.verizon.net/skoona/id1.html
 
 
 
 James,
 
 
 -g_io_channel_read(channel,len,sizeof(len),bytes_read); 
 
 I hope somebody comes to my rescue its been now 3 days i am trying to
 solve
 this problem but no success... 
 
 Thanks in advance for all great coders 
 
 Regards, 
 RS.
 ___
 gtk-app-devel-list mailing list
 gtk-app-devel-list@gnome.org
 http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
 
 

-- 
View this message in context: 
http://www.nabble.com/g_io_add_watch%2C-g_io_channel_read-stops-working-after-sometime.-tf3600490.html#a10077825
Sent from the Gtk+ - Apps Dev mailing list archive at Nabble.com.

___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list


g_io_add_watch, g_io_channel_read stops working after sometime.

2007-04-18 Thread Rehan

Hi, 

 I am trying to write a program based on client-server architecture. I need
only one client connection hence i am first listening to client then
accept() is called. after accept() i call g_io_channel_unix_new () and then
g_io_add_watch() and later in the function i use g_io_channel_read to read
data from the channel. 

  Everything works fine till 4-5 requests from the client. Later the server
simply stops listening to client. I have tried tcpdump on server side and i
do recieve the TCP packet from the client. So it means there is some bug at
server side. I am not sure if i have done something wrong or some bug in
core library... 

I am confused as the code works for 4-5 request and then simply starts
ignoring the client messages. Is g_io_add_watch ignoring the incoming
signals?? thats what i can detect from my gdb tracing there is no
invocation of my function even if i recieve a packet on server side from the
client 

in summary function calls: 

-socket(AF_INET,SOCK_STREAM,0) 
-bind(sockfd, (struct sockaddr *)serv_addr, sizeof(serv_addr))) 
-listen(sockfd,5) 
-accept(sockfd, (struct sockaddr *) cli_addr, clilen) 
-g_io_channel_unix_new (global_sock) 
-g_io_add_watch(listenonsocket, G_IO_IN | G_IO_PRI,read_request,
global_sock) 
-g_io_channel_read(channel,len,sizeof(len),bytes_read); 

I hope somebody comes to my rescue its been now 3 days i am trying to solve
this problem but no success... 

Thanks in advance for all great coders 

Regards, 
RS.
-- 
View this message in context: 
http://www.nabble.com/g_io_add_watch%2C-g_io_channel_read-stops-working-after-sometime.-tf3600490.html#a10056937
Sent from the Gtk+ - Apps Dev mailing list archive at Nabble.com.

___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list


Re: g_io_add_watch, g_io_channel_read stops working after sometime.

2007-04-18 Thread James Scott Jr
On Wed, 2007-04-18 at 04:39 -0700, Rehan wrote:

 Hi, 
 
  I am trying to write a program based on client-server architecture. I need
 only one client connection hence i am first listening to client then
 accept() is called. after accept() i call g_io_channel_unix_new () and then
 g_io_add_watch() and later in the function i use g_io_channel_read to read
 data from the channel. 
 
   Everything works fine till 4-5 requests from the client. Later the server
 simply stops listening to client. I have tried tcpdump on server side and i
 do recieve the TCP packet from the client. So it means there is some bug at
 server side. I am not sure if i have done something wrong or some bug in
 core library... 
 
 I am confused as the code works for 4-5 request and then simply starts
 ignoring the client messages. Is g_io_add_watch ignoring the incoming
 signals?? thats what i can detect from my gdb tracing there is no
 invocation of my function even if i recieve a packet on server side from the
 client 
 
 in summary function calls: 
 
 -socket(AF_INET,SOCK_STREAM,0) 
 -bind(sockfd, (struct sockaddr *)serv_addr, sizeof(serv_addr))) 
 -listen(sockfd,5) 
 -accept(sockfd, (struct sockaddr *) cli_addr, clilen) 
 -g_io_channel_unix_new (global_sock) 
 -g_io_add_watch(listenonsocket, G_IO_IN | 
 G_IO_PRI,read_request,global_sock) 

Rehan,

What is listenonsocket ?  Why no G_IO_HUP ?   the above sequence is
correct; however the api values seem to be wrong and in the wrong order!
Post or include the real code.  

As an example, look at the code in this sample sknet for the following
url.
http://mysite.verizon.net/skoona/id1.html



James,


 -g_io_channel_read(channel,len,sizeof(len),bytes_read); 
 
 I hope somebody comes to my rescue its been now 3 days i am trying to solve
 this problem but no success... 
 
 Thanks in advance for all great coders 
 
 Regards, 
 RS.
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list