xref: /openbsd/sys/isofs/udf/udf_extern.h (revision 3cab2bb3)
1 /*	$OpenBSD: udf_extern.h,v 1.15 2020/01/20 23:21:55 claudio Exp $	*/
2 
3 /*
4  * Written by Pedro Martelletto <pedro@ambientworks.net> in February 2005.
5  * Public domain.
6  */
7 
8 #ifdef _KERNEL
9 
10 /*
11  * udf_subr.c
12  */
13 int udf_rawnametounicode(u_int len, char *, unicode_t *);
14 int udf_vat_get(struct umount *, uint32_t);
15 int udf_vat_map(struct umount *, uint32_t *);
16 
17 /*
18  * udf_vfsops.c
19  */
20 int udf_init(struct vfsconf *);
21 int udf_mount(struct mount *, const char *, void *, struct nameidata *,
22     struct proc *);
23 int udf_unmount(struct mount *, int, struct proc *);
24 int udf_start(struct mount *, int, struct proc *);
25 int udf_root(struct mount *, struct vnode **);
26 int udf_quotactl(struct mount *, int, uid_t, caddr_t, struct proc *);
27 int udf_statfs(struct mount *, struct statfs *, struct proc *);
28 int udf_vget(struct mount *, ino_t, struct vnode **);
29 int udf_sync(struct mount *, int, int, struct ucred *, struct proc *);
30 int udf_sysctl(int *, u_int, void *, size_t *, void *, size_t, struct proc *);
31 int udf_checkexp(struct mount *, struct mbuf *, int *, struct ucred **);
32 int udf_fhtovp(struct mount *, struct fid *, struct vnode **);
33 int udf_vptofh(struct vnode *, struct fid *);
34 
35 /*
36  * udf_vnops.c
37  */
38 int udf_access(void *v);
39 int udf_getattr(void *v);
40 int udf_open(void *v);
41 int udf_close(void *v);
42 int udf_ioctl(void *v);
43 int udf_read(void *v);
44 int udf_readdir(void *v);
45 int udf_readlink(void *v);
46 int udf_strategy(void *v);
47 int udf_bmap(void *v);
48 int udf_lookup(void *v);
49 int udf_inactive(void *v);
50 int udf_reclaim(void *v);
51 int udf_lock(void *v);
52 int udf_unlock(void *v);
53 int udf_pathconf(void *);
54 int udf_islocked(void *v);
55 int udf_print(void *v);
56 int udf_transname(char *, char *, int, struct umount *);
57 int udf_readatoffset(struct unode *, int *, off_t, struct buf **,
58     uint8_t **);
59 
60 /*
61  * Memory pools.
62  */
63 extern struct pool udf_trans_pool;
64 extern struct pool unode_pool;
65 extern struct pool udf_ds_pool;
66 
67 /* Set of UDF vnode operations.*/
68 extern const struct vops udf_vops;
69 
70 #endif /* _KERNEL */
71