diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2013-09-07 14:09:52 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2013-09-07 16:12:45 -0400 |
commit | 19e7b8d240702297d837891694f463435910f718 (patch) | |
tree | 94636de3d9d2072e74627064fadb08c28fd1d4ac /fs/nfs | |
parent | 74c988116231129320925a665e7420e513faaabe (diff) |
NFS: Clean up nfs_parse_security_flavors()
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs')
-rw-r--r-- | fs/nfs/super.c | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/fs/nfs/super.c b/fs/nfs/super.c index 5d16ee3f1542..b2dd6da010b0 100644 --- a/fs/nfs/super.c +++ b/fs/nfs/super.c | |||
@@ -1032,49 +1032,50 @@ static int nfs_parse_security_flavors(char *value, | |||
1032 | struct nfs_parsed_mount_data *mnt) | 1032 | struct nfs_parsed_mount_data *mnt) |
1033 | { | 1033 | { |
1034 | substring_t args[MAX_OPT_ARGS]; | 1034 | substring_t args[MAX_OPT_ARGS]; |
1035 | rpc_authflavor_t pseudoflavor; | ||
1035 | 1036 | ||
1036 | dfprintk(MOUNT, "NFS: parsing sec=%s option\n", value); | 1037 | dfprintk(MOUNT, "NFS: parsing sec=%s option\n", value); |
1037 | 1038 | ||
1038 | switch (match_token(value, nfs_secflavor_tokens, args)) { | 1039 | switch (match_token(value, nfs_secflavor_tokens, args)) { |
1039 | case Opt_sec_none: | 1040 | case Opt_sec_none: |
1040 | mnt->auth_flavors[0] = RPC_AUTH_NULL; | 1041 | pseudoflavor = RPC_AUTH_NULL; |
1041 | break; | 1042 | break; |
1042 | case Opt_sec_sys: | 1043 | case Opt_sec_sys: |
1043 | mnt->auth_flavors[0] = RPC_AUTH_UNIX; | 1044 | pseudoflavor = RPC_AUTH_UNIX; |
1044 | break; | 1045 | break; |
1045 | case Opt_sec_krb5: | 1046 | case Opt_sec_krb5: |
1046 | mnt->auth_flavors[0] = RPC_AUTH_GSS_KRB5; | 1047 | pseudoflavor = RPC_AUTH_GSS_KRB5; |
1047 | break; | 1048 | break; |
1048 | case Opt_sec_krb5i: | 1049 | case Opt_sec_krb5i: |
1049 | mnt->auth_flavors[0] = RPC_AUTH_GSS_KRB5I; | 1050 | pseudoflavor = RPC_AUTH_GSS_KRB5I; |
1050 | break; | 1051 | break; |
1051 | case Opt_sec_krb5p: | 1052 | case Opt_sec_krb5p: |
1052 | mnt->auth_flavors[0] = RPC_AUTH_GSS_KRB5P; | 1053 | pseudoflavor = RPC_AUTH_GSS_KRB5P; |
1053 | break; | 1054 | break; |
1054 | case Opt_sec_lkey: | 1055 | case Opt_sec_lkey: |
1055 | mnt->auth_flavors[0] = RPC_AUTH_GSS_LKEY; | 1056 | pseudoflavor = RPC_AUTH_GSS_LKEY; |
1056 | break; | 1057 | break; |
1057 | case Opt_sec_lkeyi: | 1058 | case Opt_sec_lkeyi: |
1058 | mnt->auth_flavors[0] = RPC_AUTH_GSS_LKEYI; | 1059 | pseudoflavor = RPC_AUTH_GSS_LKEYI; |
1059 | break; | 1060 | break; |
1060 | case Opt_sec_lkeyp: | 1061 | case Opt_sec_lkeyp: |
1061 | mnt->auth_flavors[0] = RPC_AUTH_GSS_LKEYP; | 1062 | pseudoflavor = RPC_AUTH_GSS_LKEYP; |
1062 | break; | 1063 | break; |
1063 | case Opt_sec_spkm: | 1064 | case Opt_sec_spkm: |
1064 | mnt->auth_flavors[0] = RPC_AUTH_GSS_SPKM; | 1065 | pseudoflavor = RPC_AUTH_GSS_SPKM; |
1065 | break; | 1066 | break; |
1066 | case Opt_sec_spkmi: | 1067 | case Opt_sec_spkmi: |
1067 | mnt->auth_flavors[0] = RPC_AUTH_GSS_SPKMI; | 1068 | pseudoflavor = RPC_AUTH_GSS_SPKMI; |
1068 | break; | 1069 | break; |
1069 | case Opt_sec_spkmp: | 1070 | case Opt_sec_spkmp: |
1070 | mnt->auth_flavors[0] = RPC_AUTH_GSS_SPKMP; | 1071 | pseudoflavor = RPC_AUTH_GSS_SPKMP; |
1071 | break; | 1072 | break; |
1072 | default: | 1073 | default: |
1073 | return 0; | 1074 | return 0; |
1074 | } | 1075 | } |
1075 | 1076 | ||
1076 | mnt->flags |= NFS_MOUNT_SECFLAVOUR; | 1077 | mnt->flags |= NFS_MOUNT_SECFLAVOUR; |
1077 | mnt->auth_flavor_len = 1; | 1078 | nfs_set_auth_parsed_mount_data(mnt, pseudoflavor); |
1078 | return 1; | 1079 | return 1; |
1079 | } | 1080 | } |
1080 | 1081 | ||