summaryrefslogtreecommitdiff
path: root/source3/nmbd
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2002-12-20 20:21:31 +0000
committerJeremy Allison <jra@samba.org>2002-12-20 20:21:31 +0000
commitef8bd7c4f7ae8192ea05db070962ecf0ff3615f3 (patch)
tree09644a4bc94784b1f097a7cfb6259dad6c33ae0e /source3/nmbd
parent8c93138982da3f9444bdef63cf48de37876866ed (diff)
downloadsamba-ef8bd7c4f7ae8192ea05db070962ecf0ff3615f3.tar.gz
samba-ef8bd7c4f7ae8192ea05db070962ecf0ff3615f3.tar.bz2
samba-ef8bd7c4f7ae8192ea05db070962ecf0ff3615f3.zip
Forward port the change to talloc_init() to make all talloc contexts
named. Ensure we can query them. Jeremy. (This used to be commit 09a218a9f6fb0bd922940467bf8500eb4f1bcf84)
Diffstat (limited to 'source3/nmbd')
-rw-r--r--source3/nmbd/nmbd.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/source3/nmbd/nmbd.c b/source3/nmbd/nmbd.c
index 5987d70a45..988127e431 100644
--- a/source3/nmbd/nmbd.c
+++ b/source3/nmbd/nmbd.c
@@ -95,6 +95,25 @@ static void sig_hup(int sig)
sys_select_signal();
}
+/*******************************************************************
+ Print out all talloc memory info.
+********************************************************************/
+
+void return_all_talloc_info(int msg_type, pid_t src_pid, void *buf, size_t len)
+{
+ TALLOC_CTX *ctx = talloc_init("info context");
+ char *info = NULL;
+
+ if (!ctx)
+ return;
+
+ info = talloc_describe_all(ctx);
+ if (info)
+ DEBUG(10,(info));
+ message_send_pid(src_pid, MSG_TALLOC_USAGE, info, info ? strlen(info) + 1 : 0, True);
+ talloc_destroy(ctx);
+}
+
#if DUMP_CORE
/**************************************************************************** **
Prepare to dump a core file - carefully!
@@ -682,6 +701,7 @@ static BOOL open_sockets(BOOL isdaemon, int port)
message_register(MSG_FORCE_ELECTION, nmbd_message_election);
message_register(MSG_WINS_NEW_ENTRY, nmbd_wins_new_entry);
message_register(MSG_SHUTDOWN, nmbd_terminate);
+ message_register(MSG_REQ_TALLOC_USAGE, return_all_talloc_info);
DEBUG( 3, ( "Opening sockets %d\n", global_nmb_port ) );