From 5e690fe70cd763dbc66ad3e313994c9a0271ca95 Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Thu, 28 May 2020 11:29:32 +1200 Subject: [PATCH] Avoid -Werror=address failure due to embedded NULL check in _mg_buffer_zero MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Seen with Ubuntu 18.04 gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04) mech/gss_krb5.c: In function ‘gss_krb5_ccache_name’: mech/gss_krb5.c:501:18: error: the address of ‘buffer’ will always evaluate as ‘true’ [-Werror=address] _mg_buffer_zero(&buffer); ^ mech/mech_locl.h:72:7: note: in definition of macro ‘_mg_buffer_zero’ if (buffer) { \ ^~~~~~ Signed-off-by: Andrew Bartlett --- lib/gssapi/mech/gss_krb5.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/lib/gssapi/mech/gss_krb5.c b/lib/gssapi/mech/gss_krb5.c index bd7f813cc..ee376229c 100644 --- a/lib/gssapi/mech/gss_krb5.c +++ b/lib/gssapi/mech/gss_krb5.c @@ -486,7 +486,7 @@ gss_krb5_ccache_name(OM_uint32 *minor_status, const char **out_name) { struct _gss_mech_switch *m; - gss_buffer_desc buffer; + gss_buffer_desc buffer = GSS_C_EMPTY_BUFFER; OM_uint32 junk; _gss_load_mech(); @@ -494,11 +494,9 @@ gss_krb5_ccache_name(OM_uint32 *minor_status, if (out_name) *out_name = NULL; + buffer.value = rk_UNCONST(name); if (name) { - buffer.value = rk_UNCONST(name); buffer.length = strlen(name); - } else { - _mg_buffer_zero(&buffer); } HEIM_TAILQ_FOREACH(m, &_gss_mechs, gm_link) {