summaryrefslogtreecommitdiffstats
path: root/usr.sbin/rpc.statd
diff options
context:
space:
mode:
authoralfred <alfred@FreeBSD.org>2002-07-11 17:39:50 +0000
committeralfred <alfred@FreeBSD.org>2002-07-11 17:39:50 +0000
commit2346687c8a5836458321c920139225c8fb666306 (patch)
tree79263cc99a6d51a1c9e604c3a49bb6ed771f1f40 /usr.sbin/rpc.statd
parent8f999c34228712500a26caf078c05fa1d4f4088f (diff)
downloadFreeBSD-src-2346687c8a5836458321c920139225c8fb666306.zip
FreeBSD-src-2346687c8a5836458321c920139225c8fb666306.tar.gz
Fix return values in the sm_notify_1 service routine to return an answer
most of the time (unless fork fails). This should fix the problem where FreeBSD won't respond to a remote host and therefor the remote hosts tries indefinitely to contact the FreeBSD hosts thereby irritating the system administrator. PR: misc/27810
Diffstat (limited to 'usr.sbin/rpc.statd')
-rw-r--r--usr.sbin/rpc.statd/procs.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/usr.sbin/rpc.statd/procs.c b/usr.sbin/rpc.statd/procs.c
index 2db706f..bbe9d4a 100644
--- a/usr.sbin/rpc.statd/procs.c
+++ b/usr.sbin/rpc.statd/procs.c
@@ -374,16 +374,16 @@ void *sm_notify_1_svc(stat_chge *arg, struct svc_req *req)
{
/* Never heard of this host - why is it notifying us? */
syslog(LOG_ERR, "Unsolicited notification from host %s", arg->mon_name);
- return;
+ return (&dummy);
}
lp = hp->monList;
- if (!lp) return (FALSE); /* We know this host, but have no */
+ if (!lp) return (&dummy); /* We know this host, but have no */
/* outstanding requests. */
pid = fork();
if (pid == -1)
{
syslog(LOG_ERR, "Unable to fork notify process - %s", strerror(errno));
- return;
+ return (NULL); /* no answer, the client will retry */
}
if (pid) return (&dummy); /* Parent returns */
OpenPOWER on IntegriCloud