On Fri, 18 Sep 1998, Bug Hunter wrote:
>
> We are using a stock redhat 5.1 in an embedded system.
> It is not on the internet, and has _very_ few services. (for
> you hacker types).
>
> If this is on the wrong list, please point me to a
> better list. thanks!
>
> we opened a pipe without error. we then did this:
> FD_ZERO(&InputFD); // initialize read
> descriptors
>
> FD_SET(s,&InputFD); // Add
> socket to descriptors to
> FD_SET(FromDH,&InputFD); // wait on Modem
> data as well
>
> FD_ZERO(&wErrorFD);
> FD_SET(s,&wErrorFD);
> FD_SET(FromDH, &wErrorFD);
>
> signal(SIGALRM,SignalHandler);
>
> while(1){
> wInputFD = InputFD;
> // don't wait more than 500msec before
> reporting
> timeout.tv_sec = 0;
> timeout.tv_usec = 500000;
> short result =
> select(FD_SETSIZE,&wInputFD,NULL,&wErrorFD,&timeout);
> ...
>
>
> We get a 2 from select, then the pipe (FromDH) indicates
> an error. errno is zero. There is no error that we can
> see. any clues?
I am not sure, but I think the SIGALARM and select use the same timer.
If my suposition is true, should be normaly for select to have strange
behavior when got a interrupt.
Any oppinion ?
------------------------------------------------------------------------------
Best wishes,
Marcel - Titus MARGINEAN
[EMAIL PROTECTED], [EMAIL PROTECTED]