The branch, v3-0-test has been updated
       via  649572c454328b81714b86d3f99f730bf61625e0 (commit)
       via  f5742c1f3980ae216fc17005e7e035f2b5f535a5 (commit)
       via  92f3ba8e20bd4a5a2afdd13feb5519d723784274 (commit)
      from  114b94f86e15d482f3b39912f28eb72b66b36bc8 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-0-test


- Log -----------------------------------------------------------------
commit 649572c454328b81714b86d3f99f730bf61625e0
Author: Jeremy Allison <[EMAIL PROTECTED]>
Date:   Mon Nov 24 15:40:50 2008 -0800

    Fix bug #5873 - ACL inheritance cannot be broken. This regresses #4308, but 
that will have to
    be fixed another way.
    Jeremy.

commit f5742c1f3980ae216fc17005e7e035f2b5f535a5
Merge: 92f3ba8e20bd4a5a2afdd13feb5519d723784274 
114b94f86e15d482f3b39912f28eb72b66b36bc8
Author: Jeremy Allison <[EMAIL PROTECTED]>
Date:   Mon Nov 24 15:35:12 2008 -0800

    Merge branch 'v3-0-test' of ssh://[EMAIL PROTECTED]/data/git/samba into 
v3-0-test

commit 92f3ba8e20bd4a5a2afdd13feb5519d723784274
Author: Yasuma Takeda <[EMAIL PROTECTED]>
Date:   Thu Nov 20 11:41:47 2008 -0800

    Fix bug #5909 - MS-DFS does not work on Vista, if link name includes 
multibyte character.

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

Summary of changes:
 source/smbd/msdfs.c      |   12 ++++++------
 source/smbd/posix_acls.c |    8 ++++++++
 2 files changed, 14 insertions(+), 6 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/smbd/msdfs.c b/source/smbd/msdfs.c
index 19527ec..0ec343c 100644
--- a/source/smbd/msdfs.c
+++ b/source/smbd/msdfs.c
@@ -713,7 +713,6 @@ NTSTATUS get_referred_path(TALLOC_CTX *ctx,
 static int setup_ver2_dfs_referral(const char *pathname,
                                char **ppdata, 
                                struct junction_map *junction,
-                               int consumedcnt,
                                BOOL self_referral)
 {
        char* pdata = *ppdata;
@@ -770,7 +769,8 @@ static int setup_ver2_dfs_referral(const char *pathname,
        memcpy(pdata+uni_reqpathoffset2,uni_requestedpath,requestedpathlen);
 
        /* create the header */
-       SSVAL(pdata,0,consumedcnt * 2); /* path consumed */
+       SSVAL(pdata,0,requestedpathlen - 2); /* UCS2 of path consumed minus
+                                               2 byte null */
        SSVAL(pdata,2,junction->referral_count); /* number of referral in this 
pkt */
        if(self_referral) {
                SIVAL(pdata,4,DFSREF_REFERRAL_SERVER | DFSREF_STORAGE_SERVER); 
@@ -814,7 +814,6 @@ static int setup_ver2_dfs_referral(const char *pathname,
 static int setup_ver3_dfs_referral(const char *pathname,
                                char **ppdata, 
                                struct junction_map *junction,
-                               int consumedcnt,
                                BOOL self_referral)
 {
        char* pdata = *ppdata;
@@ -852,7 +851,8 @@ static int setup_ver3_dfs_referral(const char *pathname,
        *ppdata = pdata;
 
        /* create the header */
-       SSVAL(pdata,0,consumedcnt * 2); /* path consumed */
+       SSVAL(pdata,0,reqpathlen - 2); /* UCS2 of path consumed minus
+                                         2 byte null */
        SSVAL(pdata,2,junction->referral_count); /* number of referral */
        if(self_referral) {
                SIVAL(pdata,4,DFSREF_REFERRAL_SERVER | DFSREF_STORAGE_SERVER); 
@@ -974,11 +974,11 @@ int setup_dfs_referral(connection_struct *orig_conn,
        switch(max_referral_level) {
        case 2:
                reply_size = setup_ver2_dfs_referral(pathnamep, ppdata, 
&junction, 
-                                                    consumedcnt, 
self_referral);
+                                                    self_referral);
                break;
        case 3:
                reply_size = setup_ver3_dfs_referral(pathnamep, ppdata, 
&junction, 
-                                                    consumedcnt, 
self_referral);
+                                                    self_referral);
                break;
        default:
                DEBUG(0,("setup_dfs_referral: Invalid dfs referral version: 
%d\n", max_referral_level));
diff --git a/source/smbd/posix_acls.c b/source/smbd/posix_acls.c
index 2242405..33cba6a 100644
--- a/source/smbd/posix_acls.c
+++ b/source/smbd/posix_acls.c
@@ -3119,6 +3119,9 @@ int try_chown(connection_struct *conn, const char *fname, 
uid_t uid, gid_t gid)
        return ret;
 }
 
+#if 0
+/* Disable this - prevents ACL inheritance from the ACL editor. JRA. */
+
 /****************************************************************************
  Take care of parent ACL inheritance.
 ****************************************************************************/
@@ -3313,6 +3316,7 @@ static NTSTATUS append_parent_acl(files_struct *fsp,
        *pp_new_sd = psd;
        return status;
 }
+#endif
 
 /****************************************************************************
  Reply to set a security descriptor on an fsp. security_info_sent is the
@@ -3426,6 +3430,9 @@ BOOL set_nt_acl(files_struct *fsp, uint32 
security_info_sent, SEC_DESC *psd)
 
        create_file_sids(&sbuf, &file_owner_sid, &file_grp_sid);
 
+#if 0
+       /* Disable this - prevents ACL inheritance from the ACL editor. JRA. */
+
        /* See here: http://www.codeproject.com/KB/winsdk/accessctrl2.aspx
         * for details and also the log trace in bug #4308. JRA.
        */
@@ -3441,6 +3448,7 @@ BOOL set_nt_acl(files_struct *fsp, uint32 
security_info_sent, SEC_DESC *psd)
                        return False;
                }
        }
+#endif
 
        acl_perms = unpack_canon_ace( fsp, &sbuf, &file_owner_sid, 
&file_grp_sid,
                                        &file_ace_list, &dir_ace_list, 
security_info_sent, psd);


-- 
Samba Shared Repository

Reply via email to