Skip to content
  • Christian Boltz's avatar
    Replace existing_profiles & fix minitools for named profiles · aa328cb0
    Christian Boltz authored
    Technical stuff first:
    
    Replace existing_profiles (a dict with the filenames for both active and
    inactive profiles) with active_profiles and extra_profiles which are
    ProfileList()s and store the active profiles and those in the extra
    directory separately. Thanks to ProfileList, now also the relation
    between attachments and filenames is easily available.
    
    Also replace all usage of existing_profiles with active_profiles and
    extra_profiles, and adjust it to the ProfileList syntax everywhere.
    
    With this change, several bugs in aa-complain and the other minitools
    get fixed:
    - aa-complain etc. never found profiles that have a profile name
      (the attachment wasn't checked)
    - even if the profile name was given as parameter to aa-complain, it
      first did "which $parameter" so it never matched on named profiles
    - profile names with alternations (without attachment specification)
      also never matched because the old code didn't use AARE.
    
    References: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=882047#92
    (search for "As usual" ;-)
    
    Just for completeness - the matching still doesn't honor/expand
    variables in the profile name.
    
    (cherry picked from commit 4d722f18397dd35b208548d4c841b955c41ac7ce)
    aa328cb0