Greg Kroah-Hartman | b244131 | 2017-11-01 15:07:57 +0100 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 2 | /* |
Uwe Zeisberger | f30c226 | 2006-10-03 23:01:26 +0200 | [diff] [blame] | 3 | * linux/include/linux/lockd/xdr4.h |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 4 | * |
| 5 | * XDR types for the NLM protocol |
| 6 | * |
| 7 | * Copyright (C) 1996 Olaf Kirch <okir@monad.swb.de> |
| 8 | */ |
| 9 | |
| 10 | #ifndef LOCKD_XDR4_H |
| 11 | #define LOCKD_XDR4_H |
| 12 | |
| 13 | #include <linux/fs.h> |
| 14 | #include <linux/nfs.h> |
| 15 | #include <linux/sunrpc/xdr.h> |
| 16 | #include <linux/lockd/xdr.h> |
| 17 | |
| 18 | /* error codes new to NLMv4 */ |
Harvey Harrison | 77f18f5 | 2009-02-11 17:16:58 -0800 | [diff] [blame] | 19 | #define nlm4_deadlock cpu_to_be32(NLM_DEADLCK) |
| 20 | #define nlm4_rofs cpu_to_be32(NLM_ROFS) |
| 21 | #define nlm4_stale_fh cpu_to_be32(NLM_STALE_FH) |
| 22 | #define nlm4_fbig cpu_to_be32(NLM_FBIG) |
| 23 | #define nlm4_failed cpu_to_be32(NLM_FAILED) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 24 | |
| 25 | |
| 26 | |
Christoph Hellwig | 026fec7 | 2017-05-08 19:01:48 +0200 | [diff] [blame] | 27 | int nlm4svc_decode_testargs(struct svc_rqst *, __be32 *); |
Christoph Hellwig | 63f8de3 | 2017-05-08 19:42:02 +0200 | [diff] [blame] | 28 | int nlm4svc_encode_testres(struct svc_rqst *, __be32 *); |
Christoph Hellwig | 026fec7 | 2017-05-08 19:01:48 +0200 | [diff] [blame] | 29 | int nlm4svc_decode_lockargs(struct svc_rqst *, __be32 *); |
| 30 | int nlm4svc_decode_cancargs(struct svc_rqst *, __be32 *); |
| 31 | int nlm4svc_decode_unlockargs(struct svc_rqst *, __be32 *); |
Christoph Hellwig | 63f8de3 | 2017-05-08 19:42:02 +0200 | [diff] [blame] | 32 | int nlm4svc_encode_res(struct svc_rqst *, __be32 *); |
Christoph Hellwig | 026fec7 | 2017-05-08 19:01:48 +0200 | [diff] [blame] | 33 | int nlm4svc_decode_res(struct svc_rqst *, __be32 *); |
Christoph Hellwig | 63f8de3 | 2017-05-08 19:42:02 +0200 | [diff] [blame] | 34 | int nlm4svc_encode_void(struct svc_rqst *, __be32 *); |
Christoph Hellwig | 026fec7 | 2017-05-08 19:01:48 +0200 | [diff] [blame] | 35 | int nlm4svc_decode_void(struct svc_rqst *, __be32 *); |
| 36 | int nlm4svc_decode_shareargs(struct svc_rqst *, __be32 *); |
Christoph Hellwig | 63f8de3 | 2017-05-08 19:42:02 +0200 | [diff] [blame] | 37 | int nlm4svc_encode_shareres(struct svc_rqst *, __be32 *); |
Christoph Hellwig | 026fec7 | 2017-05-08 19:01:48 +0200 | [diff] [blame] | 38 | int nlm4svc_decode_notify(struct svc_rqst *, __be32 *); |
| 39 | int nlm4svc_decode_reboot(struct svc_rqst *, __be32 *); |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 40 | /* |
| 41 | int nlmclt_encode_testargs(struct rpc_rqst *, u32 *, struct nlm_args *); |
| 42 | int nlmclt_encode_lockargs(struct rpc_rqst *, u32 *, struct nlm_args *); |
| 43 | int nlmclt_encode_cancargs(struct rpc_rqst *, u32 *, struct nlm_args *); |
| 44 | int nlmclt_encode_unlockargs(struct rpc_rqst *, u32 *, struct nlm_args *); |
| 45 | */ |
Trond Myklebust | a613fa1 | 2012-01-20 13:53:56 -0500 | [diff] [blame] | 46 | extern const struct rpc_version nlm_version4; |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 47 | |
| 48 | #endif /* LOCKD_XDR4_H */ |