xref: /illumos-gate/usr/src/lib/smbsrv/libfksmbsrv/common/vncache.h (revision 8119dad84d6416f13557b0ba8e2aaf9064cbcfd3)
1 /*
2  * This file and its contents are supplied under the terms of the
3  * Common Development and Distribution License ("CDDL"), version 1.0.
4  * You may only use this file in accordance with the terms of version
5  * 1.0 of the CDDL.
6  *
7  * A full copy of the text of the CDDL should have accompanied this
8  * source.  A copy of the CDDL is also available via the Internet at
9  * http://www.illumos.org/license/CDDL.
10  */
11 
12 /*
13  * Copyright 2014 Nexenta Systems, Inc.  All rights reserved.
14  * Copyright 2024 RackTop Systems, Inc.
15  */
16 
17 #ifndef _VNCACHE_H
18 #define	_VNCACHE_H
19 
20 /*
21  * Declarations for thigns in vncache.c
22  */
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 struct stat;
29 vnode_t *vncache_lookup(struct stat *);
30 vnode_t *vncache_enter(struct stat *, vnode_t *, char *, int);
31 void	vncache_renamed(vnode_t *, vnode_t *, char *);
32 void	vncache_inactive(vnode_t *);
33 int	vncache_cmp(const vnode_t *, const vnode_t *);
34 
35 int	vncache_getfd(vnode_t *);
36 void	vncache_setfd(vnode_t *, int);
37 
38 int vncache_init(void);
39 void vncache_fini(void);
40 
41 #ifdef __cplusplus
42 }
43 #endif
44 
45 #endif /* _VNCACHE_H */
46