#include <linux/mm.h>
#include <linux/slab.h>
#include <linux/vbox_err.h>
#include <linux/vbox_utils.h>
#include "vfsmod.h"
#define SHFL_REQUEST …
static u32 vboxsf_client_id;
int vboxsf_connect(void)
{ … }
void vboxsf_disconnect(void)
{ … }
static int vboxsf_call(u32 function, void *parms, u32 parm_count, int *status)
{ … }
int vboxsf_map_folder(struct shfl_string *folder_name, u32 *root)
{ … }
int vboxsf_unmap_folder(u32 root)
{ … }
int vboxsf_create(u32 root, struct shfl_string *parsed_path,
struct shfl_createparms *create_parms)
{ … }
int vboxsf_close(u32 root, u64 handle)
{ … }
int vboxsf_remove(u32 root, struct shfl_string *parsed_path, u32 flags)
{ … }
int vboxsf_rename(u32 root, struct shfl_string *src_path,
struct shfl_string *dest_path, u32 flags)
{ … }
int vboxsf_read(u32 root, u64 handle, u64 offset, u32 *buf_len, u8 *buf)
{ … }
int vboxsf_write(u32 root, u64 handle, u64 offset, u32 *buf_len, u8 *buf)
{ … }
int vboxsf_dirinfo(u32 root, u64 handle,
struct shfl_string *parsed_path, u32 flags, u32 index,
u32 *buf_len, struct shfl_dirinfo *buf, u32 *file_count)
{ … }
int vboxsf_fsinfo(u32 root, u64 handle, u32 flags,
u32 *buf_len, void *buf)
{ … }
int vboxsf_readlink(u32 root, struct shfl_string *parsed_path,
u32 buf_len, u8 *buf)
{ … }
int vboxsf_symlink(u32 root, struct shfl_string *new_path,
struct shfl_string *old_path, struct shfl_fsobjinfo *buf)
{ … }
int vboxsf_set_utf8(void)
{ … }
int vboxsf_set_symlinks(void)
{ … }