From 2da8f89b798fc5d811fc4b252ca8ad7461d07fbd Mon Sep 17 00:00:00 2001 From: chip Date: Mon, 11 Dec 2000 00:07:42 +0000 Subject: 2000-12-10 Chip Salzenberg * utils/statd/monitor.c (sm_mon_1_svc): Fix buggy check for program and procedure numbers of kernel lockd's callback. Also, besides the old (and broken) procedure #24, allow #16 per Trond. --- utils/statd/monitor.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'utils/statd/monitor.c') diff --git a/utils/statd/monitor.c b/utils/statd/monitor.c index 879e583..27c409f 100644 --- a/utils/statd/monitor.c +++ b/utils/statd/monitor.c @@ -71,12 +71,15 @@ sm_mon_1_svc(struct mon *argp, struct svc_req *rqstp) * This is specific to the linux kernel lockd, which * makes the callback procedure part of the lockd interface. * It is also prone to break when lockd changes its callback - * procedure number. XXX FIXME + * procedure number -- which, in fact, has now happened once. + * There must be a better way.... XXX FIXME */ - if (id->my_proc != 100021 && id->my_proc != 24) { + if (id->my_prog != 100021 || + (id->my_proc != 16 && id->my_proc != 24)) + { log(L_WARNING, - "Attempt to register callback to service %d", - id->my_proc); + "Attempt to register callback to %d/%d", + id->my_prog, id->my_proc); goto failure; } -- cgit