From 5ec87d577f92effe27a62e965e02a6f9a40f81cc Mon Sep 17 00:00:00 2001 From: Adrian Vovk Date: Thu, 1 Feb 2024 11:43:48 -0500 Subject: homework: Accept volume key from keyring This bypasses authentication (i.e. user_record_authenticate) if the volume key was loaded from the keyring and no secret section is provided. This also changes Update() and Resize() to always try and load the volume key from the keyring. This makes the secret section optional for these methods while still letting them function (as long as the home area is active) --- man/org.freedesktop.home1.xml | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) (limited to 'man') diff --git a/man/org.freedesktop.home1.xml b/man/org.freedesktop.home1.xml index 6fe3bb3ce0..726d9d9832 100644 --- a/man/org.freedesktop.home1.xml +++ b/man/org.freedesktop.home1.xml @@ -320,10 +320,10 @@ node /org/freedesktop/home1 { interface. UpdateHome() updates a locally registered user record. Takes a fully - specified JSON user record as argument (including the secret section). A user with a - matching name and realm must be registered locally already, and the last change timestamp of the newly - supplied record must be newer than the previously existing user record. Note this operation updates the - user record only, it does not propagate passwords/authentication tokens from the user record to the + specified JSON user record as argument (possibly including the secret section). A user + with a matching name and realm must be registered locally already, and the last change timestamp of the + newly supplied record must be newer than the previously existing user record. Note this operation updates + the user record only, it does not propagate passwords/authentication tokens from the user record to the storage back-end, or resizes the storage back-end. Typically a home directory is first updated, and then the password of the underlying storage updated using ChangePasswordHome() as well as the storage resized using ResizeHome(). This method is equivalent to @@ -338,13 +338,12 @@ node /org/freedesktop/home1 { on the org.freedesktop.home1.Home interface. ResizeHome() resizes the storage associated with a user record. Takes a user - name, a disk size in bytes and a user record consisting only of the secret section - as argument. If the size is specified as UINT64_MAX the storage is resized to the - size already specified in the user record. Typically, if the user record is updated using + name, a disk size in bytes, and optionally a user record consisting only of the secret + section as arguments. If the size is specified as UINT64_MAX the storage is resized to + the size already specified in the user record. Typically, if the user record is updated using UpdateHome() above this is used to propagate the size configured there-in down to - the underlying storage back-end. This method is equivalent to - Resize() on the org.freedesktop.home1.Home - interface. + the underlying storage back-end. This method is equivalent to Resize() on the + org.freedesktop.home1.Home interface. ChangePasswordHome() changes the passwords/authentication tokens of a home directory. Takes a user name, and two JSON user record objects, each consisting only of the -- cgit v1.2.3