Skip to content
  • Shishir Jaiswal's avatar
    1293f9bd
    Bug#28339014 - KEYRING MIGRATION FAILS WHEN USER ONLY · 1293f9bd
    Shishir Jaiswal authored
                   HAVE READ ACCESS TO THE SOURCE KEYRING
    
    DESCRIPTION
    ===========
    If you attempt to perform a keyring migration with an
    operating system user that does not have access to write to
    the source keyring file, then the migration fails.
    
    ANALYSIS
    ========
    Currently the keyring file is openeded in RW|C mode, and is
    agnostic of its type (source or dest). So when it doesn't
    have Write privilege on the file, the migration fails. In
    such a case migration should be allowed even if the user
    has got Read privilege on the file.
    
    FIX
    ===
    Introducing a new internal variable that corresponds to if
    the file has to be opened in Read_only or RW mode. This
    variable is set in Migrate_keyring::init() only for source
    plugin (thus for dest it's value defaults to 0) and passed
    along with other migration params.
    
    On reading this value as set,
    check_if_keyring_file_can_be_opened_or_created() and
    get_serialized_object() open the file in Read only mode,
    else in RW|C mode
    1293f9bd
    Bug#28339014 - KEYRING MIGRATION FAILS WHEN USER ONLY
    Shishir Jaiswal authored
                   HAVE READ ACCESS TO THE SOURCE KEYRING
    
    DESCRIPTION
    ===========
    If you attempt to perform a keyring migration with an
    operating system user that does not have access to write to
    the source keyring file, then the migration fails.
    
    ANALYSIS
    ========
    Currently the keyring file is openeded in RW|C mode, and is
    agnostic of its type (source or dest). So when it doesn't
    have Write privilege on the file, the migration fails. In
    such a case migration should be allowed even if the user
    has got Read privilege on the file.
    
    FIX
    ===
    Introducing a new internal variable that corresponds to if
    the file has to be opened in Read_only or RW mode. This
    variable is set in Migrate_keyring::init() only for source
    plugin (thus for dest it's value defaults to 0) and passed
    along with other migration params.
    
    On reading this value as set,
    check_if_keyring_file_can_be_opened_or_created() and
    get_serialized_object() open the file in Read only mode,
    else in RW|C mode
Loading