2024-01-07 14:00:41

by Clay Chang

[permalink] [raw]
Subject: [PATCH] KEYS: include header for EINVAL definition

From: Clay Chang <[email protected]>

This patch includes linux/errno.h to address the issue of 'EINVAL' being
undeclared.

Signed-off-by: Clay Chang <[email protected]>
---
include/crypto/public_key.h | 1 +
1 file changed, 1 insertion(+)

diff --git a/include/crypto/public_key.h b/include/crypto/public_key.h
index 462f8a34cdf8..b7f308977c84 100644
--- a/include/crypto/public_key.h
+++ b/include/crypto/public_key.h
@@ -10,6 +10,7 @@
#ifndef _LINUX_PUBLIC_KEY_H
#define _LINUX_PUBLIC_KEY_H

+#include <linux/errno.h>
#include <linux/keyctl.h>
#include <linux/oid_registry.h>

--
2.34.1



2024-01-08 14:24:59

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH] KEYS: include header for EINVAL definition

On Sun Jan 7, 2024 at 3:28 PM EET, wrote:
> From: Clay Chang <[email protected]>
>
> This patch includes linux/errno.h to address the issue of 'EINVAL' being
> undeclared.
>
> Signed-off-by: Clay Chang <[email protected]>
> ---
> include/crypto/public_key.h | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/include/crypto/public_key.h b/include/crypto/public_key.h
> index 462f8a34cdf8..b7f308977c84 100644
> --- a/include/crypto/public_key.h
> +++ b/include/crypto/public_key.h
> @@ -10,6 +10,7 @@
> #ifndef _LINUX_PUBLIC_KEY_H
> #define _LINUX_PUBLIC_KEY_H
>
> +#include <linux/errno.h>
> #include <linux/keyctl.h>
> #include <linux/oid_registry.h>
>

Please provide evidence that issue exist (applies for any possible kernel issue).

BR, Jarkko

2024-01-09 02:10:41

by Clay Chang

[permalink] [raw]
Subject: Re: [PATCH] KEYS: include header for EINVAL definition

Hi Jarkko,

The issue was found when crypto/public_key.h was included, but CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE was not enabled. If CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE was not enabled, the public_key_verify_signature simply returned -EINVAL, which was not declared without linux/errno.h being included.

Thanks,
Clay

On 2024/1/8 10:24 PM, Jarkko Sakkinen wrote:
> On Sun Jan 7, 2024 at 3:28 PM EET, wrote:
>> From: Clay Chang <[email protected]>
>>
>> This patch includes linux/errno.h to address the issue of 'EINVAL' being
>> undeclared.
>>
>> Signed-off-by: Clay Chang <[email protected]>
>> ---
>> include/crypto/public_key.h | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/include/crypto/public_key.h b/include/crypto/public_key.h
>> index 462f8a34cdf8..b7f308977c84 100644
>> --- a/include/crypto/public_key.h
>> +++ b/include/crypto/public_key.h
>> @@ -10,6 +10,7 @@
>> #ifndef _LINUX_PUBLIC_KEY_H
>> #define _LINUX_PUBLIC_KEY_H
>>
>> +#include <linux/errno.h>
>> #include <linux/keyctl.h>
>> #include <linux/oid_registry.h>
>>
>
> Please provide evidence that issue exist (applies for any possible kernel issue).
>
> BR, Jarkko

2024-01-10 19:55:16

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH] KEYS: include header for EINVAL definition

On Tue Jan 9, 2024 at 4:10 AM EET, Clay Chang wrote:
> Hi Jarkko,
>
> The issue was found when crypto/public_key.h was included, but
> CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE was not enabled. If
> CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE was not enabled, the
> public_key_verify_signature simply returned -EINVAL, which was not
> declared without linux/errno.h being included.
>
> Thanks,
> Clay

Do you have .config to verify this?

BR, Jarkko

2024-01-12 06:00:45

by Clay Chang

[permalink] [raw]
Subject: Re: [PATCH] KEYS: include header for EINVAL definition

Hi Jarkko,

Yes, I have. I am working on an OpenBMC project and the kernel .config was generated by merging several config fragments. In one experiment where the CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE was not presented, I got a EINVAL undeclared compilation error.

Do you want me to show the full .config here?

Thanks,
Clay

On 2024/1/11 3:54 AM, Jarkko Sakkinen wrote:
> On Tue Jan 9, 2024 at 4:10 AM EET, Clay Chang wrote:
>> Hi Jarkko,
>>
>> The issue was found when crypto/public_key.h was included, but
>> CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE was not enabled. If
>> CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE was not enabled, the
>> public_key_verify_signature simply returned -EINVAL, which was not
>> declared without linux/errno.h being included.
>>
>> Thanks,
>> Clay
>
> Do you have .config to verify this?
>
> BR, Jarkko

2024-01-13 20:47:10

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH] KEYS: include header for EINVAL definition

On Fri Jan 12, 2024 at 7:59 AM EET, Clay Chang wrote:
> Hi Jarkko,
>
> Yes, I have. I am working on an OpenBMC project and the kernel .config was generated by merging several config fragments. In one experiment where the CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE was not presented, I got a EINVAL undeclared compilation error.
>
> Do you want me to show the full .config here?

Well the problem with the patch is that it does not *prove*
that there is issue.

So you evidence in the commit message that there is bug in
the first place and which config options cause it. And it
it must be testable with latest mainline (not by downstream
project).

BR, Jarkko

2024-01-26 09:57:27

by Herbert Xu

[permalink] [raw]
Subject: Re: [PATCH] KEYS: include header for EINVAL definition

On Sun, Jan 07, 2024 at 09:28:42PM +0800, [email protected] wrote:
> From: Clay Chang <[email protected]>
>
> This patch includes linux/errno.h to address the issue of 'EINVAL' being
> undeclared.
>
> Signed-off-by: Clay Chang <[email protected]>
> ---
> include/crypto/public_key.h | 1 +
> 1 file changed, 1 insertion(+)

Patch applied. Thanks.
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt