kasperba@Informatik.TU-Muenchen.DE (Christian Kasperbauer) (04/05/91)
Hi out there, perhaps that's the wrong newsgroup for my request, I don't know, but I've the following problem, so if anyone can help me, please answer: I'm writing a client/server application between a Sun Sparc and a Intel i386 workstation using Berkley stream sockets. The server is running on the i386 and is implemented as a UNIX daemon, i.e. he is sleeping until a SIGPOLL signal arrives. On the i386 runs INTERACTIVE 386/ix and I'm using the libsocket.a library, which emulates Berkley sockets on System V streams. I did the following steps to initialize the sockets: sock[i] = open (AF_INET, SOCK_STREAM, IP) ... bind (sock[i], ... ... FD_SET (sock[i], read_template); #ifdef SYSV ioctl (sock[i], I_SETSIG, S_INPUT); #else fcntl (sock[i], F_SETOWN, getpid ()); fcntl (sock[i], F_SETFL, FASYNC); #endif ... The daemon's signal handler is of the following form: void handler () ... hlp = read_template; while (select (FD_SETSIZE, &hlp, NULL, NULL &timeout) > 0) ... /* poll sockets */ ... The problem is, no SIGPOLL signal arrives, but under BSD this code runs fine (for example between a VAX and a Sun or an Alliant FX2800). So my question is, what did I forget to initialize? AT&T handbooks deal only with System V streams, i.e. the poll() system call, which I don't want to use. Is there a difference between SIGIO (BSD) and SIGPOLL (System V)? Does anyone know a correct solution for this problem or a tricky work around? Hope to receive a positive answer, Christian P.S.: Please answer by e-mail, I don't read frequently this newsgroup. -- +=======================================================================+ | Christian Kasperbauer (Kasperl) | | kasperba@lan.informatik.tu-muenchen.dbp.de | | | | Munich University of Technology, Department of Computer Science, FRG | |-----------------------------------------------------------------------| | phone: +49-89 2105-3251 or -8254 private: +49-89 7551462 | | FAX : +49-89 2800529 | |-----------------------------------------------------------------------| | "Every day we make it, we'll make it the best we can" (Jack Daniel) | +=======================================================================+