xref: /qemu/fsdev/qemu-fsdev-opts.c (revision 6402cbbb)
1 /*
2  * 9p
3  *
4  * This work is licensed under the terms of the GNU GPL, version 2 or
5  * later.  See the COPYING file in the top-level directory.
6  */
7 
8 #include "qemu/osdep.h"
9 #include "qemu/config-file.h"
10 #include "qemu/option.h"
11 #include "qemu/module.h"
12 #include "qemu/throttle-options.h"
13 
14 static QemuOptsList qemu_fsdev_opts = {
15     .name = "fsdev",
16     .implied_opt_name = "fsdriver",
17     .head = QTAILQ_HEAD_INITIALIZER(qemu_fsdev_opts.head),
18     .desc = {
19         {
20             .name = "fsdriver",
21             .type = QEMU_OPT_STRING,
22         }, {
23             .name = "path",
24             .type = QEMU_OPT_STRING,
25         }, {
26             .name = "security_model",
27             .type = QEMU_OPT_STRING,
28         }, {
29             .name = "writeout",
30             .type = QEMU_OPT_STRING,
31         }, {
32             .name = "readonly",
33             .type = QEMU_OPT_BOOL,
34 
35         }, {
36             .name = "socket",
37             .type = QEMU_OPT_STRING,
38         }, {
39             .name = "sock_fd",
40             .type = QEMU_OPT_NUMBER,
41         }, {
42             .name = "fmode",
43             .type = QEMU_OPT_NUMBER,
44         }, {
45             .name = "dmode",
46             .type = QEMU_OPT_NUMBER,
47         },
48 
49         THROTTLE_OPTS,
50 
51         { /*End of list */ }
52     },
53 };
54 
55 static QemuOptsList qemu_virtfs_opts = {
56     .name = "virtfs",
57     .implied_opt_name = "fsdriver",
58     .head = QTAILQ_HEAD_INITIALIZER(qemu_virtfs_opts.head),
59     .desc = {
60         {
61             .name = "fsdriver",
62             .type = QEMU_OPT_STRING,
63         }, {
64             .name = "path",
65             .type = QEMU_OPT_STRING,
66         }, {
67             .name = "mount_tag",
68             .type = QEMU_OPT_STRING,
69         }, {
70             .name = "security_model",
71             .type = QEMU_OPT_STRING,
72         }, {
73             .name = "writeout",
74             .type = QEMU_OPT_STRING,
75         }, {
76             .name = "readonly",
77             .type = QEMU_OPT_BOOL,
78         }, {
79             .name = "socket",
80             .type = QEMU_OPT_STRING,
81         }, {
82             .name = "sock_fd",
83             .type = QEMU_OPT_NUMBER,
84         }, {
85             .name = "fmode",
86             .type = QEMU_OPT_NUMBER,
87         }, {
88             .name = "dmode",
89             .type = QEMU_OPT_NUMBER,
90         },
91 
92         { /*End of list */ }
93     },
94 };
95 
96 static void fsdev_register_config(void)
97 {
98     qemu_add_opts(&qemu_fsdev_opts);
99     qemu_add_opts(&qemu_virtfs_opts);
100 }
101 opts_init(fsdev_register_config);
102