From e1bafa3574ccd56d9f8f8c1deb3d8fb9fd7025cc Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Mon, 2 Nov 2020 17:23:53 +0100 Subject: gpg: Allow setting notations with the empty string as value. * g10/misc.c (pct_expando): Catch special case of the empty string. Also map a NULL to the empty string. * g10/photoid.c (show_photos): Make an empty string used as command fail. -- This patch also fixes a segv when calling gpg wrongly like gpg -N \-foo@example.org GnuPG-bug-id: 5117 Signed-off-by: Werner Koch --- g10/misc.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'g10/misc.c') diff --git a/g10/misc.c b/g10/misc.c index c7107be06..a606d5364 100644 --- a/g10/misc.c +++ b/g10/misc.c @@ -922,6 +922,11 @@ pct_expando (ctrl_t ctrl, const char *string,struct expando_args *args) u32 pk_keyid[2]={0,0},sk_keyid[2]={0,0}; char *ret=NULL; + /* The parser below would return NULL for an empty string, thus we + * catch it here. Also catch NULL here. */ + if (!string || !*string) + return xstrdup (""); + if(args->pk) keyid_from_pk(args->pk,pk_keyid); -- cgit v1.2.3