]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
smbd: Make sys_disk_free() take a fsp
authorVolker Lendecke <vl@samba.org>
Tue, 27 Jan 2026 12:38:56 +0000 (13:38 +0100)
committerAnoop C S <anoopcs@samba.org>
Sun, 15 Feb 2026 10:42:33 +0000 (10:42 +0000)
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
source3/smbd/dfree.c

index e7f4ecc8acca0af917ba436182dd739d330a951c..420fdce08dfcadb19430b1dbd848c43805bb733e 100644 (file)
@@ -123,12 +123,13 @@ static bool handle_dfree_command(connection_struct *conn,
        return true;
 }
 
-static uint64_t sys_disk_free(connection_struct *conn,
-                             struct smb_filename *fname,
+static uint64_t sys_disk_free(struct files_struct *fsp,
                              uint64_t *bsize,
                              uint64_t *dfree,
                              uint64_t *dsize)
 {
+       struct connection_struct *conn = fsp->conn;
+       struct smb_filename *fname = fsp->fsp_name;
        uint64_t dfree_retval;
        uint64_t dfree_q = 0;
        uint64_t bsize_q = 0;
@@ -233,7 +234,7 @@ uint64_t get_dfree_info(struct files_struct *fsp,
        bool found;
 
        if (!dfree_cache_time) {
-               return sys_disk_free(conn, fname, bsize, dfree, dsize);
+               return sys_disk_free(fsp, bsize, dfree, dsize);
        }
 
        len = full_path_tos(conn->connectpath,
@@ -293,7 +294,7 @@ uint64_t get_dfree_info(struct files_struct *fsp,
                goto out;
        }
 
-       dfree_ret = sys_disk_free(conn, fname, bsize, dfree, dsize);
+       dfree_ret = sys_disk_free(fsp, bsize, dfree, dsize);
 
        if (dfree_ret == (uint64_t)-1) {
                /* Don't cache bad data. */