]> git.decadent.org.uk Git - nfs-utils.git/blobdiff - utils/statd/monitor.c
2000-12-10 Chip Salzenberg <chip@valinux.com>
[nfs-utils.git] / utils / statd / monitor.c
index 5a782dcccc18a7046b39ba0bac7f4959964ed5ed..27c409f97abaf473a148107cf1fa49d89722e10d 100644 (file)
@@ -67,13 +67,19 @@ sm_mon_1_svc(struct mon *argp, struct svc_req *rqstp)
        my_name = "127.0.0.1";
 
        /* 2.   Reject any registrations for non-lockd services.
+        *
         *      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 -- which, in fact, has now happened once.
+        *      There must be a better way....   XXX FIXME
         */
-       if (id->my_proc != 100021) {
+       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;
        }