2010-04-29 16:14:43 +04:00
|
|
|
/*
|
2016-06-06 12:52:34 +03:00
|
|
|
* 9p
|
2010-04-29 16:14:43 +04:00
|
|
|
*
|
|
|
|
* 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
|
2011-01-28 15:39:08 +03:00
|
|
|
#include "file-op-9p.h"
|
2010-04-29 16:14:43 +04:00
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* A table to store the various file systems and their callback operations.
|
|
|
|
* -----------------
|
|
|
|
* fstype | ops
|
|
|
|
* -----------------
|
|
|
|
* local | local_ops
|
|
|
|
* . |
|
|
|
|
* . |
|
|
|
|
* . |
|
|
|
|
* . |
|
|
|
|
* -----------------
|
|
|
|
* etc
|
|
|
|
*/
|
2011-10-13 10:58:04 +04:00
|
|
|
typedef struct FsDriverTable {
|
2010-04-29 16:14:43 +04:00
|
|
|
const char *name;
|
|
|
|
FileOperations *ops;
|
2011-10-13 10:58:04 +04:00
|
|
|
} FsDriverTable;
|
2010-04-29 16:14:43 +04:00
|
|
|
|
2011-10-13 10:58:04 +04:00
|
|
|
typedef struct FsDriverListEntry {
|
|
|
|
FsDriverEntry fse;
|
|
|
|
QTAILQ_ENTRY(FsDriverListEntry) next;
|
|
|
|
} FsDriverListEntry;
|
2010-04-29 16:14:43 +04:00
|
|
|
|
2018-10-17 11:26:55 +03:00
|
|
|
int qemu_fsdev_add(QemuOpts *opts, Error **errp);
|
2011-10-13 10:58:04 +04:00
|
|
|
FsDriverEntry *get_fsdev_fsentry(char *id);
|
2010-04-29 16:14:44 +04:00
|
|
|
extern FileOperations local_ops;
|
2011-08-02 10:05:54 +04:00
|
|
|
extern FileOperations handle_ops;
|
2011-10-25 10:40:40 +04:00
|
|
|
extern FileOperations synth_ops;
|
2011-12-14 12:19:28 +04:00
|
|
|
extern FileOperations proxy_ops;
|
2010-04-29 16:14:43 +04:00
|
|
|
#endif
|