Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp14869664ybl; Mon, 30 Dec 2019 19:25:24 -0800 (PST) X-Google-Smtp-Source: APXvYqxCN4tDoVQO3mxqZMyu0FToQ/IW8XUk7KmCvDjuM2zrCq1FNlv6hyW9m6S603t3K1og6mnz X-Received: by 2002:a9d:65cf:: with SMTP id z15mr80632549oth.238.1577762724310; Mon, 30 Dec 2019 19:25:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1577762724; cv=none; d=google.com; s=arc-20160816; b=U8afaov9XIKYKA1asKVv25Qm7KfeKJx24BeVqs4muMMvh2NHX6FoHhQyycDazUwBUR c260nsQ4Wor6cQtOuBXgYhwLbBq2L7QUEHIS+cS1dNXzYcov4I5DjkqQ1SzBX7u9tXmd 2f2wksWUYOfAHue7wJuhlSjGQVwQszDcMJg0D9xUHFkGtGvcvC9NdSaB9tvK2JcCUNo8 ixByyTkDZGgOEfKOCTK+lTBX9Ds0lrh9WWdC5fgcTlrBIV+TcdCM2V0yQsctNKBXHgRM KDL2qY8TbWJznDToy5gSNBcy6Ruwjw438SdvwlaHQkleGAK74cBliLtpbXZntqN2XA90 v9tw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=gvIHCMCchpE+EG3tX0ViUsK8zJpTCmgSUzMX1Bc7j20=; b=Q1T8rDOC3FCfBzEwX1yTNUxZ2YMuNh/xS/kxchfyZKzEv+yZv16qHyLEBUX9IqU8NB Uw9oIPY+VaLr/0CgWLcix++aoqMcWS+tSkEJpEkJOygZMh+4VcBaCpdMP5R8mtrXiSUd OwxDkotkLR3t4xfoJM6RyerAA52x56qiXjZtyEhKVyJun6XIzNMN7BMYz6Cm9Fb78Wpq P9GkAJqaiFz9f9463jL8Hp7sGoc7PNQ5gzKiC//SdL6LNUxc9NJuuGBDsfyx4uw6rreH gQMbDsFbjbaBXfZ7ljp6VoIOKrrL1Om/mNutuNYHpb54vN99h9HOKoxlFtWKnWDyCoeC UvyA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=NOFK4Rj8; spf=pass (google.com: best guess record for domain of linux-crypto-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f190si22560534oig.229.2019.12.30.19.25.13; Mon, 30 Dec 2019 19:25:24 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-crypto-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=NOFK4Rj8; spf=pass (google.com: best guess record for domain of linux-crypto-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726388AbfLaDUz (ORCPT + 99 others); Mon, 30 Dec 2019 22:20:55 -0500 Received: from mail.kernel.org ([198.145.29.99]:59168 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725813AbfLaDUz (ORCPT ); Mon, 30 Dec 2019 22:20:55 -0500 Received: from zzz.tds (h75-100-12-111.burkwi.broadband.dynamic.tds.net [75.100.12.111]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 6F01920748 for ; Tue, 31 Dec 2019 03:20:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1577762454; bh=Ym52PuGdKcvcb/SXwku4G3+tvPGZHkPzG/UhdznB2Tc=; h=From:To:Subject:Date:In-Reply-To:References:From; b=NOFK4Rj8aaICLhfXsQfmdRPBVJNM7rt6nQrELP0tc4ueZ/TA3j4CWMr0guHc4Cdm6 ev5seFVDZxBCX6FEy1cjujsq26HknJbVIj+cc54oE8IWRqT/a8FUVQ2Prm43TwDnI1 E+xZ1RWXEef+sdiRYZnnS0PxGK416WJZm7BX2JuY= From: Eric Biggers To: linux-crypto@vger.kernel.org Subject: [PATCH 3/8] crypto: atmel-sha - fix error handling when setting hmac key Date: Mon, 30 Dec 2019 21:19:33 -0600 Message-Id: <20191231031938.241705-4-ebiggers@kernel.org> X-Mailer: git-send-email 2.24.1 In-Reply-To: <20191231031938.241705-1-ebiggers@kernel.org> References: <20191231031938.241705-1-ebiggers@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-crypto-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org From: Eric Biggers HMAC keys can be of any length, and atmel_sha_hmac_key_set() can only fail due to -ENOMEM. But atmel_sha_hmac_setkey() incorrectly treated any error as a "bad key length" error. Fix it to correctly propagate the -ENOMEM error code and not set any tfm result flags. Fixes: 81d8750b2b59 ("crypto: atmel-sha - add support to hmac(shaX)") Cc: Nicolas Ferre Cc: Alexandre Belloni Cc: Ludovic Desroches Signed-off-by: Eric Biggers --- drivers/crypto/atmel-sha.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/drivers/crypto/atmel-sha.c b/drivers/crypto/atmel-sha.c index e8e4200c1ab3..d3bcd14201c2 100644 --- a/drivers/crypto/atmel-sha.c +++ b/drivers/crypto/atmel-sha.c @@ -1853,12 +1853,7 @@ static int atmel_sha_hmac_setkey(struct crypto_ahash *tfm, const u8 *key, { struct atmel_sha_hmac_ctx *hmac = crypto_ahash_ctx(tfm); - if (atmel_sha_hmac_key_set(&hmac->hkey, key, keylen)) { - crypto_ahash_set_flags(tfm, CRYPTO_TFM_RES_BAD_KEY_LEN); - return -EINVAL; - } - - return 0; + return atmel_sha_hmac_key_set(&hmac->hkey, key, keylen); } static int atmel_sha_hmac_init(struct ahash_request *req) -- 2.24.1