1*5829352eSChuck Lever /* SPDX-License-Identifier: GPL-2.0 */ 2*5829352eSChuck Lever /* 3*5829352eSChuck Lever * Declarations for the Network Lock Manager protocol. 4*5829352eSChuck Lever * 5*5829352eSChuck Lever * Copyright (C) 1996, Olaf Kirch <okir@monad.swb.de> 6*5829352eSChuck Lever */ 7*5829352eSChuck Lever 8*5829352eSChuck Lever #ifndef _LOCKD_NLM_H 9*5829352eSChuck Lever #define _LOCKD_NLM_H 10*5829352eSChuck Lever 11*5829352eSChuck Lever 12*5829352eSChuck Lever /* Maximum file offset in file_lock.fl_end */ 13*5829352eSChuck Lever # define NLM_OFFSET_MAX ((s32) 0x7fffffff) 14*5829352eSChuck Lever # define NLM4_OFFSET_MAX ((s64) ((~(u64)0) >> 1)) 15*5829352eSChuck Lever 16*5829352eSChuck Lever /* Return states for NLM */ 17*5829352eSChuck Lever enum { 18*5829352eSChuck Lever NLM_LCK_GRANTED = 0, 19*5829352eSChuck Lever NLM_LCK_DENIED = 1, 20*5829352eSChuck Lever NLM_LCK_DENIED_NOLOCKS = 2, 21*5829352eSChuck Lever NLM_LCK_BLOCKED = 3, 22*5829352eSChuck Lever NLM_LCK_DENIED_GRACE_PERIOD = 4, 23*5829352eSChuck Lever #ifdef CONFIG_LOCKD_V4 24*5829352eSChuck Lever NLM_DEADLCK = 5, 25*5829352eSChuck Lever NLM_ROFS = 6, 26*5829352eSChuck Lever NLM_STALE_FH = 7, 27*5829352eSChuck Lever NLM_FBIG = 8, 28*5829352eSChuck Lever NLM_FAILED = 9, 29*5829352eSChuck Lever #endif 30*5829352eSChuck Lever }; 31*5829352eSChuck Lever 32*5829352eSChuck Lever #define NLM_PROGRAM 100021 33*5829352eSChuck Lever 34*5829352eSChuck Lever #define NLMPROC_NULL 0 35*5829352eSChuck Lever #define NLMPROC_TEST 1 36*5829352eSChuck Lever #define NLMPROC_LOCK 2 37*5829352eSChuck Lever #define NLMPROC_CANCEL 3 38*5829352eSChuck Lever #define NLMPROC_UNLOCK 4 39*5829352eSChuck Lever #define NLMPROC_GRANTED 5 40*5829352eSChuck Lever #define NLMPROC_TEST_MSG 6 41*5829352eSChuck Lever #define NLMPROC_LOCK_MSG 7 42*5829352eSChuck Lever #define NLMPROC_CANCEL_MSG 8 43*5829352eSChuck Lever #define NLMPROC_UNLOCK_MSG 9 44*5829352eSChuck Lever #define NLMPROC_GRANTED_MSG 10 45*5829352eSChuck Lever #define NLMPROC_TEST_RES 11 46*5829352eSChuck Lever #define NLMPROC_LOCK_RES 12 47*5829352eSChuck Lever #define NLMPROC_CANCEL_RES 13 48*5829352eSChuck Lever #define NLMPROC_UNLOCK_RES 14 49*5829352eSChuck Lever #define NLMPROC_GRANTED_RES 15 50*5829352eSChuck Lever #define NLMPROC_NSM_NOTIFY 16 /* statd callback */ 51*5829352eSChuck Lever #define NLMPROC_SHARE 20 52*5829352eSChuck Lever #define NLMPROC_UNSHARE 21 53*5829352eSChuck Lever #define NLMPROC_NM_LOCK 22 54*5829352eSChuck Lever #define NLMPROC_FREE_ALL 23 55*5829352eSChuck Lever 56*5829352eSChuck Lever #endif /* _LOCKD_NLM_H */ 57