OpenAFS Master Repository branch, openafs-stable-1_8_x, updated. openafs-stable-1_8_13_2-45-gef0b3fc

Gerrit Code Review gerrit@openafs.org
Thu, 22 May 2025 16:52:32 -0400


The following commit has been merged in the openafs-stable-1_8_x branch:
commit ef0b3fc53c69b54f1c941c942b0d8079f6bf8952
Author: Michael Meffie <mmeffie@sinenomine.net>
Date:   Fri Sep 15 14:51:55 2023 -0400

    fsint: Move RXAFS_StoreACL function declaration
    
    Commit 8f1eba056fd (CVE-2018-7168 RXAFS_StoreACL deprecate 134 introduce
    164) added RXAFS opcode 164 as RXAFS_StoreACL. This change sensibly
    added the new opcode 164 between opcodes 163 (RXAFS_DFSSymlink) and 220
    (RXAFS_FsCmd) in the afsint.xg file.
    
    Unfortunately, the rx rpc call statistics reported over the wire by
    RXSTATS_RetrieveProcessRPCStats() are given by function index (not
    opcode).  The function index is determined by the function position in
    the xg file when rxgen generates the RPC stubs.  This means following
    RXAFS RPCs stats are off-by-one in the returned stats block:
    
    RXAFS_FsCmd
    RXAFS_InlineBulkStatus
    RXAFS_GiveUpAllCallBacks
    RXAFS_GetCapabilities
    RXAFS_CallBackRxConnAddr
    RXAFS_GetStatistics64
    
    Since the RPC call statistics are reported by function index and not
    opcode, rxstat clients (e.g., rxstat_get_process) report incorrect stats
    when there is a mismatch between the rxstat client and the fileserver.
    
    Move the declaration of RXAFS_StoreACL (164) to be after the last
    function in afsint.xg file, so the function indices generated by rxgen
    are not changed for existing functions and the next available function
    index is assigned to the new RXAFS_StoreACL (164) RPC.
    
    Note: The RXSTATS_RetrieveProcessRPCStats() RPC has a parameter to
    indicate the stat client version, which could be used in the future to
    support an improved interface, since relying on the function indices is
    not very robust.
    
    Reviewed-on: https://gerrit.openafs.org/15572
    Reviewed-by: Andrew Deason <adeason@sinenomine.net>
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Cheyenne Wills <cwills@sinenomine.net>
    Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
    Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
    (cherry picked from commit 23333c98badd32d5276c571f3106f2de46711b1a)
    
    Change-Id: I80b399052a2634c834aff009820c221c480f6f5b
    Reviewed-on: https://gerrit.openafs.org/16230
    Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
    Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
    Tested-by: BuildBot <buildbot@rampaginggeek.com>

 src/fsint/afsint.xg | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

-- 
OpenAFS Master Repository