|
|
|
@ -55,35 +55,29 @@ fuse_helper_opt_proc(void *data, |
|
|
|
{ |
|
|
|
struct helper_opts *hopts = data; |
|
|
|
|
|
|
|
switch (key) { |
|
|
|
case KEY_HELP: |
|
|
|
usage(outargs->argv[0]); |
|
|
|
/* fall through */ |
|
|
|
|
|
|
|
case KEY_HELP_NOHEADER: |
|
|
|
helper_help(); |
|
|
|
return fuse_opt_add_arg(outargs, "-h"); |
|
|
|
|
|
|
|
case KEY_VERSION: |
|
|
|
return 1; |
|
|
|
|
|
|
|
case FUSE_OPT_KEY_NONOPT: |
|
|
|
if (!hopts->mountpoint) { |
|
|
|
char mountpoint[PATH_MAX]; |
|
|
|
if (realpath(arg, mountpoint) == NULL) { |
|
|
|
fprintf(stderr, |
|
|
|
"fuse: bad mount point `%s': %s\n", |
|
|
|
arg, strerror(errno)); |
|
|
|
return -1; |
|
|
|
} |
|
|
|
return fuse_opt_add_opt(&hopts->mountpoint, mountpoint); |
|
|
|
} else { |
|
|
|
fprintf(stderr, "fuse: invalid argument `%s'\n", arg); |
|
|
|
return -1; |
|
|
|
} |
|
|
|
switch (key) |
|
|
|
{ |
|
|
|
case FUSE_OPT_KEY_NONOPT: |
|
|
|
if(!hopts->mountpoint) |
|
|
|
{ |
|
|
|
char mountpoint[PATH_MAX]; |
|
|
|
if(realpath(arg, mountpoint) == NULL) |
|
|
|
{ |
|
|
|
fprintf(stderr, |
|
|
|
"fuse: bad mount point `%s': %s\n", |
|
|
|
arg, strerror(errno)); |
|
|
|
return -1; |
|
|
|
} |
|
|
|
return fuse_opt_add_opt(&hopts->mountpoint, mountpoint); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
fprintf(stderr, "fuse: invalid argument `%s'\n", arg); |
|
|
|
return -1; |
|
|
|
} |
|
|
|
|
|
|
|
default: |
|
|
|
return 1; |
|
|
|
default: |
|
|
|
return 1; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|