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 */
13int udf_rawnametounicode(u_int len, char *, unicode_t *);
14int udf_vat_get(struct umount *, uint32_t);
15int udf_vat_map(struct umount *, uint32_t *);
16
17/*
18 * udf_vfsops.c
19 */
20int udf_init(struct vfsconf *);
21int udf_mount(struct mount *, const char *, void *, struct nameidata *,
22    struct proc *);
23int udf_unmount(struct mount *, int, struct proc *);
24int udf_start(struct mount *, int, struct proc *);
25int udf_root(struct mount *, struct vnode **);
26int udf_quotactl(struct mount *, int, uid_t, caddr_t, struct proc *);
27int udf_statfs(struct mount *, struct statfs *, struct proc *);
28int udf_vget(struct mount *, ino_t, struct vnode **);
29int udf_sync(struct mount *, int, int, struct ucred *, struct proc *);
30int udf_sysctl(int *, u_int, void *, size_t *, void *, size_t, struct proc *);
31int udf_checkexp(struct mount *, struct mbuf *, int *, struct ucred **);
32int udf_fhtovp(struct mount *, struct fid *, struct vnode **);
33int udf_vptofh(struct vnode *, struct fid *);
34
35/*
36 * udf_vnops.c
37 */
38int udf_access(void *v);
39int udf_getattr(void *v);
40int udf_open(void *v);
41int udf_close(void *v);
42int udf_ioctl(void *v);
43int udf_read(void *v);
44int udf_readdir(void *v);
45int udf_readlink(void *v);
46int udf_strategy(void *v);
47int udf_bmap(void *v);
48int udf_lookup(void *v);
49int udf_inactive(void *v);
50int udf_reclaim(void *v);
51int udf_lock(void *v);
52int udf_unlock(void *v);
53int udf_pathconf(void *);
54int udf_islocked(void *v);
55int udf_print(void *v);
56int udf_transname(char *, char *, int, struct umount *);
57int udf_readatoffset(struct unode *, int *, off_t, struct buf **,
58    uint8_t **);
59
60/*
61 * Memory pools.
62 */
63extern struct pool udf_trans_pool;
64extern struct pool unode_pool;
65extern struct pool udf_ds_pool;
66
67/* Set of UDF vnode operations.*/
68extern const struct vops udf_vops;
69
70#endif /* _KERNEL */
71