• Thomas Markwalder's avatar
    [#9,!11] Correct v4/dhclient fallback lease behavior · 3f29cfc1
    Thomas Markwalder authored
    Added a release note.
    
    client/clparse.c
        parse_client_lease_statement () - now calls new discard_duplicate()
        function. This avoids discarding config file leases that match
        lease file leases
    
    client/dhclient.c
        discard_duplicate() - new function that removes a lease from a list
        of leases that matches a given lease, both by address and source
    
        add_to_tail() - new function that adds a given lease to the end of
        a linked list of leases, removing any duplicates from the list first.
    
        bind_lease() - if the active lease being replaced by the new
        lease is a fallback lease, then we move it the end of
        client->leases, rather than discard it.
    
        state_panic() -  now calls add_to_tail() to move the
        active lease that just failed to the end of client->leases.
        This ensures that we keep only the most recent versions of
        dynamic leases.
    3f29cfc1