From f8c8b0d9c599ba070a7abf2698950495200fc467 Mon Sep 17 00:00:00 2001 From: Vadim Yanitskiy Date: Wed, 11 May 2022 14:10:27 +0300 Subject: [PATCH] smscb: fix meaningless condition in etws_primary_to_bts() Found by GCC 12.1.0: smscb.c: In function 'etws_primary_to_bts': smscb.c:537:13: warning: the comparison will always evaluate as 'true' for the address of 'warning_sec_info' will never be NULL [-Waddress] 537 | if (wrepl->u.emergency.warning_sec_info) { | ^~~~~ In file included from smscb.c:31: /usr/local/include/osmocom/gsm/cbsp.h:99:33: note: 'warning_sec_info' declared here 99 | uint8_t warning_sec_info[50]; | ^~~~~~~~~~~~~~~~ Indeed, address of &warning_sec_info[0] is always not NULL. Change-Id: Id369bb3676ba279bafc234378fbe21dbc7b0614b --- src/osmo-bsc/smscb.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/osmo-bsc/smscb.c b/src/osmo-bsc/smscb.c index 4c7110f2b..3a06697cf 100644 --- a/src/osmo-bsc/smscb.c +++ b/src/osmo-bsc/smscb.c @@ -566,11 +566,9 @@ static int etws_primary_to_bts(struct gsm_bts *bts, const struct osmo_cbsp_write bes->input.msg_id = wrepl->msg_id; bes->input.serial_nr = wrepl->new_serial_nr; bes->input.warn_type = wrepl->u.emergency.warning_type; - if (wrepl->u.emergency.warning_sec_info) { - bes->input.sec_info = talloc_named_const(bts, ETWS_SEC_INFO_SIZE, "etws_sec_info"); - if (bes->input.sec_info) - memcpy(bes->input.sec_info, wrepl->u.emergency.warning_sec_info, ETWS_SEC_INFO_SIZE); - } + bes->input.sec_info = talloc_named_const(bts, ETWS_SEC_INFO_SIZE, "etws_sec_info"); + if (bes->input.sec_info) + memcpy(bes->input.sec_info, wrepl->u.emergency.warning_sec_info, ETWS_SEC_INFO_SIZE); /* generate the encoded ETWS PN */ gen_etws_primary_notification(bes->primary, bes->input.serial_nr, bes->input.msg_id,