int main(int argc, char *argv[])
{
int c, flags = 0, mnt_err = 1, fake = 0;
- char *spec, *mount_point, *fs_type = "nfs";
+ char *spec = NULL, *mount_point = NULL, *fs_type = "nfs";
char *extra_opts = NULL, *mount_opts = NULL;
uid_t uid = getuid();
if(!strncmp(progname, "umount", strlen("umount")))
exit(nfsumount(argc, argv));
- if (argv[1] && argv[1][0] == '-') {
- if(argv[1][1] == 'V')
- printf("%s ("PACKAGE_STRING")\n", progname);
- else
- mount_usage();
- exit(EX_SUCCESS);
- }
-
if ((argc < 3)) {
mount_usage();
exit(EX_USAGE);
}
- spec = argv[1];
- mount_point = argv[2];
-
mount_config_init(progname);
- argv[2] = argv[0]; /* so that getopt error messages are correct */
- while ((c = getopt_long(argc - 2, argv + 2, "rvVwfno:hs",
+ while ((c = getopt_long(argc, argv, "rvVwfno:hs",
longopts, NULL)) != -1) {
switch (c) {
case 'r':
if (optind != argc - 2) {
mount_usage();
goto out_usage;
+ } else {
+ while (optind < argc) {
+ if (!spec)
+ spec = argv[optind];
+ else
+ mount_point = argv[optind];
+ optind++;
+ }
}
if (strcmp(progname, "mount.nfs4") == 0)