Value 1 is signed 32-bit by default and left-shifting that by 31 is undefined. Fix this by marking the value as unsigned. Fixes: 64a0e09894e52 ("extensions: libxt_cluster: Add translation to nft") Signed-off-by: Phil Sutter <phil@xxxxxx> --- extensions/libxt_cluster.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extensions/libxt_cluster.c b/extensions/libxt_cluster.c index c9c35ee22e3df..d164bf6960166 100644 --- a/extensions/libxt_cluster.c +++ b/extensions/libxt_cluster.c @@ -156,7 +156,7 @@ static int cluster_xlate(struct xt_xlate *xl, xt_xlate_add(xl, "%s %u seed 0x%08x ", jhash_st, info->total_nodes, info->hash_seed); for (node = 0; node < 32; node++) { - if (info->node_mask & (1 << node)) { + if (info->node_mask & (1u << node)) { if (needs_set == 0) { xt_xlate_add(xl, "{ "); needs_set = 1; -- 2.24.0