18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * linux/include/linux/lockd/share.h 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * DOS share management for lockd. 68c2ecf20Sopenharmony_ci * 78c2ecf20Sopenharmony_ci * Copyright (C) 1996, Olaf Kirch <okir@monad.swb.de> 88c2ecf20Sopenharmony_ci */ 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci#ifndef LINUX_LOCKD_SHARE_H 118c2ecf20Sopenharmony_ci#define LINUX_LOCKD_SHARE_H 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ci/* 148c2ecf20Sopenharmony_ci * DOS share for a specific file 158c2ecf20Sopenharmony_ci */ 168c2ecf20Sopenharmony_cistruct nlm_share { 178c2ecf20Sopenharmony_ci struct nlm_share * s_next; /* linked list */ 188c2ecf20Sopenharmony_ci struct nlm_host * s_host; /* client host */ 198c2ecf20Sopenharmony_ci struct nlm_file * s_file; /* shared file */ 208c2ecf20Sopenharmony_ci struct xdr_netobj s_owner; /* owner handle */ 218c2ecf20Sopenharmony_ci u32 s_access; /* access mode */ 228c2ecf20Sopenharmony_ci u32 s_mode; /* deny mode */ 238c2ecf20Sopenharmony_ci}; 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci__be32 nlmsvc_share_file(struct nlm_host *, struct nlm_file *, 268c2ecf20Sopenharmony_ci struct nlm_args *); 278c2ecf20Sopenharmony_ci__be32 nlmsvc_unshare_file(struct nlm_host *, struct nlm_file *, 288c2ecf20Sopenharmony_ci struct nlm_args *); 298c2ecf20Sopenharmony_civoid nlmsvc_traverse_shares(struct nlm_host *, struct nlm_file *, 308c2ecf20Sopenharmony_ci nlm_host_match_fn_t); 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci#endif /* LINUX_LOCKD_SHARE_H */ 33