Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp14399816pxu; Mon, 4 Jan 2021 23:59:04 -0800 (PST) X-Google-Smtp-Source: ABdhPJwmO0aEuk6WdmGqLikg/obv4/bM+7ClGJQ25lSh7K+/DEM1EMEa7YCjj7S3m6wB4PmzzYK5 X-Received: by 2002:a17:906:7118:: with SMTP id x24mr70046682ejj.333.1609833544839; Mon, 04 Jan 2021 23:59:04 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1609833544; cv=none; d=google.com; s=arc-20160816; b=U5gxT5b2zZVcYotCCR1iuzOrC1qAD/shmn1VjxcvB1xosC/aXgX35e82haVrUa//NU WIGKsh/hUJuoWOj+GGQhmEWNL4Fw0IJglulizJsaa7t78CdZ9y7MfhPirhjHx0N7hr6R qUi90h51OjCpBPQz9WMmf7BuFJzKUTIOVHTwqhPc7IkTuI6jGS1grr4icTrVOMnYPqeC G6HYO+AogmHRUK7eogTEcEGNkxH4CBbHxfiow+Q69XmIRBFCyRIWpYh+/d3IqNRckxjE bxpKk1Q4c/ctyjGi674ps+1d6TXqLj1d9pJXmIMEzSgP4z6hTRRgiam2kDQl6wZxdQff y7MQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to :mime-version:user-agent:date:message-id:from:references:cc:to :subject; bh=QpB6CLBbMSyJI5j1yy0pND7VlbhgVx5sHiljaVVmt1U=; b=xhJK/8Un/DpHgURBbaOXlWQmiivhAfBbr4tvQhC9Upx++mKEPMX9jQPOLmDmf08+p7 RL9slspoqfDnBsX28UqIcPi+liGKboFPqoCQAja1zSCEx8a1UWWoCRPOBq2G8mpWqIye ZnOMPLOSpcBTZimZpoaNNQFYQB/lrUcDyl6fmhCCfPYTT5KJPF+Pv6Xq5kFhazlL9ZhS QmQQ4B71S6WMFpg412pthsNqYORh1B6bJZwe4RgLe+eE/7t1Pj1AERacYK+w9SRzLBJ/ PZajGJ6Wte5vvKbNVTwDkFQKvI9jLU3Kq6ibjJiKe1cMrPWTSUKzWKIAKnh6iMsQ1RtX mM0Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id x9si31457495eje.134.2021.01.04.23.58.41; Mon, 04 Jan 2021 23:59:04 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726097AbhAEH6C (ORCPT + 99 others); Tue, 5 Jan 2021 02:58:02 -0500 Received: from szxga07-in.huawei.com ([45.249.212.35]:10388 "EHLO szxga07-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725535AbhAEH6C (ORCPT ); Tue, 5 Jan 2021 02:58:02 -0500 Received: from DGGEMS407-HUB.china.huawei.com (unknown [172.30.72.60]) by szxga07-in.huawei.com (SkyGuard) with ESMTP id 4D94ZK6mygz7Qby; Tue, 5 Jan 2021 15:56:25 +0800 (CST) Received: from [10.174.176.185] (10.174.176.185) by DGGEMS407-HUB.china.huawei.com (10.3.19.207) with Microsoft SMTP Server id 14.3.498.0; Tue, 5 Jan 2021 15:57:16 +0800 Subject: Re: [PATCH] ubifs: Fix memleak in ubifs_init_authentication To: Dinghao Liu , CC: Richard Weinberger , Sascha Hauer , , References: <20210105060340.7990-1-dinghao.liu@zju.edu.cn> From: Zhihao Cheng Message-ID: <98a5ebbe-f5ff-2454-1b7f-3fb2fad6c118@huawei.com> Date: Tue, 5 Jan 2021 15:57:15 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20210105060340.7990-1-dinghao.liu@zju.edu.cn> Content-Type: text/plain; charset="gbk"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.174.176.185] X-CFilter-Loop: Reflected Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ?? 2021/1/5 14:03, Dinghao Liu ะด??: > When crypto_shash_digestsize() fails, c->hmac_tfm > has not been freed before returning, which leads > to memleak. > > Fixes: 49525e5eecca5 ("ubifs: Add helper functions for authentication support") > Signed-off-by: Dinghao Liu Reviewed-by: Zhihao Cheng > --- > fs/ubifs/auth.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/ubifs/auth.c b/fs/ubifs/auth.c > index 51a7c8c2c3f0..e564d5ff8781 100644 > --- a/fs/ubifs/auth.c > +++ b/fs/ubifs/auth.c > @@ -327,7 +327,7 @@ int ubifs_init_authentication(struct ubifs_info *c) > ubifs_err(c, "hmac %s is bigger than maximum allowed hmac size (%d > %d)", > hmac_name, c->hmac_desc_len, UBIFS_HMAC_ARR_SZ); > err = -EINVAL; > - goto out_free_hash; > + goto out_free_hmac; > } > > err = crypto_shash_setkey(c->hmac_tfm, ukp->data, ukp->datalen); >