From d18379fa009ddabfea53cb4095ff84574c699f37 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Thu, 8 Jun 2017 16:08:54 +0200 Subject: [PATCH] Revert "s3:libsmb: Fix printing the session setup information" This reverts commit b6f87af427a1fa2bd397668d9f14cb0cf8ec5015. A different fix will follow. BUG: https://bugzilla.samba.org/show_bug.cgi?id=12824 Signed-off-by: Andreas Schneider Reviewed-by: Stefan Metzmacher --- source3/libsmb/cliconnect.c | 3 +-- source3/libsmb/clidfs.c | 32 +++++++------------------------- source3/libsmb/clientgen.c | 13 +++++++++++++ source3/torture/masktest.c | 4 +--- 4 files changed, 22 insertions(+), 30 deletions(-) diff --git a/source3/libsmb/cliconnect.c b/source3/libsmb/cliconnect.c index 08627226629..a28a5824dc2 100644 --- a/source3/libsmb/cliconnect.c +++ b/source3/libsmb/cliconnect.c @@ -1122,8 +1122,7 @@ static void cli_session_setup_gensec_ready(struct tevent_req *req) server_domain = gensec_ntlmssp_server_domain( state->auth_generic->gensec_security); - if ((state->cli->server_domain == NULL || - state->cli->server_domain[0] == '\0') && server_domain != NULL) { + if (state->cli->server_domain[0] == '\0' && server_domain != NULL) { TALLOC_FREE(state->cli->server_domain); state->cli->server_domain = talloc_strdup(state->cli, server_domain); diff --git a/source3/libsmb/clidfs.c b/source3/libsmb/clidfs.c index 09e21ac7f8d..c477d7c6a46 100644 --- a/source3/libsmb/clidfs.c +++ b/source3/libsmb/clidfs.c @@ -259,31 +259,13 @@ static NTSTATUS do_connect(TALLOC_CTX *ctx, return status; } - if (show_sessetup) { - const char *server_os = "unknown"; - const char *server_type = "unknown"; - bool do_print = false; - - if (c->server_os != NULL && c->server_os[0] != '\0') { - server_os = c->server_os; - do_print = true; - } - if (c->server_type != NULL && c->server_type[0] != '\0') { - server_type = c->server_type; - do_print = true; - } - - if (c->server_domain != NULL && c->server_domain[0] != '\0') { - DEBUG(0, ("Domain=[%s] OS=[%s] Server=[%s]\n", - c->server_domain, - server_os, - server_type)); - } else { - if (do_print) { - DEBUG(0, ("OS=[%s] Server=[%s]\n", - server_os, - server_type)); - } + if ( show_sessetup ) { + if (*c->server_domain) { + DEBUG(0,("Domain=[%s] OS=[%s] Server=[%s]\n", + c->server_domain,c->server_os,c->server_type)); + } else if (*c->server_os || *c->server_type) { + DEBUG(0,("OS=[%s] Server=[%s]\n", + c->server_os,c->server_type)); } } DEBUG(4,(" session setup ok\n")); diff --git a/source3/libsmb/clientgen.c b/source3/libsmb/clientgen.c index 2c0b8c5f081..bc5c1b1ce3c 100644 --- a/source3/libsmb/clientgen.c +++ b/source3/libsmb/clientgen.c @@ -104,6 +104,19 @@ struct cli_state *cli_state_create(TALLOC_CTX *mem_ctx, return NULL; } + cli->server_domain = talloc_strdup(cli, ""); + if (!cli->server_domain) { + goto error; + } + cli->server_os = talloc_strdup(cli, ""); + if (!cli->server_os) { + goto error; + } + cli->server_type = talloc_strdup(cli, ""); + if (!cli->server_type) { + goto error; + } + cli->dfs_mountpoint = talloc_strdup(cli, ""); if (!cli->dfs_mountpoint) { goto error; diff --git a/source3/torture/masktest.c b/source3/torture/masktest.c index 57607b069a8..95e0b04b040 100644 --- a/source3/torture/masktest.c +++ b/source3/torture/masktest.c @@ -212,9 +212,7 @@ static struct cli_state *connect_one(char *share) * mode to turn these on/off ? JRA. */ - if (c->server_domain != NULL || - c->server_os != NULL || - c->server_type != NULL) + if (*c->server_domain || *c->server_os || *c->server_type) DEBUG(1,("Domain=[%s] OS=[%s] Server=[%s]\n", c->server_domain,c->server_os,c->server_type)); -- 2.34.1