The branch, v4-12-test has been updated
       via  50c2ea410b4 s3: smbd: Add call to conn_setup_case_options() to 
create_conn_struct_as_root().
       via  d89ccfc1c7d s3: smbd: Factor out setting up case parameters for a 
share to a function - conn_setup_case_options().
       via  7ec45672a30 build: remove smbd_conn private library
      from  552548ff00e libcli/smb: allow unexpected padding in SMB2 IOCTL 
responses

https://git.samba.org/?p=samba.git;a=shortlog;h=v4-12-test


- Log -----------------------------------------------------------------
commit 50c2ea410b4acd5a311d3509c2554ae8e035dd1c
Author: Jeremy Allison <j...@samba.org>
Date:   Tue Jan 12 11:44:44 2021 -0800

    s3: smbd: Add call to conn_setup_case_options() to 
create_conn_struct_as_root().
    
    Ensures temporary DFS share doesn't leave the case parameters set
    as zero (i.e.:
    
    conn->case sensitive = 0
    conn->share_case_preserve = 0
    and default case is lower
    
    which can cause problems doing a DFS_GET_REFERRALS request).
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=14612
    
    Signed-off-by: Jeremy Allison <j...@samba.org>
    Reviewed-by: Anoop C S <anoo...@samba.org>
    
    Autobuild-User(master): Anoop C S <anoo...@samba.org>
    Autobuild-Date(master): Wed Jan 13 18:14:31 UTC 2021 on sn-devel-184
    
    (cherry picked from commit 39ce73321093a0a5e25f574d0d32d7f88892de46)
    
    Autobuild-User(v4-12-test): Karolin Seeger <ksee...@samba.org>
    Autobuild-Date(v4-12-test): Wed Jan 20 11:29:51 UTC 2021 on sn-devel-184

commit d89ccfc1c7d23b6e2a3bc80c1acd189000ca7cbd
Author: Jeremy Allison <j...@samba.org>
Date:   Tue Jan 12 11:39:51 2021 -0800

    s3: smbd: Factor out setting up case parameters for a share to a function - 
conn_setup_case_options().
    
    Will allow it to be reused in the msdfs temporary share code.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=14612
    
    Signed-off-by: Jeremy Allison <j...@samba.org>
    Reviewed-by: Anoop C S <anoo...@samba.org>
    (cherry picked from commit ab7700177c2badbf8ed649985be8029223b6e946)

commit 7ec45672a30a428c3162275f5d47245a012ce81a
Author: Ralph Boehme <s...@samba.org>
Date:   Sun Sep 27 08:52:58 2020 +0200

    build: remove smbd_conn private library
    
    This is not needed anymore since 6822baa2920f30374ec84363497d97e24f359fab.
    
    Needed here for:
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=14612
    
    Signed-off-by: Ralph Boehme <s...@samba.org>
    Reviewed-by: Jeremy Allison <j...@samba.org>
    (cherry picked from commit 80ac7fa7c4c728bef4f947872c090fec35fb26f0)

-----------------------------------------------------------------------

Summary of changes:
 source3/smbd/conn.c    | 19 +++++++++++++++++++
 source3/smbd/msdfs.c   |  2 ++
 source3/smbd/proto.h   |  1 +
 source3/smbd/service.c | 11 +----------
 source3/wscript_build  |  7 +------
 5 files changed, 24 insertions(+), 16 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/smbd/conn.c b/source3/smbd/conn.c
index 6d9ea419f8d..6a94d344f12 100644
--- a/source3/smbd/conn.c
+++ b/source3/smbd/conn.c
@@ -228,3 +228,22 @@ void conn_free(connection_struct *conn)
 
        conn_free_internal(conn);
 }
+
+/*
+ * Correctly initialize a share with case options.
+ */
+void conn_setup_case_options(connection_struct *conn)
+{
+       int snum = conn->params->service;
+
+       if (lp_case_sensitive(snum) == Auto) {
+               /* We will be setting this per packet. Set to be case
+               * insensitive for now. */
+               conn->case_sensitive = false;
+       } else {
+               conn->case_sensitive = (bool)lp_case_sensitive(snum);
+       }
+
+       conn->case_preserve = lp_preserve_case(snum);
+       conn->short_case_preserve = lp_short_preserve_case(snum);
+}
diff --git a/source3/smbd/msdfs.c b/source3/smbd/msdfs.c
index c57866f7939..e234dc2ebd7 100644
--- a/source3/smbd/msdfs.c
+++ b/source3/smbd/msdfs.c
@@ -317,6 +317,8 @@ static NTSTATUS create_conn_struct_as_root(TALLOC_CTX *ctx,
                vfs_user = get_current_username();
        }
 
+       conn_setup_case_options(conn);
+
        set_conn_connectpath(conn, connpath);
 
        /*
diff --git a/source3/smbd/proto.h b/source3/smbd/proto.h
index 2ea90405b47..206406a9fe9 100644
--- a/source3/smbd/proto.h
+++ b/source3/smbd/proto.h
@@ -154,6 +154,7 @@ connection_struct *conn_new(struct smbd_server_connection 
*sconn);
 bool conn_idle_all(struct smbd_server_connection *sconn, time_t t);
 void conn_clear_vuid_caches(struct smbd_server_connection *sconn, uint64_t 
vuid);
 void conn_free(connection_struct *conn);
+void conn_setup_case_options(connection_struct *conn);
 void conn_force_tdis(
        struct smbd_server_connection *sconn,
        bool (*check_fn)(struct connection_struct *conn,
diff --git a/source3/smbd/service.c b/source3/smbd/service.c
index 03125a30dad..bf5e474ddff 100644
--- a/source3/smbd/service.c
+++ b/source3/smbd/service.c
@@ -569,16 +569,7 @@ static NTSTATUS make_connection_snum(struct 
smbXsrv_connection *xconn,
                      ( lp_enable_asu_support() && strequal(dev,"ADMIN$")) );
 
        /* Case options for the share. */
-       if (lp_case_sensitive(snum) == Auto) {
-               /* We will be setting this per packet. Set to be case
-                * insensitive for now. */
-               conn->case_sensitive = False;
-       } else {
-               conn->case_sensitive = (bool)lp_case_sensitive(snum);
-       }
-
-       conn->case_preserve = lp_preserve_case(snum);
-       conn->short_case_preserve = lp_short_preserve_case(snum);
+       conn_setup_case_options(conn);
 
        conn->encrypt_level = lp_smb_encrypt(snum);
        if (conn->encrypt_level > SMB_SIGNING_OFF) {
diff --git a/source3/wscript_build b/source3/wscript_build
index 10d9f71ae76..d2793cacb92 100644
--- a/source3/wscript_build
+++ b/source3/wscript_build
@@ -606,11 +606,6 @@ bld.SAMBA3_LIBRARY('smbconf',
                    pc_files=[],
                    vnum='0')
 
-bld.SAMBA3_LIBRARY('smbd_conn',
-                   source='smbd/conn.c',
-                   deps='samba3-util samba-util',
-                   private_library=True)
-
 bld.SAMBA3_SUBSYSTEM('sysquotas',
                      source='''
                         lib/sysquotas.c
@@ -725,6 +720,7 @@ bld.SAMBA3_LIBRARY('smbd_base',
                           smbd/notify_msg.c
                           smbd/build_options.c
                           smbd/smb1_utils.c
+                          smbd/conn.c
                           ''' + NOTIFY_SOURCES,
                    deps='''
                         talloc
@@ -737,7 +733,6 @@ bld.SAMBA3_LIBRARY('smbd_base',
                         vfs_posixacl
                         inotify
                         samba3core
-                        smbd_conn
                         param_service
                         AVAHI
                         PRINTBASE


-- 
Samba Shared Repository

Reply via email to