]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
smbd: NDR_PRINT_DEBUG the vfs_default_durable_cookie in all relevant places
authorRalph Boehme <slow@samba.org>
Fri, 6 Jun 2025 15:01:22 +0000 (17:01 +0200)
committerRalph Boehme <slow@samba.org>
Fri, 6 Jun 2025 16:16:34 +0000 (16:16 +0000)
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15649
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15651

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
source3/smbd/durable.c

index 8e35e32538d358dfc81a85f85b2a3d3a8d0341a0..c13c8382f0f303e679714754e76ec6ece08002ee 100644 (file)
@@ -117,6 +117,11 @@ NTSTATUS vfs_default_durable_cookie(struct files_struct *fsp,
        cookie.stat_info.st_ex_blocks = fsp->fsp_name->st.st_ex_blocks;
        cookie.stat_info.st_ex_flags = fsp->fsp_name->st.st_ex_flags;
 
+       if (CHECK_DEBUGLVL(DBGLVL_DEBUG)) {
+               DBG_DEBUG("Fresh cookie\n");
+               NDR_PRINT_DEBUG(vfs_default_durable_cookie, &cookie);
+       }
+
        ndr_err = ndr_push_struct_blob(cookie_blob, mem_ctx, &cookie,
                        (ndr_push_flags_fn_t)ndr_push_vfs_default_durable_cookie);
        if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
@@ -182,6 +187,11 @@ NTSTATUS vfs_default_durable_disconnect(struct files_struct *fsp,
                return status;
        }
 
+       if (CHECK_DEBUGLVL(DBGLVL_DEBUG)) {
+               DBG_DEBUG("Old cookie\n");
+               NDR_PRINT_DEBUG(vfs_default_durable_cookie, &cookie);
+       }
+
        if (strcmp(cookie.magic, VFS_DEFAULT_DURABLE_COOKIE_MAGIC) != 0) {
                return NT_STATUS_INVALID_PARAMETER;
        }
@@ -279,6 +289,11 @@ NTSTATUS vfs_default_durable_disconnect(struct files_struct *fsp,
                return status;
        }
 
+       if (CHECK_DEBUGLVL(DBGLVL_DEBUG)) {
+               DBG_DEBUG("New cookie\n");
+               NDR_PRINT_DEBUG(vfs_default_durable_cookie, &cookie);
+       }
+
        status = fd_close(fsp);
        if (!NT_STATUS_IS_OK(status)) {
                data_blob_free(&new_cookie_blob);
@@ -817,6 +832,11 @@ NTSTATUS vfs_default_durable_reconnect(struct connection_struct *conn,
                return status;
        }
 
+       if (CHECK_DEBUGLVL(DBGLVL_DEBUG)) {
+               DBG_DEBUG("Cookie:\n");
+               NDR_PRINT_DEBUG(vfs_default_durable_cookie, &state.cookie);
+       }
+
        if (strcmp(state.cookie.magic, VFS_DEFAULT_DURABLE_COOKIE_MAGIC) != 0) {
                return NT_STATUS_INVALID_PARAMETER;
        }