]> git.decadent.org.uk Git - nfs-utils.git/blobdiff - utils/mount/network.c
Introducing the parsing of both 'defaultvers' and 'defaultproto'
[nfs-utils.git] / utils / mount / network.c
index f6fa5fd340ec353d4e9cc8155569babdaeef8806..1a053519718437f2c5c8b73c7b5a2396c66404e2 100644 (file)
@@ -90,6 +90,7 @@ static const char *nfs_transport_opttbl[] = {
 static const char *nfs_version_opttbl[] = {
        "v2",
        "v3",
+       "v4",
        "vers",
        "nfsvers",
        NULL,
@@ -1203,7 +1204,7 @@ nfs_nfs_program(struct mount_options *options, unsigned long *program)
  * Returns TRUE if @version contains a valid value for this option,
  * or FALSE if the option was specified with an invalid value.
  */
-static int
+int
 nfs_nfs_version(struct mount_options *options, unsigned long *version)
 {
        long tmp;
@@ -1215,10 +1216,13 @@ nfs_nfs_version(struct mount_options *options, unsigned long *version)
        case 1: /* v3 */
                *version = 3;
                return 1;
-       case 2: /* vers */
+       case 2: /* v4 */
+               *version = 4;
+               return 1;
+       case 3: /* vers */
                switch (po_get_numeric(options, "vers", &tmp)) {
                case PO_FOUND:
-                       if (tmp >= 2 && tmp <= 3) {
+                       if (tmp >= 2 && tmp <= 4) {
                                *version = tmp;
                                return 1;
                        }
@@ -1229,10 +1233,10 @@ nfs_nfs_version(struct mount_options *options, unsigned long *version)
                case PO_BAD_VALUE:
                        return 0;
                }
-       case 3: /* nfsvers */
+       case 4: /* nfsvers */
                switch (po_get_numeric(options, "nfsvers", &tmp)) {
                case PO_FOUND:
-                       if (tmp >= 2 && tmp <= 3) {
+                       if (tmp >= 2 && tmp <= 4) {
                                *version = tmp;
                                return 1;
                        }
@@ -1257,7 +1261,7 @@ nfs_nfs_version(struct mount_options *options, unsigned long *version)
  * Returns TRUE if @protocol contains a valid value for this option,
  * or FALSE if the option was specified with an invalid value.
  */
-static int
+int
 nfs_nfs_protocol(struct mount_options *options, unsigned long *protocol)
 {
        char *option;