diff options
author | Peter Meerwald-Stadler <pmeerw@pmeerw.net> | 2016-10-15 12:35:08 +0200 |
---|---|---|
committer | Daniel Wagner <wagi@monom.org> | 2016-10-21 08:50:16 +0200 |
commit | 46aac0c6dd18c96853a8a38b7e559b526fbaec68 (patch) | |
tree | 1ffa4a229fd59635d5c333aec87e0ae3e3dd3b79 /gdhcp | |
parent | f8355acff2e6a2a64a9503d76544f483902e9c3b (diff) | |
download | connman-46aac0c6dd18c96853a8a38b7e559b526fbaec68.tar.gz |
gdhcp: Fix potential NULL deref
packet6 is not set if dhcpv6_recv_l3_packet() returns an error
CID 1352473
Diffstat (limited to 'gdhcp')
-rw-r--r-- | gdhcp/client.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gdhcp/client.c b/gdhcp/client.c index e9e38e71..af1b953d 100644 --- a/gdhcp/client.c +++ b/gdhcp/client.c @@ -2289,6 +2289,8 @@ static gboolean listener_event(GIOChannel *channel, GIOCondition condition, if (dhcp_client->type == G_DHCP_IPV6) { re = dhcpv6_recv_l3_packet(&packet6, buf, sizeof(buf), dhcp_client->listener_sockfd); + if (re < 0) + return TRUE; pkt_len = re; pkt = packet6; xid = packet6->transaction_id[0] << 16 | |