#include <linux/module.h>
#include <linux/blkdev.h>
#include <linux/file.h>
#include <linux/fs.h>
#include <linux/kstrtox.h>
#include <linux/usb/composite.h>
#include "storage_common.h"
struct usb_interface_descriptor fsg_intf_desc = …;
EXPORT_SYMBOL_GPL(…);
struct usb_endpoint_descriptor fsg_fs_bulk_in_desc = …;
EXPORT_SYMBOL_GPL(…);
struct usb_endpoint_descriptor fsg_fs_bulk_out_desc = …;
EXPORT_SYMBOL_GPL(…);
struct usb_descriptor_header *fsg_fs_function[] = …;
EXPORT_SYMBOL_GPL(…);
struct usb_endpoint_descriptor fsg_hs_bulk_in_desc = …;
EXPORT_SYMBOL_GPL(…);
struct usb_endpoint_descriptor fsg_hs_bulk_out_desc = …;
EXPORT_SYMBOL_GPL(…);
struct usb_descriptor_header *fsg_hs_function[] = …;
EXPORT_SYMBOL_GPL(…);
struct usb_endpoint_descriptor fsg_ss_bulk_in_desc = …;
EXPORT_SYMBOL_GPL(…);
struct usb_ss_ep_comp_descriptor fsg_ss_bulk_in_comp_desc = …;
EXPORT_SYMBOL_GPL(…);
struct usb_endpoint_descriptor fsg_ss_bulk_out_desc = …;
EXPORT_SYMBOL_GPL(…);
struct usb_ss_ep_comp_descriptor fsg_ss_bulk_out_comp_desc = …;
EXPORT_SYMBOL_GPL(…);
struct usb_descriptor_header *fsg_ss_function[] = …;
EXPORT_SYMBOL_GPL(…);
void fsg_lun_close(struct fsg_lun *curlun)
{ … }
EXPORT_SYMBOL_GPL(…);
int fsg_lun_open(struct fsg_lun *curlun, const char *filename)
{ … }
EXPORT_SYMBOL_GPL(…);
int fsg_lun_fsync_sub(struct fsg_lun *curlun)
{ … }
EXPORT_SYMBOL_GPL(…);
void store_cdrom_address(u8 *dest, int msf, u32 addr)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_show_ro(struct fsg_lun *curlun, char *buf)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_show_nofua(struct fsg_lun *curlun, char *buf)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_show_file(struct fsg_lun *curlun, struct rw_semaphore *filesem,
char *buf)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_show_cdrom(struct fsg_lun *curlun, char *buf)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_show_removable(struct fsg_lun *curlun, char *buf)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_show_inquiry_string(struct fsg_lun *curlun, char *buf)
{ … }
EXPORT_SYMBOL_GPL(…);
static ssize_t _fsg_store_ro(struct fsg_lun *curlun, bool ro)
{ … }
ssize_t fsg_store_ro(struct fsg_lun *curlun, struct rw_semaphore *filesem,
const char *buf, size_t count)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_store_nofua(struct fsg_lun *curlun, const char *buf, size_t count)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_store_file(struct fsg_lun *curlun, struct rw_semaphore *filesem,
const char *buf, size_t count)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_store_cdrom(struct fsg_lun *curlun, struct rw_semaphore *filesem,
const char *buf, size_t count)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_store_removable(struct fsg_lun *curlun, const char *buf,
size_t count)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_store_inquiry_string(struct fsg_lun *curlun, const char *buf,
size_t count)
{ … }
EXPORT_SYMBOL_GPL(…);
ssize_t fsg_store_forced_eject(struct fsg_lun *curlun, struct rw_semaphore *filesem,
const char *buf, size_t count)
{ … }
EXPORT_SYMBOL_GPL(…);
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;