libfuse

fuse_opt.h
Go to the documentation of this file.
1/*
2 FUSE: Filesystem in Userspace
3 Copyright (C) 2001-2007 Miklos Szeredi <miklos@szeredi.hu>
4
5 This program can be distributed under the terms of the GNU LGPLv2.
6 See the file COPYING.LIB.
7*/
8
9#ifndef FUSE_OPT_H_
10#define FUSE_OPT_H_
11
17#ifdef __cplusplus
18 extern "C" {
19#endif
20
77 struct fuse_opt {
79 const char *templ;
80
85 unsigned long offset;
86
91 int value;
92};
93
98#define FUSE_OPT_KEY(templ, key) { templ, -1U, key }
99
104#define FUSE_OPT_END { NULL, 0, 0 }
105
109 struct fuse_args {
111 int argc;
112
114 char **argv;
115
117 int allocated;
118};
119
123#define FUSE_ARGS_INIT(argc, argv) { argc, argv, 0 }
124
129#define FUSE_OPT_KEY_OPT -1
130
137#define FUSE_OPT_KEY_NONOPT -2
138
145#define FUSE_OPT_KEY_KEEP -3
146
153#define FUSE_OPT_KEY_DISCARD -4
154
180 typedef int (*fuse_opt_proc_t)(void *data, const char *arg, int key,
181 struct fuse_args *outargs);
182
203 int fuse_opt_parse(struct fuse_args *args, void *data,
204 const struct fuse_opt opts[], fuse_opt_proc_t proc);
205
213 int fuse_opt_add_opt(char **opts, const char *opt);
214
222 int fuse_opt_add_opt_escaped(char **opts, const char *opt);
223
231 int fuse_opt_add_arg(struct fuse_args *args, const char *arg);
232
246 int fuse_opt_insert_arg(struct fuse_args *args, int pos, const char *arg);
247
255 void fuse_opt_free_args(struct fuse_args *args);
256
257
265 int fuse_opt_match(const struct fuse_opt opts[], const char *opt);
266
267#ifdef __cplusplus
268}
269#endif
270
271#endif /* FUSE_OPT_H_ */
fuse_opt_add_arg
int fuse_opt_add_arg(struct fuse_args *args, const char *arg)
Definition fuse_opt.c:55
fuse_opt_free_args
void fuse_opt_free_args(struct fuse_args *args)
Definition fuse_opt.c:34
fuse_opt_proc_t
int(* fuse_opt_proc_t)(void *data, const char *arg, int key, struct fuse_args *outargs)
Definition fuse_opt.h:180
fuse_opt_add_opt_escaped
int fuse_opt_add_opt_escaped(char **opts, const char *opt)
Definition fuse_opt.c:144
fuse_opt_parse
int fuse_opt_parse(struct fuse_args *args, void *data, const struct fuse_opt opts[], fuse_opt_proc_t proc)
Definition fuse_opt.c:398
fuse_opt_add_opt
int fuse_opt_add_opt(char **opts, const char *opt)
Definition fuse_opt.c:139
fuse_opt_insert_arg
int fuse_opt_insert_arg(struct fuse_args *args, int pos, const char *arg)
Definition fuse_opt.c:95
fuse_opt_match
int fuse_opt_match(const struct fuse_opt opts[], const char *opt)
fuse_args
Definition fuse_opt.h:109
fuse_args::allocated
int allocated
Definition fuse_opt.h:117
fuse_args::argc
int argc
Definition fuse_opt.h:111
fuse_args::argv
char ** argv
Definition fuse_opt.h:114
fuse_opt
Definition fuse_opt.h:77
fuse_opt::templ
const char * templ
Definition fuse_opt.h:79
fuse_opt::offset
unsigned long offset
Definition fuse_opt.h:85
fuse_opt::value
int value
Definition fuse_opt.h:91