1ec7341d1656417106453929db0b5f0ef3d41928
[perl.git] / do / listen
1 int
2 do_listen(stab, arglast)
3 STAB *stab;
4 int *arglast;
5 {
6     register STR **st = stack->ary_array;
7     register int sp = arglast[1];
8     register STIO *stio;
9     int backlog;
10
11     if (!stab)
12         goto nuts;
13
14     stio = stab_io(stab);
15     if (!stio || !stio->ifp)
16         goto nuts;
17
18     backlog = (int)str_gnum(st[++sp]);
19     return listen(fileno(stio->ifp), backlog) >= 0;
20
21 nuts:
22     if (dowarn)
23         warn("listen() on closed fd");
24     errno = EBADF;
25     return FALSE;
26 }
27