]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
vfs_preopen: introduce "preopen" debug class
authorStefan Metzmacher <metze@samba.org>
Tue, 8 Jun 2021 08:56:22 +0000 (10:56 +0200)
committerStefan Metzmacher <metze@samba.org>
Thu, 1 Jul 2021 13:02:31 +0000 (13:02 +0000)
It might be useful to change the level/location
of debug messages specific to this module.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
docs-xml/smbdotconf/logging/loglevel.xml
source3/modules/vfs_preopen.c

index c1fcfe451c65db09e96fdb98ab2ffd191c20f9cb..434c5d06832980e0a4ac5bc19d8c4faa370a0006 100644 (file)
@@ -68,6 +68,7 @@
        <listitem><para><parameter moreinfo="none">fruit</parameter></para></listitem>
        <listitem><para><parameter moreinfo="none">full_audit</parameter></para></listitem>
        <listitem><para><parameter moreinfo="none">media_harmony</parameter></para></listitem>
+       <listitem><para><parameter moreinfo="none">preopen</parameter></para></listitem>
        <listitem><para><parameter moreinfo="none">recycle</parameter></para></listitem>
        <listitem><para><parameter moreinfo="none">shadow_copy</parameter></para></listitem>
        <listitem><para><parameter moreinfo="none">shadow_copy</parameter></para></listitem>
index 1549fda0b5e703dbbba1d0126a61380392349388..c54daaf44c86c33b0e34dcdecd05fea89be794ac 100644 (file)
 #include "lib/util/smb_strtox.h"
 #include "lib/global_contexts.h"
 
+static int vfs_preopen_debug_level = DBGC_VFS;
+
+#undef DBGC_CLASS
+#define DBGC_CLASS vfs_preopen_debug_level
+
 struct preopen_state;
 
 struct preopen_helper {
@@ -469,6 +474,23 @@ static struct vfs_fn_pointers vfs_preopen_fns = {
 static_decl_vfs;
 NTSTATUS vfs_preopen_init(TALLOC_CTX *ctx)
 {
-       return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
-                               "preopen", &vfs_preopen_fns);
+       NTSTATUS status;
+
+       status = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
+                                 "preopen",
+                                 &vfs_preopen_fns);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+
+       vfs_preopen_debug_level = debug_add_class("preopen");
+       if (vfs_preopen_debug_level == -1) {
+               vfs_preopen_debug_level = DBGC_VFS;
+               DBG_ERR("Couldn't register custom debugging class!\n");
+       } else {
+               DBG_DEBUG("Debug class number of 'preopen': %d\n",
+                         vfs_preopen_debug_level);
+       }
+
+       return NT_STATUS_OK;
 }