From: Gregor Beck Date: Tue, 28 Aug 2012 07:31:59 +0000 (+0200) Subject: s3:smbcontrol: don't do stack_trace by connection but by server_id. X-Git-Tag: samba-4.0.0rc4~93 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=dda754dd10ee29f0c080376aac0a30d1baf6c455;p=thirdparty%2Fsamba.git s3:smbcontrol: don't do stack_trace by connection but by server_id. Inparticular use serverid_traverse_read instead of connections_foralli to enumerate processes. Signed-off-by: Stefan Metzmacher Signed-off-by: Michael Adam (cherry picked from commit b237bbc0d1afdfea3b6b6335854f92d6fe80a151) Signed-off-by: Stefan Metzmacher --- diff --git a/source3/utils/smbcontrol.c b/source3/utils/smbcontrol.c index c91c0f3d167..900ae9a9f04 100644 --- a/source3/utils/smbcontrol.c +++ b/source3/utils/smbcontrol.c @@ -321,12 +321,13 @@ cleanup: ptrace(PTRACE_DETACH, pid, NULL, NULL); } -static int stack_trace_connection(const struct connections_key *key, - const struct connections_data *crec, - void *priv) +static int stack_trace_server(const struct server_id *id, + uint32_t msg_flags, + void *priv) { - print_stack_trace(procid_to_pid(&crec->pid), (int *)priv); - + if (id->vnn == get_my_vnn()) { + print_stack_trace(procid_to_pid(&id->pid), (int *)priv); + } return 0; } @@ -353,7 +354,7 @@ static bool do_daemon_stack_trace(struct tevent_context *ev_ctx, */ print_stack_trace(dest, &count); } else { - connections_forall_read(stack_trace_connection, &count); + serverid_traverse_read(stack_trace_server, &count); } return True;