* OR MODIFICATIONS.
*/
-#ifndef lint
-static const char rcsid[] = "$Id: sys-sunos4.c,v 1.23 1999/08/12 04:25:24 paulus Exp $";
-#endif
+#define RCSID "$Id: sys-sunos4.c,v 1.25 1999/12/23 01:38:19 paulus Exp $"
#include <stdio.h>
#include <stddef.h>
#endif
#endif /*sparc*/
+static const char rcsid[] = RCSID;
+
static int pppfd;
static int fdmuxid = -1;
static int iffd;
int t;
t = timo == NULL? -1: timo->tv_sec * 1000 + timo->tv_usec / 1000;
- if (poll(pollfds, n_pollfds, t) < 0 && errno != EINTR)
- fatal("poll: %m");
+ if (poll(pollfds, n_pollfds, t) < 0 && errno != EINTR) {
+ if (errno != EAGAIN)
+ fatal("poll: %m");
+ /* we can get EAGAIN on a heavily loaded system,
+ * just wait a short time and try again. */
+ usleep(50000);
+ }
}
/*