diff options
author | cinap_lenrek <cinap_lenrek@gmx.de> | 2013-05-11 18:34:40 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@gmx.de> | 2013-05-11 18:34:40 +0200 |
commit | 389d6a1054cbf6734499a81c7de2dbc8251fa65c (patch) | |
tree | 62b4b68ecb8ba2916f65f7c477d9f300705b0812 /sys/src/ape/lib/bsd | |
parent | 9af0b2c68377c321475ec0c2e5a0af85b4965709 (diff) |
ape: change types from unsigned long to void* for rendezvous() and segattach()/segbrk() (erik), use uniqueue rendezvous tags for _buf and listen
Diffstat (limited to 'sys/src/ape/lib/bsd')
-rw-r--r-- | sys/src/ape/lib/bsd/listen.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/sys/src/ape/lib/bsd/listen.c b/sys/src/ape/lib/bsd/listen.c index b0408cd19..045ff3a91 100644 --- a/sys/src/ape/lib/bsd/listen.c +++ b/sys/src/ape/lib/bsd/listen.c @@ -31,14 +31,11 @@ extern void _killmuxsid(void); static int listenproc(Rock *r, int fd) { - Rock *nr; - char *net; - int cfd, nfd, dfd; - int pfd[2]; + char listen[Ctlsize], name[Ctlsize], *net, *p; + int cfd, nfd, dfd, pfd[2]; struct stat d; - char *p; - char listen[Ctlsize]; - char name[Ctlsize]; + Rock *nr; + void *v; switch(r->stype){ case SOCK_DGRAM: @@ -81,11 +78,14 @@ listenproc(Rock *r, int fd) _muxsid = getpgrp(); } else setpgid(getpid(), _muxsid); - _RENDEZVOUS(2, _muxsid); + while(_RENDEZVOUS(r, (void*)_muxsid) == (void*)~0) + ; break; default: + while((v = _RENDEZVOUS(r, 0)) == (void*)~0) + ; + _muxsid = (int)v; atexit(_killmuxsid); - _muxsid = _RENDEZVOUS(2, 0); close(pfd[1]); close(nfd); return 0; |