-
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
Shishir Jaiswal authoredHAVE 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