The branch main has been updated by olce:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=4ae70c3ea498e06676040ee99254d261e29ae82e

commit 4ae70c3ea498e06676040ee99254d261e29ae82e
Author:     Olivier Certner <[email protected]>
AuthorDate: 2025-10-13 15:13:09 +0000
Commit:     Olivier Certner <[email protected]>
CommitDate: 2025-10-14 12:21:49 +0000

    sys/rpc: UNIX auth: Support XDR_FREE
    
    xdr_authunix_parms() does not allocate any auxiliary memory, so we can
    simply support XDR_FREE by just returning TRUE.
    
    Although there are currently no callers passing XDR_FREE, this makes us
    immune to such a change in a way that doesn't cost more but is more
    constructive than a mere KASSERT().
    
    Suggested by:   rmacklem
    MFC after:      2 days
    Sponsored by:   The FreeBSD Foundation
---
 sys/rpc/authunix_prot.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/sys/rpc/authunix_prot.c b/sys/rpc/authunix_prot.c
index c1a9f90bbe28..0274a713ff2b 100644
--- a/sys/rpc/authunix_prot.c
+++ b/sys/rpc/authunix_prot.c
@@ -61,6 +61,10 @@ xdr_authunix_parms(XDR *xdrs, uint32_t *time, struct xucred 
*cred)
        uint32_t junk;
        char hostbuf[MAXHOSTNAMELEN];
 
+       if (xdrs->x_op == XDR_FREE)
+               /* This function does not allocate auxiliary memory. */
+               return (TRUE);
+
        if (xdrs->x_op == XDR_ENCODE) {
                getcredhostname(NULL, hostbuf, sizeof(hostbuf));
                namelen = strlen(hostbuf);

Reply via email to