• Roi Azarzar's avatar
    NFSv4.2: Fix detection of "Proxying of Times" server support · 615e693b
    Roi Azarzar authored
    According to draft-ietf-nfsv4-delstid-07:
       If a server informs the client via the fattr4_open_arguments
       attribute that it supports
       OPEN_ARGS_SHARE_ACCESS_WANT_DELEG_TIMESTAMPS and it returns a valid
       delegation stateid for an OPEN operation which sets the
       OPEN4_SHARE_ACCESS_WANT_DELEG_TIMESTAMPS flag, then it MUST query the
       client via a CB_GETATTR for the fattr4_time_deleg_access (see
       Section 5.2) attribute and fattr4_time_deleg_modify attribute (see
       Section 5.2).
    
    Thus, we should look that the server supports proxying of times via
    OPEN4_SHARE_ACCESS_WANT_DELEG_TIMESTAMPS.
    
    We want to be extra pedantic and continue to check that FATTR4_TIME_DELEG_ACCESS
    and FATTR4_TIME_DELEG_MODIFY are set. The server needs to expose both for the
    client to correctly detect "Proxying of Times" support.
    Signed-off-by: default avatarRoi Azarzar <roi.azarzar@vastdata.com>
    Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
    Fixes: dcb3c20f ("NFSv4: Add a capability for delegated attributes")
    Signed-off-by: default avatarAnna Schumaker <anna.schumaker@oracle.com>
    615e693b
nfs4proc.c 294 KB