diff options
Diffstat (limited to 'net/sunrpc/auth_gss/gss_krb5_wrap.c')
-rw-r--r-- | net/sunrpc/auth_gss/gss_krb5_wrap.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/sunrpc/auth_gss/gss_krb5_wrap.c b/net/sunrpc/auth_gss/gss_krb5_wrap.c index 1da52d1406fc..5040a460f1d9 100644 --- a/net/sunrpc/auth_gss/gss_krb5_wrap.c +++ b/net/sunrpc/auth_gss/gss_krb5_wrap.c | |||
@@ -489,7 +489,6 @@ static u32 | |||
489 | gss_unwrap_kerberos_v2(struct krb5_ctx *kctx, int offset, struct xdr_buf *buf) | 489 | gss_unwrap_kerberos_v2(struct krb5_ctx *kctx, int offset, struct xdr_buf *buf) |
490 | { | 490 | { |
491 | s32 now; | 491 | s32 now; |
492 | u64 seqnum; | ||
493 | u8 *ptr; | 492 | u8 *ptr; |
494 | u8 flags = 0x00; | 493 | u8 flags = 0x00; |
495 | u16 ec, rrc; | 494 | u16 ec, rrc; |
@@ -525,7 +524,10 @@ gss_unwrap_kerberos_v2(struct krb5_ctx *kctx, int offset, struct xdr_buf *buf) | |||
525 | ec = be16_to_cpup((__be16 *)(ptr + 4)); | 524 | ec = be16_to_cpup((__be16 *)(ptr + 4)); |
526 | rrc = be16_to_cpup((__be16 *)(ptr + 6)); | 525 | rrc = be16_to_cpup((__be16 *)(ptr + 6)); |
527 | 526 | ||
528 | seqnum = be64_to_cpup((__be64 *)(ptr + 8)); | 527 | /* |
528 | * NOTE: the sequence number at ptr + 8 is skipped, rpcsec_gss | ||
529 | * doesn't want it checked; see page 6 of rfc 2203. | ||
530 | */ | ||
529 | 531 | ||
530 | if (rrc != 0) | 532 | if (rrc != 0) |
531 | rotate_left(offset + 16, buf, rrc); | 533 | rotate_left(offset + 16, buf, rrc); |