diff options
author | Florian Obser <florian@cvs.openbsd.org> | 2022-07-23 09:00:11 +0000 |
---|---|---|
committer | Florian Obser <florian@cvs.openbsd.org> | 2022-07-23 09:00:11 +0000 |
commit | 6b85c3072ff2f0a435b5a40a7f1896ce889e97ad (patch) | |
tree | d8f779eb36ef4cec9c2dd9bfd5074469805af673 /sbin/slaacd/engine.c | |
parent | 88696294a05b5740346f27289623df4034221273 (diff) |
Delete addresses when interface is no longer autoconf.
This brings it in line with dhcpleased(8) as well as what we do for
the default route and DNS proposals.
I missed this when I rewrote the state machine to match
dhcpleased(8).
Diffstat (limited to 'sbin/slaacd/engine.c')
-rw-r--r-- | sbin/slaacd/engine.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sbin/slaacd/engine.c b/sbin/slaacd/engine.c index f12a8db5385..1412d4d2405 100644 --- a/sbin/slaacd/engine.c +++ b/sbin/slaacd/engine.c @@ -1,4 +1,4 @@ -/* $OpenBSD: engine.c,v 1.81 2022/07/12 16:54:59 florian Exp $ */ +/* $OpenBSD: engine.c,v 1.82 2022/07/23 09:00:10 florian Exp $ */ /* * Copyright (c) 2017 Florian Obser <florian@openbsd.org> @@ -2207,6 +2207,8 @@ free_address_proposal(struct address_proposal *addr_proposal) LIST_REMOVE(addr_proposal, entries); evtimer_del(&addr_proposal->timer); switch (addr_proposal->state) { + case PROPOSAL_CONFIGURED: + case PROPOSAL_NEARLY_EXPIRED: case PROPOSAL_STALE: withdraw_addr(addr_proposal); break; |