[PATCH 1/2] crypto: use SM3 instead of SM3_256
Tianjia Zhang
tianjia.zhang at linux.alibaba.com
Tue Oct 19 09:39:49 UTC 2021
Hi Jarkko,
On 10/18/21 9:41 PM, Jarkko Sakkinen wrote:
> On Mon, 2021-10-18 at 09:32 -0400, James Bottomley wrote:
>> On Mon, 2021-10-18 at 16:27 +0300, Jarkko Sakkinen wrote:
>>> On Mon, 2021-10-18 at 09:05 -0400, James Bottomley wrote:
>>>> On Sat, 2021-10-09 at 21:08 +0800, Tianjia Zhang wrote:
>>>> [...]
>>>>> diff --git a/include/uapi/linux/hash_info.h
>>>>> b/include/uapi/linux/hash_info.h
>>>>> index 74a8609fcb4d..1355525dd4aa 100644
>>>>> --- a/include/uapi/linux/hash_info.h
>>>>> +++ b/include/uapi/linux/hash_info.h
>>>>> @@ -32,7 +32,7 @@ enum hash_algo {
>>>>> HASH_ALGO_TGR_128,
>>>>> HASH_ALGO_TGR_160,
>>>>> HASH_ALGO_TGR_192,
>>>>> - HASH_ALGO_SM3_256,
>>>>> + HASH_ALGO_SM3,
>>>>> HASH_ALGO_STREEBOG_256,
>>>>> HASH_ALGO_STREEBOG_512,
>>>>> HASH_ALGO__LAST
>>>>
>>>> This is another one you can't do: all headers in UAPI are exports
>>>> to userspace and the definitions constitute an ABI. If you simply
>>>> do a rename, every userspace program that uses the current
>>>> definition will immediately break on compile. You could add
>>>> HASH_ALGO_SM3, but you can't remove HASH_ALGO_SM3_256
>>>>
>>>> James
>>>
>>> So: shouldn't then also the old symbol continue to work also
>>> semantically?
>>
>> Yes, that's the point: you can add a new definition ... in this case an
>> alias for the old one, but you can't remove a definition that's been
>> previously exported.
>
> Thanks, this of course obvious :-) I forgot temporarily that crypto
> has uapi interface. Tianjia, this patch set break production systems,
> so no chance we would ever merge it in this form.
>
> Why not just do this:
>
> ...
> HASH_ALGO_SM3_256,
> HASH_ALOG_SM3 = HASH_ALOG_SM_256,
> ...
>
> There is not good reason to mod the implementation because both symbols
> are kept.
>
> /Jarkko
>
Very good suggestion, I will do this in the next version patch. Maybe
this is more appropriate:
HASH_ALGO_SM3,
HASH_ALGO_SM3_256 = HASH_ALGO_SM3,
Best regards,
Tianjia
More information about the Linux-security-module-archive
mailing list