1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 21da177e4SLinus Torvalds /* 31da177e4SLinus Torvalds * linux/include/linux/lockd/nlm.h 41da177e4SLinus Torvalds * 51da177e4SLinus Torvalds * Declarations for the Network Lock Manager protocol. 61da177e4SLinus Torvalds * 71da177e4SLinus Torvalds * Copyright (C) 1996, Olaf Kirch <[email protected]> 81da177e4SLinus Torvalds */ 91da177e4SLinus Torvalds 101da177e4SLinus Torvalds #ifndef LINUX_LOCKD_NLM_H 111da177e4SLinus Torvalds #define LINUX_LOCKD_NLM_H 121da177e4SLinus Torvalds 131da177e4SLinus Torvalds 141da177e4SLinus Torvalds /* Maximum file offset in file_lock.fl_end */ 151da177e4SLinus Torvalds # define NLM_OFFSET_MAX ((s32) 0x7fffffff) 161da177e4SLinus Torvalds # define NLM4_OFFSET_MAX ((s64) ((~(u64)0) >> 1)) 171da177e4SLinus Torvalds 181da177e4SLinus Torvalds /* Return states for NLM */ 191da177e4SLinus Torvalds enum { 201da177e4SLinus Torvalds NLM_LCK_GRANTED = 0, 211da177e4SLinus Torvalds NLM_LCK_DENIED = 1, 221da177e4SLinus Torvalds NLM_LCK_DENIED_NOLOCKS = 2, 231da177e4SLinus Torvalds NLM_LCK_BLOCKED = 3, 241da177e4SLinus Torvalds NLM_LCK_DENIED_GRACE_PERIOD = 4, 251da177e4SLinus Torvalds #ifdef CONFIG_LOCKD_V4 261da177e4SLinus Torvalds NLM_DEADLCK = 5, 271da177e4SLinus Torvalds NLM_ROFS = 6, 281da177e4SLinus Torvalds NLM_STALE_FH = 7, 291da177e4SLinus Torvalds NLM_FBIG = 8, 301da177e4SLinus Torvalds NLM_FAILED = 9, 311da177e4SLinus Torvalds #endif 321da177e4SLinus Torvalds }; 331da177e4SLinus Torvalds 341da177e4SLinus Torvalds #define NLM_PROGRAM 100021 351da177e4SLinus Torvalds 361da177e4SLinus Torvalds #define NLMPROC_NULL 0 371da177e4SLinus Torvalds #define NLMPROC_TEST 1 381da177e4SLinus Torvalds #define NLMPROC_LOCK 2 391da177e4SLinus Torvalds #define NLMPROC_CANCEL 3 401da177e4SLinus Torvalds #define NLMPROC_UNLOCK 4 411da177e4SLinus Torvalds #define NLMPROC_GRANTED 5 421da177e4SLinus Torvalds #define NLMPROC_TEST_MSG 6 431da177e4SLinus Torvalds #define NLMPROC_LOCK_MSG 7 441da177e4SLinus Torvalds #define NLMPROC_CANCEL_MSG 8 451da177e4SLinus Torvalds #define NLMPROC_UNLOCK_MSG 9 461da177e4SLinus Torvalds #define NLMPROC_GRANTED_MSG 10 471da177e4SLinus Torvalds #define NLMPROC_TEST_RES 11 481da177e4SLinus Torvalds #define NLMPROC_LOCK_RES 12 491da177e4SLinus Torvalds #define NLMPROC_CANCEL_RES 13 501da177e4SLinus Torvalds #define NLMPROC_UNLOCK_RES 14 511da177e4SLinus Torvalds #define NLMPROC_GRANTED_RES 15 521da177e4SLinus Torvalds #define NLMPROC_NSM_NOTIFY 16 /* statd callback */ 531da177e4SLinus Torvalds #define NLMPROC_SHARE 20 541da177e4SLinus Torvalds #define NLMPROC_UNSHARE 21 551da177e4SLinus Torvalds #define NLMPROC_NM_LOCK 22 561da177e4SLinus Torvalds #define NLMPROC_FREE_ALL 23 571da177e4SLinus Torvalds 581da177e4SLinus Torvalds #endif /* LINUX_LOCKD_NLM_H */ 59