From 91565996a07ef47523ee8c1a2692377306346a22 Mon Sep 17 00:00:00 2001 From: Trond Myklebust Date: Sat, 7 Feb 2004 16:30:11 +0100 Subject: [PATCH] RPCSEC_GSS: Make it safe to share crypto tfms among multiple threads. --- net/sunrpc/auth_gss/gss_krb5_crypto.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/net/sunrpc/auth_gss/gss_krb5_crypto.c b/net/sunrpc/auth_gss/gss_krb5_crypto.c index 82e78e12f95ca..c3a8f548a4821 100644 --- a/net/sunrpc/auth_gss/gss_krb5_crypto.c +++ b/net/sunrpc/auth_gss/gss_krb5_crypto.c @@ -71,14 +71,13 @@ krb5_encrypt( if (iv) memcpy(local_iv, iv, crypto_tfm_alg_ivsize(tfm)); - crypto_cipher_set_iv(tfm, local_iv, crypto_tfm_alg_ivsize(tfm)); memcpy(out, in, length); sg[0].page = virt_to_page(out); sg[0].offset = offset_in_page(out); sg[0].length = length; - ret = crypto_cipher_encrypt(tfm, sg, sg, length); + ret = crypto_cipher_encrypt_iv(tfm, sg, sg, length, local_iv); out: dprintk("gss_k5encrypt returns %d\n",ret); @@ -110,14 +109,13 @@ krb5_decrypt( } if (iv) memcpy(local_iv,iv, crypto_tfm_alg_ivsize(tfm)); - crypto_cipher_set_iv(tfm, local_iv, crypto_tfm_alg_blocksize(tfm)); memcpy(out, in, length); sg[0].page = virt_to_page(out); sg[0].offset = offset_in_page(out); sg[0].length = length; - ret = crypto_cipher_decrypt(tfm, sg, sg, length); + ret = crypto_cipher_decrypt_iv(tfm, sg, sg, length, local_iv); out: dprintk("gss_k5decrypt returns %d\n",ret); -- 2.53.0