diff --git a/src/libcharon/plugins/forecast/forecast_listener.c b/src/libcharon/plugins/forecast/forecast_listener.c index 3d000bc48..b70945717 100644 --- a/src/libcharon/plugins/forecast/forecast_listener.c +++ b/src/libcharon/plugins/forecast/forecast_listener.c @@ -122,7 +122,7 @@ static bool ts2in(traffic_selector_t *ts, { memcpy(&addr->s_addr, net->get_address(net).ptr, 4); net->destroy(net); - mask->s_addr = htonl(0xffffffffU << (32 - bits)); + mask->s_addr = bits ? htonl(0xffffffffU << (32 - bits)) : 0; return TRUE; } return FALSE;