gluon-radv-filterd: Fix use-after-free when best router expires
This commit is contained in:
parent
3667d6061d
commit
e4457f2f68
@ -312,6 +312,8 @@ static void expire_routers() {
|
|||||||
if (router->eol < now) {
|
if (router->eol < now) {
|
||||||
DEBUG_MSG("router " F_MAC " expired", F_MAC_VAR(router->src));
|
DEBUG_MSG("router " F_MAC " expired", F_MAC_VAR(router->src));
|
||||||
*prev_ptr = router->next;
|
*prev_ptr = router->next;
|
||||||
|
if (G.best_router == router)
|
||||||
|
G.best_router = NULL;
|
||||||
free(router);
|
free(router);
|
||||||
} else {
|
} else {
|
||||||
prev_ptr = &router->next;
|
prev_ptr = &router->next;
|
||||||
|
Loading…
Reference in New Issue
Block a user