1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | /* |
3 | * linux/include/linux/lockd/share.h |
4 | * |
5 | * DOS share management for lockd. |
6 | * |
7 | * Copyright (C) 1996, Olaf Kirch <okir@monad.swb.de> |
8 | */ |
9 | |
10 | #ifndef LINUX_LOCKD_SHARE_H |
11 | #define LINUX_LOCKD_SHARE_H |
12 | |
13 | /* |
14 | * DOS share for a specific file |
15 | */ |
16 | struct nlm_share { |
17 | struct nlm_share * s_next; /* linked list */ |
18 | struct nlm_host * s_host; /* client host */ |
19 | struct nlm_file * s_file; /* shared file */ |
20 | struct xdr_netobj s_owner; /* owner handle */ |
21 | u32 s_access; /* access mode */ |
22 | u32 s_mode; /* deny mode */ |
23 | }; |
24 | |
25 | __be32 nlmsvc_share_file(struct nlm_host *, struct nlm_file *, |
26 | struct nlm_args *); |
27 | __be32 nlmsvc_unshare_file(struct nlm_host *, struct nlm_file *, |
28 | struct nlm_args *); |
29 | void nlmsvc_traverse_shares(struct nlm_host *, struct nlm_file *, |
30 | nlm_host_match_fn_t); |
31 | |
32 | #endif /* LINUX_LOCKD_SHARE_H */ |
33 | |