On Wed, Mar 11, 2015 at 04:41:07PM -0300, Renato Westphal wrote:
> ---
>  ldpe.c | 11 ++++++-----
>  1 file changed, 6 insertions(+), 5 deletions(-)
> 
> diff --git a/ldpe.c b/ldpe.c
> index f643272..d422603 100644
> --- a/ldpe.c
> +++ b/ldpe.c
> @@ -414,17 +414,18 @@ ldpe_dispatch_main(int fd, short event, void *bula)
>                               break;
>  
>                       LIST_REMOVE(if_addr, global_entry);
> +                     iface = if_lookup(kaddr->ifindex);
> +                     if (iface) {
> +                             LIST_REMOVE(if_addr, iface_entry);
> +                             if_fsm(iface, IF_EVT_DELADDR);
> +                     }
> +
>                       RB_FOREACH(nbr, nbr_id_head, &nbrs_by_id) {
>                               if (nbr->state != NBR_STA_OPER)
>                                       continue;
>                               send_address_withdraw(nbr, if_addr);
>                       }
>  
> -                     iface = if_lookup(kaddr->ifindex);
> -                     if (iface) {
> -                             LIST_REMOVE(if_addr, iface_entry);
> -                             if_fsm(iface, IF_EVT_DELADDR);
> -                     }
>                       free(if_addr);
>                       break;
>               case IMSG_RECONF_CONF:
> -- 
> 1.9.1
> 

Makes sense. OK claudio@

-- 
:wq Claudio

Reply via email to