[SLOF] [PATCH 4/5] ipv6: Fix NULL pointer dereference in ip6addr_add()
Thomas Huth
thuth at redhat.com
Tue May 3 05:55:30 AEST 2016
When ip6addr_add() is called for the first time, both the first_ip6
and the last_ip6 pointer are not initialized yet, i.e. contain NULL.
So writing to "last_ip6->next" is a bad idea here. Fix it so that
this value is only written when the function is not called for the
first time.
Signed-off-by: Thomas Huth <thuth at redhat.com>
---
clients/net-snk/app/netlib/ipv6.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/clients/net-snk/app/netlib/ipv6.c b/clients/net-snk/app/netlib/ipv6.c
index 220fd36..6aa1ea3 100644
--- a/clients/net-snk/app/netlib/ipv6.c
+++ b/clients/net-snk/app/netlib/ipv6.c
@@ -330,7 +330,8 @@ int8_t ip6addr_add(struct ip6addr_list_entry *new_address)
if (first_ip6 == NULL)
first_ip6 = new_address;
- last_ip6->next = new_address;
+ else
+ last_ip6->next = new_address;
last_ip6 = new_address;
last_ip6->next = NULL;
--
1.8.3.1
More information about the SLOF
mailing list