[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] crypto: afalg: fix a NULL pointer dereference
From: |
Longpeng (Mike) |
Subject: |
Re: [Qemu-devel] [PATCH] crypto: afalg: fix a NULL pointer dereference |
Date: |
Tue, 7 Nov 2017 09:13:36 +0800 |
User-agent: |
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:11.0) Gecko/20120327 Thunderbird/11.0.1 |
On 2017/11/7 1:18, Stefan Hajnoczi wrote:
> On Mon, Nov 06, 2017 at 02:21:11PM +0800, Longpeng(Mike) wrote:
>> Test-crypto-hash calls qcrypto_hash_bytesv/digest/base64 with
>> errp=NULL, this will cause a NULL poniter deference if afalg_driver
>> doesn't support requested algos:
>> ret = qcrypto_hash_afalg_driver.hash_bytesv(alg, iov, niov,
>> result, resultlen,
>> errp);
>> if (ret == 0) {
>> return ret;
>> }
>>
>> error_free(*errp); // <--- here
>>
>> So we must check 'errp & *errp' before dereference.
>
> Only errp needs to be checked. It's okay to invoke error_free(NULL):
>
> void error_free(Error *err)
> {
> if (err) {
Ah yes, thanks for your note :)
I'll pick another approach to fix this bug.
--
Regards,
Longpeng(Mike)