diff options
author | Tobias Brunner <tobias@strongswan.org> | 2017-06-20 12:16:56 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2017-07-05 10:21:25 +0200 |
commit | fd0a7b47959ef537beb9670f4f02cf2d29858cbd (patch) | |
tree | 0bee3806f954eda028207689bfb9718eb235ee0a /src/libcharon | |
parent | ef6b710f192d7ffedaab9af008ccdf46d2a9b070 (diff) | |
download | strongswan-fd0a7b47959ef537beb9670f4f02cf2d29858cbd.tar.bz2 strongswan-fd0a7b47959ef537beb9670f4f02cf2d29858cbd.tar.xz |
kernel-pfroute: Make sure there is a netmask when enumerating subnets
Diffstat (limited to 'src/libcharon')
-rw-r--r-- | src/libcharon/plugins/kernel_pfroute/kernel_pfroute_net.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/libcharon/plugins/kernel_pfroute/kernel_pfroute_net.c b/src/libcharon/plugins/kernel_pfroute/kernel_pfroute_net.c index 6d06ee179..da7ae472d 100644 --- a/src/libcharon/plugins/kernel_pfroute/kernel_pfroute_net.c +++ b/src/libcharon/plugins/kernel_pfroute/kernel_pfroute_net.c @@ -1831,7 +1831,7 @@ METHOD(enumerator_t, enumerate_subnets, bool, for (; this->current < this->buf + this->len; this->current += rtm->rtm_msglen) { - struct sockaddr *netmask; + struct sockaddr *netmask = NULL; uint8_t netbits = 0; rtm = (struct rt_msghdr*)this->current; @@ -1864,7 +1864,7 @@ METHOD(enumerator_t, enumerate_subnets, bool, this->ifname = strndup(sdl->sdl_data, sdl->sdl_nlen); } } - if (this->net) + if (this->net && netmask) { netbits = sockaddr_to_netmask(netmask, this->net); } |