aboutsummaryrefslogtreecommitdiffstats
path: root/net/sunrpc/auth_gss/gss_krb5_wrap.c
diff options
context:
space:
mode:
authorJ. Bruce Fields <bfields@fieldses.org>2006-12-04 20:22:42 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2006-12-06 10:46:48 -0500
commit94efa93435383b08d822a40f24ff6f6ce1a888df (patch)
treed89f72c71ab1ea6c0a6ce5ef8af3ece1c2f510fa /net/sunrpc/auth_gss/gss_krb5_wrap.c
parent717757ad1038ab6aacb89bad579c89b006efd913 (diff)
rpcgss: krb5: miscellaneous cleanup
Miscellaneous cosmetic fixes. Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net/sunrpc/auth_gss/gss_krb5_wrap.c')
-rw-r--r--net/sunrpc/auth_gss/gss_krb5_wrap.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/net/sunrpc/auth_gss/gss_krb5_wrap.c b/net/sunrpc/auth_gss/gss_krb5_wrap.c
index bf25f4d9acd..fe25b3d898d 100644
--- a/net/sunrpc/auth_gss/gss_krb5_wrap.c
+++ b/net/sunrpc/auth_gss/gss_krb5_wrap.c
@@ -159,7 +159,6 @@ gss_wrap_kerberos(struct gss_ctx *ctx, int offset,
159 /* ptr now at byte 2 of header described in rfc 1964, section 1.2.1: */ 159 /* ptr now at byte 2 of header described in rfc 1964, section 1.2.1: */
160 krb5_hdr = ptr - 2; 160 krb5_hdr = ptr - 2;
161 msg_start = krb5_hdr + 24; 161 msg_start = krb5_hdr + 24;
162 /* XXXJBF: */ BUG_ON(buf->head[0].iov_base + offset + headlen != msg_start + blocksize);
163 162
164 *(__be16 *)(krb5_hdr + 2) = htons(SGN_ALG_DES_MAC_MD5); 163 *(__be16 *)(krb5_hdr + 2) = htons(SGN_ALG_DES_MAC_MD5);
165 memset(krb5_hdr + 4, 0xff, 4); 164 memset(krb5_hdr + 4, 0xff, 4);
@@ -196,7 +195,7 @@ gss_wrap_kerberos(struct gss_ctx *ctx, int offset,
196 pages)) 195 pages))
197 return GSS_S_FAILURE; 196 return GSS_S_FAILURE;
198 197
199 return ((kctx->endtime < now) ? GSS_S_CONTEXT_EXPIRED : GSS_S_COMPLETE); 198 return (kctx->endtime < now) ? GSS_S_CONTEXT_EXPIRED : GSS_S_COMPLETE;
200} 199}
201 200
202u32 201u32
@@ -232,16 +231,14 @@ gss_unwrap_kerberos(struct gss_ctx *ctx, int offset, struct xdr_buf *buf)
232 /* get the sign and seal algorithms */ 231 /* get the sign and seal algorithms */
233 232
234 signalg = ptr[0] + (ptr[1] << 8); 233 signalg = ptr[0] + (ptr[1] << 8);
235 sealalg = ptr[2] + (ptr[3] << 8); 234 if (signalg != SGN_ALG_DES_MAC_MD5)
236
237 /* Sanity checks */
238
239 if ((ptr[4] != 0xff) || (ptr[5] != 0xff))
240 return GSS_S_DEFECTIVE_TOKEN; 235 return GSS_S_DEFECTIVE_TOKEN;
241 236
237 sealalg = ptr[2] + (ptr[3] << 8);
242 if (sealalg != SEAL_ALG_DES) 238 if (sealalg != SEAL_ALG_DES)
243 return GSS_S_DEFECTIVE_TOKEN; 239 return GSS_S_DEFECTIVE_TOKEN;
244 if (signalg != SGN_ALG_DES_MAC_MD5) 240
241 if ((ptr[4] != 0xff) || (ptr[5] != 0xff))
245 return GSS_S_DEFECTIVE_TOKEN; 242 return GSS_S_DEFECTIVE_TOKEN;
246 243
247 if (gss_decrypt_xdr_buf(kctx->enc, buf, 244 if (gss_decrypt_xdr_buf(kctx->enc, buf,