The branch, master has been updated
       via  46a41d0 s3: Fix Coverity ID 241320 Array compared against 0
       via  87542e1 s3: Make SMB_QUERY_FILE_UNIX_BASIC's devno work for files
      from  e945511 move the dbwrap library to the top level

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 46a41d0fbdd7b4524313c9299851ad7a63244763
Author: Volker Lendecke <v...@samba.org>
Date:   Wed May 9 16:36:55 2012 +0200

    s3: Fix Coverity ID 241320 Array compared against 0
    
    domain->alt_name is an array, not a pointer
    
    Autobuild-User: Volker Lendecke <v...@samba.org>
    Autobuild-Date: Mon May 14 15:11:47 CEST 2012 on sn-devel-104

commit 87542e1310cfa90e5af0b00d77def969c7b38aef
Author: Volker Lendecke <v...@samba.org>
Date:   Fri May 11 13:31:36 2012 +0200

    s3: Make SMB_QUERY_FILE_UNIX_BASIC's devno work for files
    
    According to susv3, st_rdev is valid exactly for char and block devices. 
Normal
    files have st_dev set.

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

Summary of changes:
 source3/smbd/trans2.c            |   11 +++++++++--
 source3/winbindd/winbindd_misc.c |    2 +-
 2 files changed, 10 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c
index 5cfbc31..590ee5b 100644
--- a/source3/smbd/trans2.c
+++ b/source3/smbd/trans2.c
@@ -3959,6 +3959,7 @@ static char *store_file_unix_basic(connection_struct 
*conn,
                                const SMB_STRUCT_STAT *psbuf)
 {
        uint64_t file_index = get_FileIndex(conn, psbuf);
+       dev_t devno;
 
        DEBUG(10,("store_file_unix_basic: SMB_QUERY_FILE_UNIX_BASIC\n"));
        DEBUG(4,("store_file_unix_basic: st_mode=%o\n",(int)psbuf->st_ex_mode));
@@ -3985,11 +3986,17 @@ static char *store_file_unix_basic(connection_struct 
*conn,
        SIVAL(pdata,0,unix_filetype(psbuf->st_ex_mode));
        pdata += 4;
 
-       SIVAL(pdata,0,unix_dev_major(psbuf->st_ex_rdev));   /* Major device 
number if type is device */
+       if (S_ISBLK(psbuf->st_ex_mode) || S_ISCHR(psbuf->st_ex_mode)) {
+               devno = psbuf->st_ex_rdev;
+       } else {
+               devno = psbuf->st_ex_dev;
+       }
+
+       SIVAL(pdata,0,unix_dev_major(devno));   /* Major device number if type 
is device */
        SIVAL(pdata,4,0);
        pdata += 8;
 
-       SIVAL(pdata,0,unix_dev_minor(psbuf->st_ex_rdev));   /* Minor device 
number if type is device */
+       SIVAL(pdata,0,unix_dev_minor(devno));   /* Minor device number if type 
is device */
        SIVAL(pdata,4,0);
        pdata += 8;
 
diff --git a/source3/winbindd/winbindd_misc.c b/source3/winbindd/winbindd_misc.c
index 6f87302..4759a17 100644
--- a/source3/winbindd/winbindd_misc.c
+++ b/source3/winbindd/winbindd_misc.c
@@ -200,7 +200,7 @@ enum winbindd_result 
winbindd_dual_list_trusted_domains(struct winbindd_domain *
        if (state->request->data.list_all_domains && !have_own_domain) {
                extra_data = talloc_asprintf_append_buffer(
                        extra_data, "%s\\%s\\%s\n", domain->name,
-                       domain->alt_name ? domain->alt_name : domain->name,
+                       domain->alt_name[0] ? domain->alt_name : domain->name,
                        sid_string_talloc(state->mem_ctx, &domain->sid));
        }
 


-- 
Samba Shared Repository

Reply via email to