Has anyone had problems on Solaris 2.5 using
select() and svc_getreqset() in RPC server code?
I can call svc_run() just fine and have my service
routine get called, but if I instead try to do
my own select() (after snagging the value of svc_fdset
into my own fdset), I always get an EBADF error
(it's telling me that one or more of my file
descriptors are bad).
I have also tried just setting the bit for the
file descriptor I'm interested in, and it then
DOES call svc_getreqset(), but svc_getreqset()
returns immediately without calling the service
routine. Truss says that it is failing while
trying to DUP a file descriptor.
Are there any known problems with RPC on Solaris 2.5?
I am porting code that works fine under SunOS 4.1.3,
and have an example to go on that someone else had
working under Solaris and SunOS, but maybe he was
running some patches that I'm not?
I need to do my own select() loop in order to do some
additional processing in the RPC server, otherwise
I'd be more than happy just using svc_run().
Thanks for any help,
Senior Methods Engineer/SysAdmin
"Lotto: A tax on people who are bad at math." -- unknown
"Windows: Microsoft's tax on computer illiterates." -- WE7U