• Ondřej Zajíček's avatar
    Nest: Prevent withdraws from propagation back to source protocol · e84c81b7
    Ondřej Zajíček authored
    The earlier fix loosen conditions for not running filters on old
    route when deciding about route propagation to a protocol to avoid
    issues with ghost routes in some race conditions.
    
    Unfortunately, the fix also caused back-propagation of withdraws. For
    regular updates, back-propagation is prevented in import_control hooks,
    but these are not called on withdraws. For them, import_control hooks
    are called on old routes instead, changing (old, NULL) notification
    to (NULL, NULL), which is ignored. By not calling export processing
    in some cases, the withdraw is not ignored and is back-propagated.
    
    This patch fixes that by contract conditions so the earlier fix is not
    applied to back-propagated updates.
    e84c81b7