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