• Ondřej Zajíček's avatar
    Nest: Fix several issues with pflags · 6d1ae197
    Ondřej Zajíček authored
    There were some confusion about validity and usage of pflags, which
    caused incorrect usage after some flags from (now removed) protocol-
    specific area were moved to pflags.
    
    We state that pflags:
    
     - Are secondary data used by protocol-specific hooks
     - Can be changed on an existing route (in contrast to copy-on-write
       for primary data)
     - Are irrelevant for propagation (not propagated when changed)
     - Are specific to a routing table (not propagated by pipe)
    
    The patch did these fixes:
    
     - Do not compare pflags in rte_same(), as they may keep cached values
       like BGP_REF_STALE, causing spurious propagation.
    
     - Initialize pflags to zero in rte_get_temp(), avoid initialization in
       protocol code, fixing at least two forgotten initializations (krt
       and one case in babel).
    
     - Improve documentation about pflags
    6d1ae197