#include <mach/memory_object_types.h>
#include <sys/ucred.h>
+#ifdef KERNEL_PRIVATE
+#include <sys/imgact.h>
+#endif // KERNEL_PRIVATE
+
/* defns for ubc_msync() and ubc_msync */
#define UBC_PUSHDIRTY 0x01 /* clean any dirty pages in the specified range to the backing store */
/* apis to handle generation count for cs blob */
void cs_blob_reset_cache(void);
-int ubc_cs_blob_revalidate(vnode_t, struct cs_blob *, int);
+int ubc_cs_blob_revalidate(vnode_t, struct cs_blob *, struct image_params *, int);
int ubc_cs_generation_check(vnode_t);
int cs_entitlements_blob_get(proc_t, void **, size_t *);
int cluster_push(vnode_t, int);
int cluster_push_ext(vnode_t, int, int (*)(buf_t, void *), void *);
+int cluster_push_err(vnode_t, int, int (*)(buf_t, void *), void *, int *);
int cluster_bp(buf_t);
int cluster_bp_ext(buf_t, int (*)(buf_t, void *), void *);
errno_t mach_to_bsd_errno(kern_return_t mach_err);
+#ifdef KERNEL_PRIVATE
+
+__attribute__((pure)) boolean_t ubc_is_mapped(const struct vnode *, boolean_t *writable);
+__attribute__((pure)) boolean_t ubc_is_mapped_writable(const struct vnode *);
+
+uint32_t cluster_max_io_size(mount_t, int);
+
+#endif
+
__END_DECLS
#endif /* _SYS_UBC_H_ */