Hello,

I've an application that uses pth to process different
kinds of events. A thread tries to retrieve some information
from a server via a TCP connection, and sends a request
for that purpose. Then it waits for the response using
the following code:

        while (1) {
                fev = pth_event(PTH_EVENT_FD | PTH_UNTIL_FD_READABLE, sock);
                tev = pth_event(PTH_EVENT_TIME, pth_timeout(timeout.tv_sec,
                        timeout.tv_usec));
                ev = pth_event_concat(tev, fev, NULL);

                /* do we have something on the socket?                  */
                pth_wait(ev);
                if (pth_event_occurred(tev)) {
                        /* now we have a timeout, and give up           */
                        return -1;
                }
                if (pth_event_occurred(fev)) {
                        /* yes, something happened on the socket        */
                        bytes = recv(sock, (char *)&buffer[bytesread],
                                length - bytesread, MSG_NOSIGNAL);
                        .......
                }
        }

But although the server returns the data, and apparently the pth
library also sees the response, the pth_event_occured(fev) (which
should occur when data arrives on the socket), never happens.

This same code works fine on OpenSUSE 10.3, but it fails on
Red Hat EL 5 (kernel 2.6.18). Any suggestions what might have
caused this are welcome.

Best regards

Andreas Mueller

--
Prof. Dr. Andreas Mueller
[EMAIL PROTECTED]
Bubental 53, 8852 Altendorf
Voice: +41 55 4621481  Fax/Data: +41 55 4621485

______________________________________________________________________
GNU Portable Threads (Pth)            http://www.gnu.org/software/pth/
Development Site                      http://www.ossp.org/pkg/lib/pth/
Distribution Files                          ftp://ftp.gnu.org/gnu/pth/
Distribution Snapshots                 ftp://ftp.ossp.org/pkg/lib/pth/
User Support Mailing List                            pth-users@gnu.org
Automated List Manager (Majordomo)           [EMAIL PROTECTED]

Reply via email to