From 318eb4b62d4ba6af48f8d12199302ec46eb98508 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Mon, 21 Jul 2014 18:58:52 +0200 Subject: [PATCH] s3:smbd: add smbXsrv_connection_dbg() This is similar to fsp_fnum_dbg() and fsp_str_dbg(). Signed-off-by: Stefan Metzmacher Reviewed-by: Volker Lendecke Reviewed-by: Michael Adam --- source3/smbd/globals.h | 2 ++ source3/smbd/process.c | 23 +++++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/source3/smbd/globals.h b/source3/smbd/globals.h index 70148fb76ae..3b9882d2117 100644 --- a/source3/smbd/globals.h +++ b/source3/smbd/globals.h @@ -389,6 +389,8 @@ struct smbXsrv_connection { struct smbXsrv_open_table *open_table; }; +const char *smbXsrv_connection_dbg(const struct smbXsrv_connection *xconn); + NTSTATUS smbXsrv_version_global_init(const struct server_id *server_id); uint32_t smbXsrv_version_global_current(void); diff --git a/source3/smbd/process.c b/source3/smbd/process.c index 127bbb3e390..d1074e21d9f 100644 --- a/source3/smbd/process.c +++ b/source3/smbd/process.c @@ -3485,6 +3485,29 @@ static void smbd_tevent_trace_callback(enum tevent_trace_point point, } } +/** + * Create a debug string for the connection + * + * This is allocated to talloc_tos() or a string constant + * in certain corner cases. The returned string should + * hence not be free'd directly but only via the talloc stack. + */ +const char *smbXsrv_connection_dbg(const struct smbXsrv_connection *xconn) +{ + const char *ret; + + /* + * TODO: this can be improved later + * maybe including the client guid or more + */ + ret = tsocket_address_string(xconn->remote_address, talloc_tos()); + if (ret == NULL) { + return ""; + } + + return ret; +} + /**************************************************************************** Process commands from the client ****************************************************************************/