2022-06-27 09:34:18

by Tianjia Zhang

[permalink] [raw]
Subject: [PATCH v2 RESEND] sign-file: Fix confusing error messages

When an error occurs, use errx() instead of err() to display the
error message, because openssl has its own error record. When an
error occurs, errno will not be changed, while err() displays the
errno error message. It will cause confusion. For example, when
CMS_add1_signer() fails, the following message will appear:

sign-file: CMS_add1_signer: Success

errx() ignores errno and does not cause such issue.

Signed-off-by: Tianjia Zhang <[email protected]>
---
scripts/sign-file.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/sign-file.c b/scripts/sign-file.c
index 7434e9ea926e..598ef5465f82 100644
--- a/scripts/sign-file.c
+++ b/scripts/sign-file.c
@@ -114,7 +114,7 @@ static void drain_openssl_errors(void)
bool __cond = (cond); \
display_openssl_errors(__LINE__); \
if (__cond) { \
- err(1, fmt, ## __VA_ARGS__); \
+ errx(1, fmt, ## __VA_ARGS__); \
} \
} while(0)

--
2.24.3 (Apple Git-128)


2022-06-28 00:05:57

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH v2 RESEND] sign-file: Fix confusing error messages

On Mon, Jun 27, 2022 at 05:21:07PM +0800, Tianjia Zhang wrote:
> When an error occurs, use errx() instead of err() to display the
> error message, because openssl has its own error record. When an
> error occurs, errno will not be changed, while err() displays the
> errno error message. It will cause confusion. For example, when
> CMS_add1_signer() fails, the following message will appear:
>
> sign-file: CMS_add1_signer: Success
>
> errx() ignores errno and does not cause such issue.
>
> Signed-off-by: Tianjia Zhang <[email protected]>
> ---
> scripts/sign-file.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/scripts/sign-file.c b/scripts/sign-file.c
> index 7434e9ea926e..598ef5465f82 100644
> --- a/scripts/sign-file.c
> +++ b/scripts/sign-file.c
> @@ -114,7 +114,7 @@ static void drain_openssl_errors(void)
> bool __cond = (cond); \
> display_openssl_errors(__LINE__); \
> if (__cond) { \
> - err(1, fmt, ## __VA_ARGS__); \
> + errx(1, fmt, ## __VA_ARGS__); \
> } \
> } while(0)
>
> --
> 2.24.3 (Apple Git-128)
>


Reviewed-by: Jarkko Sakkinen <[email protected]>

BR, Jarkko