[comp.protocols.misc] Using sockets select

gil@ablnc.ATT.COM (Gil Widdowson) (08/20/87)

I have been trying to use the select(3w) function to
handle I/O on multiple datagram and virtual circuit fds.
This is on a UTS system running Wollongong's TCP/IP.
The general application I am trying to upgrade has
been running under sockets on this machine for
about a year using alarms to do polling.

All fds were set to O_NDELAY after they were created.

What I wanted to do was set up my fd masks and count
and call select() with the time struct pointer set to
NULL so it would pend until data came it. Well it just
pended forever. So I figured that I misread the intent,
and tried setting the time structure so it returned once
a second. When it returned it always returned zero, and
the masks were all zero. Stepping through in sdb() and
forcing the code out of my pend loop, I always found the
data that I knew was there. Am I doing something fundamentally
wrong? ( I get same results on AT&T 3Bs which also run
Wollongong port). A working scrap of code would be greatly
appreciated.

Thanks,

Gil Widdowson AT&T DP&CT Maitland FL (305) 660-6123
{ihnp4, moss} abfli!utiprod!gil