From c6c753271860d9bd0bcd8067a56d8aee08c1f423 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Tue, 10 Jun 2014 12:57:38 +0200 Subject: [PATCH] s3:smbd: move sconn->smb1.unix_info.* to xconn->smb1.unix_info.* This prepares the structures for multi-channel support. Signed-off-by: Stefan Metzmacher Reviewed-by: Volker Lendecke Reviewed-by: Michael Adam --- source3/smbd/globals.h | 14 +++++++------- source3/smbd/trans2.c | 22 +++++++++++----------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/source3/smbd/globals.h b/source3/smbd/globals.h index ba90d47aead..5ce0fd369f9 100644 --- a/source3/smbd/globals.h +++ b/source3/smbd/globals.h @@ -407,6 +407,13 @@ struct smbXsrv_connection { int max_send; } sessions; struct smb_signing_state *signing_state; + + struct { + uint16_t client_major; + uint16_t client_minor; + uint32_t client_cap_low; + uint32_t client_cap_high; + } unix_info; } smb1; struct { struct { @@ -756,13 +763,6 @@ struct smbd_server_connection { } oplocks; struct { - struct { - uint16_t client_major; - uint16_t client_minor; - uint32_t client_cap_low; - uint32_t client_cap_high; - } unix_info; - struct notify_mid_map *notify_mid_maps; struct { diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index ca0ef738f7d..e6cb64f2a15 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -3766,31 +3766,31 @@ static void call_trans2setfsinfo(connection_struct *conn, NT_STATUS_INVALID_PARAMETER); return; } - sconn->smb1.unix_info.client_major = SVAL(pdata,0); - sconn->smb1.unix_info.client_minor = SVAL(pdata,2); - sconn->smb1.unix_info.client_cap_low = IVAL(pdata,4); - sconn->smb1.unix_info.client_cap_high = IVAL(pdata,8); + xconn->smb1.unix_info.client_major = SVAL(pdata,0); + xconn->smb1.unix_info.client_minor = SVAL(pdata,2); + xconn->smb1.unix_info.client_cap_low = IVAL(pdata,4); + xconn->smb1.unix_info.client_cap_high = IVAL(pdata,8); /* Just print these values for now. */ DEBUG(10, ("call_trans2setfsinfo: set unix_info info. " "major = %u, minor = %u cap_low = 0x%x, " "cap_high = 0x%xn", - (unsigned int)sconn-> + (unsigned int)xconn-> smb1.unix_info.client_major, - (unsigned int)sconn-> + (unsigned int)xconn-> smb1.unix_info.client_minor, - (unsigned int)sconn-> + (unsigned int)xconn-> smb1.unix_info.client_cap_low, - (unsigned int)sconn-> + (unsigned int)xconn-> smb1.unix_info.client_cap_high)); /* Here is where we must switch to posix pathname processing... */ - if (sconn->smb1.unix_info.client_cap_low & CIFS_UNIX_POSIX_PATHNAMES_CAP) { + if (xconn->smb1.unix_info.client_cap_low & CIFS_UNIX_POSIX_PATHNAMES_CAP) { lp_set_posix_pathnames(); mangle_change_to_posix(); } - if ((sconn->smb1.unix_info.client_cap_low & CIFS_UNIX_FCNTL_LOCKS_CAP) && - !(sconn->smb1.unix_info.client_cap_low & CIFS_UNIX_POSIX_PATH_OPERATIONS_CAP)) { + if ((xconn->smb1.unix_info.client_cap_low & CIFS_UNIX_FCNTL_LOCKS_CAP) && + !(xconn->smb1.unix_info.client_cap_low & CIFS_UNIX_POSIX_PATH_OPERATIONS_CAP)) { /* Client that knows how to do posix locks, * but not posix open/mkdir operations. Set a * default type for read/write checks. */ -- 2.34.1