From: Tuong Lien Date: Mon, 30 Dec 2019 03:03:33 +0000 (+0700) Subject: tipc: fix clang warning in tipc/node.c X-Git-Tag: v5.5.0~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d5391e186f04214315a5a80797c78e50ad9f5271;p=thirdparty%2Fiproute2.git tipc: fix clang warning in tipc/node.c When building tipc with clang, the following warning is found: tipc CC bearer.o CC cmdl.o CC link.o CC media.o CC misc.o CC msg.o CC nametable.o CC node.o node.c:182:24: warning: field 'key' with variable sized type 'struct tipc_aead_key' not at the end of a struct or class is a GNU extension [-Wgnu-variable-sized-type-not-at-end] struct tipc_aead_key key; This commit fixes it by putting the memory area allocated for the user input key along with the variable-sized 'key' structure in the 'union' form instead. Fixes: 24bee3bf9752 ("tipc: add new commands to set TIPC AEAD key") Reported-by: Stephen Hemminger Signed-off-by: Tuong Lien Signed-off-by: Stephen Hemminger --- diff --git a/tipc/node.c b/tipc/node.c index 6c796bfba..ffdaeaeab 100644 --- a/tipc/node.c +++ b/tipc/node.c @@ -179,8 +179,10 @@ static int cmd_node_set_key(struct nlmsghdr *nlh, const struct cmd *cmd, struct cmdl *cmdl, void *data) { struct { - struct tipc_aead_key key; - char mem[TIPC_AEAD_KEYLEN_MAX + 1]; + union { + struct tipc_aead_key key; + char mem[TIPC_AEAD_KEY_SIZE_MAX]; + }; } input = {}; struct opt opts[] = { { "algname", OPT_KEYVAL, NULL },