Message ID | 20230302164652.83571-2-eric.snowberg@oracle.com (mailing list archive) |
---|---|
State | Not Applicable |
Delegated to: | Herbert Xu |
Headers | show |
Series | Add CA enforcement keyring restrictions | expand |
On Thu, 2023-03-02 at 11:46 -0500, Eric Snowberg wrote: > The kernel test robot reports undefined reference to > public_key_verify_signature when CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE > is > not defined. Create a static version in this case and return -EINVAL. > > Fixes: db6c43bd2132 ("crypto: KEYS: convert public key and digsig > asym to the akcipher api") > Reported-by: kernel test robot <lkp@intel.com> > Signed-off-by: Eric Snowberg <eric.snowberg@oracle.com> > Reviewed-by: Mimi Zohar <zohar@linux.ibm.com> > Reviewed-by: Petr Vorel <pvorel@suse.cz> > --- > include/crypto/public_key.h | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/include/crypto/public_key.h > b/include/crypto/public_key.h > index 68f7aa2a7e55..6d61695e1cde 100644 > --- a/include/crypto/public_key.h > +++ b/include/crypto/public_key.h > @@ -80,7 +80,16 @@ extern int create_signature(struct > kernel_pkey_params *, const void *, void *); > extern int verify_signature(const struct key *, > const struct public_key_signature *); > > +#if IS_REACHABLE(CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE) > int public_key_verify_signature(const struct public_key *pkey, > const struct public_key_signature > *sig); > +#else > +static inline > +int public_key_verify_signature(const struct public_key *pkey, > + const struct public_key_signature > *sig) > +{ > + return -EINVAL; > +} > +#endif > > #endif /* _LINUX_PUBLIC_KEY_H */ Reviewed-by: Jarkko Sakkinen <jarkko@kernel.org> BR, Jarkko
diff --git a/include/crypto/public_key.h b/include/crypto/public_key.h index 68f7aa2a7e55..6d61695e1cde 100644 --- a/include/crypto/public_key.h +++ b/include/crypto/public_key.h @@ -80,7 +80,16 @@ extern int create_signature(struct kernel_pkey_params *, const void *, void *); extern int verify_signature(const struct key *, const struct public_key_signature *); +#if IS_REACHABLE(CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE) int public_key_verify_signature(const struct public_key *pkey, const struct public_key_signature *sig); +#else +static inline +int public_key_verify_signature(const struct public_key *pkey, + const struct public_key_signature *sig) +{ + return -EINVAL; +} +#endif #endif /* _LINUX_PUBLIC_KEY_H */