summaryrefslogtreecommitdiffstats
path: root/usr.sbin/rtadvd
diff options
context:
space:
mode:
authorhrs <hrs@FreeBSD.org>2013-08-27 11:50:33 +0000
committerhrs <hrs@FreeBSD.org>2013-08-27 11:50:33 +0000
commit9a7e8d3357b941e823ab05a1bf8cfc06c76faa7a (patch)
tree4aa782b650cd9398ac95e60630e9e0ac15bb6441 /usr.sbin/rtadvd
parentdfd07d8821f7b5e2045ff827d8650c7c266e014c (diff)
downloadFreeBSD-src-9a7e8d3357b941e823ab05a1bf8cfc06c76faa7a.zip
FreeBSD-src-9a7e8d3357b941e823ab05a1bf8cfc06c76faa7a.tar.gz
Fix a crash when reloading the configuration file.
Spotted by: des
Diffstat (limited to 'usr.sbin/rtadvd')
-rw-r--r--usr.sbin/rtadvd/config.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/usr.sbin/rtadvd/config.c b/usr.sbin/rtadvd/config.c
index 02a241d..f0e11a3 100644
--- a/usr.sbin/rtadvd/config.c
+++ b/usr.sbin/rtadvd/config.c
@@ -296,10 +296,8 @@ rm_rainfo(struct rainfo *rai)
if (rai->rai_ra_data != NULL)
free(rai->rai_ra_data);
- while ((pfx = TAILQ_FIRST(&rai->rai_prefix)) != NULL) {
- TAILQ_REMOVE(&rai->rai_prefix, pfx, pfx_next);
- free(pfx);
- }
+ while ((pfx = TAILQ_FIRST(&rai->rai_prefix)) != NULL)
+ delete_prefix(pfx);
while ((sol = TAILQ_FIRST(&rai->rai_soliciter)) != NULL) {
TAILQ_REMOVE(&rai->rai_soliciter, sol, sol_next);
free(sol);
OpenPOWER on IntegriCloud