Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'nfsd-6.3-4' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux

Pull nfsd fix from Chuck Lever:

- Fix a crash when using NFS with krb5p

* tag 'nfsd-6.3-4' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux:
SUNRPC: Fix a crash in gss_krb5_checksum()

+5 -5
+5 -5
net/sunrpc/auth_gss/gss_krb5_crypto.c
··· 353 353 err = crypto_ahash_final(req); 354 354 if (err) 355 355 goto out_free_ahash; 356 - memcpy(cksumout->data, checksumdata, cksumout->len); 356 + 357 + memcpy(cksumout->data, checksumdata, 358 + min_t(int, cksumout->len, crypto_ahash_digestsize(tfm))); 357 359 358 360 out_free_ahash: 359 361 ahash_request_free(req); ··· 811 809 buf->tail[0].iov_len += GSS_KRB5_TOK_HDR_LEN; 812 810 buf->len += GSS_KRB5_TOK_HDR_LEN; 813 811 814 - /* Do the HMAC */ 815 - hmac.len = GSS_KRB5_MAX_CKSUM_LEN; 812 + hmac.len = kctx->gk5e->cksumlength; 816 813 hmac.data = buf->tail[0].iov_base + buf->tail[0].iov_len; 817 814 818 815 /* ··· 874 873 if (ret) 875 874 goto out_err; 876 875 877 - /* Calculate our hmac over the plaintext data */ 878 - our_hmac_obj.len = sizeof(our_hmac); 876 + our_hmac_obj.len = kctx->gk5e->cksumlength; 879 877 our_hmac_obj.data = our_hmac; 880 878 ret = gss_krb5_checksum(ahash, NULL, 0, &subbuf, 0, &our_hmac_obj); 881 879 if (ret)