2010-04-29 16:14:43 +04:00
|
|
|
/*
|
|
|
|
* Virtio 9p
|
|
|
|
*
|
|
|
|
* Copyright IBM, Corp. 2010
|
|
|
|
*
|
|
|
|
* Authors:
|
|
|
|
* Gautham R Shenoy <ego@in.ibm.com>
|
|
|
|
*
|
|
|
|
* This work is licensed under the terms of the GNU GPL, version 2. See
|
|
|
|
* the COPYING file in the top-level directory.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
#ifndef QEMU_FSDEV_H
|
|
|
|
#define QEMU_FSDEV_H
|
|
|
|
#include "qemu-option.h"
|
|
|
|
#include "hw/file-op-9p.h"
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* A table to store the various file systems and their callback operations.
|
|
|
|
* -----------------
|
|
|
|
* fstype | ops
|
|
|
|
* -----------------
|
|
|
|
* local | local_ops
|
|
|
|
* . |
|
|
|
|
* . |
|
|
|
|
* . |
|
|
|
|
* . |
|
|
|
|
* -----------------
|
|
|
|
* etc
|
|
|
|
*/
|
|
|
|
typedef struct FsTypeTable {
|
|
|
|
const char *name;
|
|
|
|
FileOperations *ops;
|
|
|
|
} FsTypeTable;
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Structure to store the various fsdev's passed through command line.
|
|
|
|
*/
|
|
|
|
typedef struct FsTypeEntry {
|
|
|
|
char *fsdev_id;
|
|
|
|
char *path;
|
|
|
|
FileOperations *ops;
|
|
|
|
} FsTypeEntry;
|
|
|
|
|
|
|
|
typedef struct FsTypeListEntry {
|
|
|
|
FsTypeEntry fse;
|
|
|
|
QTAILQ_ENTRY(FsTypeListEntry) next;
|
|
|
|
} FsTypeListEntry;
|
|
|
|
|
|
|
|
extern int qemu_fsdev_add(QemuOpts *opts);
|
|
|
|
extern FsTypeEntry *get_fsdev_fsentry(char *id);
|
2010-04-29 16:14:44 +04:00
|
|
|
extern FileOperations local_ops;
|
2010-04-29 16:14:43 +04:00
|
|
|
#endif
|