Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/lib/librpcsvc Add definitions for nlm version 4 (for use wit...



details:   https://anonhg.NetBSD.org/src/rev/ee262d03eb7a
branches:  trunk
changeset: 481618:ee262d03eb7a
user:      bouyer <bouyer%NetBSD.org@localhost>
date:      Wed Feb 02 18:15:12 2000 +0000

description:
Add definitions for nlm version 4 (for use with NFSv3).

diffstat:

 lib/librpcsvc/nlm_prot.x |  126 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 124 insertions(+), 2 deletions(-)

diffs (148 lines):

diff -r f417a175fa17 -r ee262d03eb7a lib/librpcsvc/nlm_prot.x
--- a/lib/librpcsvc/nlm_prot.x  Wed Feb 02 18:02:08 2000 +0000
+++ b/lib/librpcsvc/nlm_prot.x  Wed Feb 02 18:15:12 2000 +0000
@@ -13,7 +13,7 @@
 %#ifndef lint
 %/*static char sccsid[] = "from: @(#)nlm_prot.x 1.8 87/09/21 Copyr 1987 Sun Micro";*/
 %/*static char sccsid[] = "from: * @(#)nlm_prot.x      2.1 88/08/01 4.0 RPCSRC";*/
-%__RCSID("$NetBSD: nlm_prot.x,v 1.4 1999/07/02 15:44:13 simonb Exp $");
+%__RCSID("$NetBSD: nlm_prot.x,v 1.5 2000/02/02 18:15:12 bouyer Exp $");
 %#endif /* not lint */
 #endif
 
@@ -139,6 +139,107 @@
        long state;
 };
 
+#ifdef RPC_HDR
+%/* definitions for NLM version 4 */
+#endif
+enum nlm4_stats {
+       nlm4_granted                    = 0,
+       nlm4_denied                     = 1,
+       nlm4_denied_nolock              = 2,
+       nlm4_blocked                    = 3,
+       nlm4_denied_grace_period        = 4,
+       nlm4_deadlck                    = 5,
+       nlm4_rofs                       = 6,
+       nlm4_stale_fh                   = 7,
+       nlm4_fbig                       = 8,
+       nlm4_failed                     = 9
+};
+
+struct nlm4_stat {
+       nlm4_stats stat;
+};
+
+struct nlm4_holder {
+       bool exclusive;
+       u_int32_t svid;
+       netobj oh;
+       u_int64_t l_offset;
+       u_int64_t l_len;
+};
+
+struct nlm4_lock {
+       string caller_name<MAXNAMELEN>;
+       netobj fh;
+       netobj oh;
+       u_int32_t svid;
+       u_int64_t l_offset;
+       u_int64_t l_len;
+};
+
+struct nlm4_share {
+       string caller_name<MAXNAMELEN>;
+       netobj fh;
+       netobj oh;
+       fsh_mode mode;
+       fsh_access access;
+};
+
+union nlm4_testrply switch (nlm4_stats stat) {
+       case nlm_denied:
+               struct nlm4_holder holder;
+       default:
+               void;
+};
+
+struct nlm4_testres {
+       netobj cookie;
+       nlm4_testrply stat;
+};
+
+struct nlm4_testargs {
+       netobj cookie;
+       bool exclusive;
+       struct nlm4_lock alock;
+};
+
+struct nlm4_res {
+       netobj cookie;
+       nlm4_stat stat;
+};
+
+struct nlm4_lockargs {
+       netobj cookie;
+       bool block;
+       bool exclusive;
+       struct nlm4_lock alock;
+       bool reclaim;           /* used for recovering locks */
+       int state;              /* specify local status monitor state */
+};
+
+struct nlm4_cancargs {
+       netobj cookie;
+       bool block;
+       bool exclusive;
+       struct nlm4_lock alock;
+};
+
+struct nlm4_unlockargs {
+       netobj cookie;
+       struct nlm4_lock alock;
+};
+
+struct nlm4_shareargs {
+       netobj  cookie;
+       nlm4_share      share;
+       bool    reclaim;
+};
+
+struct nlm4_shareres {
+       netobj  cookie;
+       nlm4_stats      stat;
+       int     sequence;
+};
+
 /*
  * Over-the-wire protocol used between the network lock managers
  */
@@ -179,5 +280,26 @@
                void            NLM_FREE_ALL(nlm_notify) = 23;
        } = 3;
 
+       version NLM_VERS4 {
+               void NLM4_NULL(void) = 0;
+               nlm4_testres NLM4_TEST(nlm4_testargs) = 1;
+               nlm4_res NLM4_LOCK(nlm4_lockargs) = 2;
+               nlm4_res NLM4_CANCEL(nlm4_cancargs) = 3;
+               nlm4_res NLM4_UNLOCK(nlm4_unlockargs) = 4;
+               nlm4_res NLM4_GRANTED(nlm4_testargs) = 5;
+               void NLM4_TEST_MSG(nlm4_testargs) = 6;
+               void NLM4_LOCK_MSG(nlm4_lockargs) = 7;
+               void NLM4_CANCEL_MSG(nlm4_cancargs) = 8;
+               void NLM4_UNLOCK_MSG(nlm4_unlockargs) = 9;
+               void NLM4_GRANTED_MSG(nlm4_testargs) = 10;
+               void NLM4_TEST_RES(nlm4_testres) = 11;
+               void NLM4_LOCK_RES(nlm4_res) = 12;
+               void NLM4_CANCEL_RES(nlm4_res) = 13;
+               void NLM4_UNLOCK_RES(nlm4_res) = 14;
+               void NLM4_GRANTED_RES(nlm4_res) = 15;
+               nlm4_shareres NLM4_SHARE(nlm4_shareargs) = 20;
+               nlm4_shareres NLM4_UNSHARE(nlm4_shareargs) = 21;
+               nlm4_res NLM4_NM_LOCK(nlm4_lockargs) = 22;
+               void NLM4_FREE_ALL(nlm_notify) = 23;
+       } = 4;
 } = 100021;
-



Home | Main Index | Thread Index | Old Index