aboutsummaryrefslogtreecommitdiffstats
path: root/lib/helper.c
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2006-01-20 15:15:21 +0000
committerMiklos Szeredi <miklos@szeredi.hu>2006-01-20 15:15:21 +0000
commit065f222cd58501acbe6dde5520c1c2498e8d3c08 (patch)
tree6fee89465e3fc21e91591e53ea1c0678ef965367 /lib/helper.c
parente089b718969bc0aaecf180c675b9c2b6d1b8ba9c (diff)
downloadlibfuse-065f222cd58501acbe6dde5520c1c2498e8d3c08.tar.gz
fix
Diffstat (limited to 'lib/helper.c')
-rw-r--r--lib/helper.c38
1 files changed, 30 insertions, 8 deletions
diff --git a/lib/helper.c b/lib/helper.c
index b7f77be..f937366 100644
--- a/lib/helper.c
+++ b/lib/helper.c
@@ -22,7 +22,6 @@ enum {
KEY_HELP,
KEY_HELP_NOHEADER,
KEY_VERSION,
- KEY_KEEP,
};
struct helper_opts {
@@ -46,8 +45,9 @@ static const struct fuse_opt fuse_helper_opts[] = {
FUSE_OPT_KEY("-ho", KEY_HELP_NOHEADER),
FUSE_OPT_KEY("-V", KEY_VERSION),
FUSE_OPT_KEY("--version", KEY_VERSION),
- FUSE_OPT_KEY("-d", KEY_KEEP),
- FUSE_OPT_KEY("debug", KEY_KEEP),
+ FUSE_OPT_KEY("-d", FUSE_OPT_KEY_KEEP),
+ FUSE_OPT_KEY("debug", FUSE_OPT_KEY_KEEP),
+ FUSE_OPT_KEY("fsname=", FUSE_OPT_KEY_KEEP),
FUSE_OPT_END
};
@@ -100,11 +100,12 @@ static int fuse_helper_opt_proc(void *data, const char *arg, int key,
case FUSE_OPT_KEY_NONOPT:
if (!hopts->mountpoint)
return fuse_opt_add_opt(&hopts->mountpoint, arg);
-
- /* fall through */
+ else {
+ fprintf(stderr, "fuse: invalid argument `%s'\n", arg);
+ return -1;
+ }
default:
- case KEY_KEEP:
return 1;
}
}
@@ -289,10 +290,10 @@ int fuse_main(void)
return -1;
}
-#ifndef __FreeBSD__
-
#include "fuse_compat.h"
+#ifndef __FreeBSD__
+
struct fuse *fuse_setup_compat22(int argc, char *argv[],
const struct fuse_operations_compat22 *op,
size_t op_size, char **mountpoint,
@@ -341,3 +342,24 @@ __asm__(".symver fuse_main_compat2,fuse_main@");
__asm__(".symver fuse_main_real_compat22,fuse_main_real@FUSE_2.2");
#endif /* __FreeBSD__ */
+
+
+struct fuse *fuse_setup_compat25(int argc, char *argv[],
+ const struct fuse_operations_compat25 *op,
+ size_t op_size, char **mountpoint,
+ int *multithreaded, int *fd)
+{
+ return fuse_setup_common(argc, argv, (struct fuse_operations *) op,
+ op_size, mountpoint, multithreaded, fd, 25);
+}
+
+int fuse_main_real_compat25(int argc, char *argv[],
+ const struct fuse_operations_compat25 *op,
+ size_t op_size)
+{
+ return fuse_main_common(argc, argv, (struct fuse_operations *) op, op_size,
+ 25);
+}
+
+__asm__(".symver fuse_setup_compat25,fuse_setup@FUSE_2.5");
+__asm__(".symver fuse_main_real_compat25,fuse_main_real@FUSE_2.5");