ape/bsd/listen.c: Do not try to issue "announce *".

"port >= 0" is always true, because the port always gets filtered
through "htons" which returns "unsigned short", so we can just drop
the "else" branch here.

Anyway "announce 0" works fine with the Plan9 API, there is not need
for "announce *" here.
This commit is contained in:
Benjamin Riefenstahl 2022-06-10 20:22:39 +00:00 committed by Ori Bernstein
parent 9fc38d43d4
commit d618223086

View file

@ -121,7 +121,7 @@ listen(fd, backlog)
int backlog;
{
Rock *r;
int n, cfd, port;
int n, cfd;
char msg[128];
struct sockaddr_un *lunix;
@ -139,17 +139,13 @@ listen(fd, backlog)
errno = EBADF;
return -1;
}
port = _sock_inport(&r->addr);
if(port >= 0) {
if(write(cfd, "bind 0", 6) < 0) {
errno = EGREG;
close(cfd);
return -1;
}
snprintf(msg, sizeof msg, "announce %d", port);
/* FIXME: What is this good for? */
if(write(cfd, "bind 0", 6) < 0) {
errno = EGREG;
close(cfd);
return -1;
}
else
strcpy(msg, "announce *");
snprintf(msg, sizeof msg, "announce %d", _sock_inport(&r->addr));
n = write(cfd, msg, strlen(msg));
if(n < 0){
errno = EOPNOTSUPP; /* Improve error reporting!!! */