tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: swcrypto is initialized twice
Hi,
On 2017/06/01 17:37, Paul Goyette wrote:
> On Thu, 1 Jun 2017, Kengo NAKAHARA wrote:
>> Currently(after cryptosoft.c:r1.44), software encryption driver
>> (swcrypto0) is initialized twice, that is, swcr_init() is called
>> below two call paths.
>> (1) swcrypto_attach()
>> <= called from module initialization
>> (2) swcryptoattach()
>> <= called from autoconf(9) initialization
>>
>> This is wrong as it leaks struct cryptocap in crypto_drivers[].
>>
>> Hmm, compare with pseudo interfaces like gif(4), It seems the
>> swcryptoattach() should do nothing. So, I think bellow patch
>> is required.
>> ====================
>> --- a/sys/opencrypto/cryptosoft.c
>> +++ b/sys/opencrypto/cryptosoft.c
>> @@ -1325,8 +1325,10 @@ swcr_init(void)
>> void
>> swcryptoattach(int num)
>> {
>> -
>> - swcr_init();
>> + /*
>> + * Nothing to do here, initialization is handled by the
>> + * module initialization code in swcrypto_attach() below).
>> + */
>> }
>>
>> void swcrypto_attach(device_t, device_t, void *);
>> ====================
>>
>> Could you comment this patch?
>> If there is no objection, I will commit this patch within a few days.
>
> Yes, I believe your analysis and patch are both correct.
Thank you for your reviewing! I commit the patch as cryptosoft.c:r1.51.
Thanks,
--
//////////////////////////////////////////////////////////////////////
Internet Initiative Japan Inc.
Device Engineering Section,
IoT Platform Development Department,
Network Division,
Technology Unit
Kengo NAKAHARA <k-nakahara%iij.ad.jp@localhost>
Home |
Main Index |
Thread Index |
Old Index