xref: /linux-6.15/include/linux/lockd/xdr4.h (revision 1da177e4)
1*1da177e4SLinus Torvalds /*
2*1da177e4SLinus Torvalds  * linux/include/linux/lockd/xdr.h
3*1da177e4SLinus Torvalds  *
4*1da177e4SLinus Torvalds  * XDR types for the NLM protocol
5*1da177e4SLinus Torvalds  *
6*1da177e4SLinus Torvalds  * Copyright (C) 1996 Olaf Kirch <[email protected]>
7*1da177e4SLinus Torvalds  */
8*1da177e4SLinus Torvalds 
9*1da177e4SLinus Torvalds #ifndef LOCKD_XDR4_H
10*1da177e4SLinus Torvalds #define LOCKD_XDR4_H
11*1da177e4SLinus Torvalds 
12*1da177e4SLinus Torvalds #include <linux/fs.h>
13*1da177e4SLinus Torvalds #include <linux/nfs.h>
14*1da177e4SLinus Torvalds #include <linux/sunrpc/xdr.h>
15*1da177e4SLinus Torvalds #include <linux/lockd/xdr.h>
16*1da177e4SLinus Torvalds 
17*1da177e4SLinus Torvalds /* error codes new to NLMv4 */
18*1da177e4SLinus Torvalds #define	nlm4_deadlock		__constant_htonl(NLM_DEADLCK)
19*1da177e4SLinus Torvalds #define	nlm4_rofs		__constant_htonl(NLM_ROFS)
20*1da177e4SLinus Torvalds #define	nlm4_stale_fh		__constant_htonl(NLM_STALE_FH)
21*1da177e4SLinus Torvalds #define	nlm4_fbig		__constant_htonl(NLM_FBIG)
22*1da177e4SLinus Torvalds #define	nlm4_failed		__constant_htonl(NLM_FAILED)
23*1da177e4SLinus Torvalds 
24*1da177e4SLinus Torvalds 
25*1da177e4SLinus Torvalds 
26*1da177e4SLinus Torvalds int	nlm4svc_decode_testargs(struct svc_rqst *, u32 *, struct nlm_args *);
27*1da177e4SLinus Torvalds int	nlm4svc_encode_testres(struct svc_rqst *, u32 *, struct nlm_res *);
28*1da177e4SLinus Torvalds int	nlm4svc_decode_lockargs(struct svc_rqst *, u32 *, struct nlm_args *);
29*1da177e4SLinus Torvalds int	nlm4svc_decode_cancargs(struct svc_rqst *, u32 *, struct nlm_args *);
30*1da177e4SLinus Torvalds int	nlm4svc_decode_unlockargs(struct svc_rqst *, u32 *, struct nlm_args *);
31*1da177e4SLinus Torvalds int	nlm4svc_encode_res(struct svc_rqst *, u32 *, struct nlm_res *);
32*1da177e4SLinus Torvalds int	nlm4svc_decode_res(struct svc_rqst *, u32 *, struct nlm_res *);
33*1da177e4SLinus Torvalds int	nlm4svc_encode_void(struct svc_rqst *, u32 *, void *);
34*1da177e4SLinus Torvalds int	nlm4svc_decode_void(struct svc_rqst *, u32 *, void *);
35*1da177e4SLinus Torvalds int	nlm4svc_decode_shareargs(struct svc_rqst *, u32 *, struct nlm_args *);
36*1da177e4SLinus Torvalds int	nlm4svc_encode_shareres(struct svc_rqst *, u32 *, struct nlm_res *);
37*1da177e4SLinus Torvalds int	nlm4svc_decode_notify(struct svc_rqst *, u32 *, struct nlm_args *);
38*1da177e4SLinus Torvalds int	nlm4svc_decode_reboot(struct svc_rqst *, u32 *, struct nlm_reboot *);
39*1da177e4SLinus Torvalds /*
40*1da177e4SLinus Torvalds int	nlmclt_encode_testargs(struct rpc_rqst *, u32 *, struct nlm_args *);
41*1da177e4SLinus Torvalds int	nlmclt_encode_lockargs(struct rpc_rqst *, u32 *, struct nlm_args *);
42*1da177e4SLinus Torvalds int	nlmclt_encode_cancargs(struct rpc_rqst *, u32 *, struct nlm_args *);
43*1da177e4SLinus Torvalds int	nlmclt_encode_unlockargs(struct rpc_rqst *, u32 *, struct nlm_args *);
44*1da177e4SLinus Torvalds  */
45*1da177e4SLinus Torvalds 
46*1da177e4SLinus Torvalds #endif /* LOCKD_XDR4_H */
47