[SCM] Samba Shared Repository - branch v3-2-stable updated - release-3-2-0rc1-51-g43f277a

Karolin Seeger kseeger at samba.org
Mon Jun 9 07:10:42 GMT 2008


The branch, v3-2-stable has been updated
       via  43f277a7dd06b800bd15f0b92a8f916e25f1370d (commit)
       via  e73a49c8728e6ec7b6a3226b090343e9c7bd6288 (commit)
       via  cb4c5f51e20e7112a06040839a7e3069f7daea06 (commit)
       via  5141a7f4cc598ac200e01cf279d3a53ff5e9d49a (commit)
       via  5ee7f2e437e55ba25cca6cd4fba1f88dd935356a (commit)
       via  1860b6201f05b5f1432f5e3e20f1687157158bb6 (commit)
       via  e9691a2b122b49e37f9e620b1653fef8a2f32fe1 (commit)
      from  5462e1a6bf99fc199053aebe412867f420eb1841 (commit)

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


- Log -----------------------------------------------------------------
commit 43f277a7dd06b800bd15f0b92a8f916e25f1370d
Author: Karolin Seeger <kseeger at samba.org>
Date:   Mon Jun 9 08:56:11 2008 +0200

    WHATSNEW: Update changes since 3.2.0rc1.
    
    Karolin
    (cherry picked from commit 8d4ce48377df7be336d520de9b108f45489c9766)

commit e73a49c8728e6ec7b6a3226b090343e9c7bd6288
Author: Karolin Seeger <kseeger at samba.org>
Date:   Mon Jun 9 08:47:17 2008 +0200

    WHATSNEW: Update changes since 3.2.0rc1.
    
    Karolin
    (cherry picked from commit 79db2228f74e5362736063b7e0793b37516d46c1)

commit cb4c5f51e20e7112a06040839a7e3069f7daea06
Author: Karolin Seeger <kseeger at samba.org>
Date:   Mon Jun 9 08:39:12 2008 +0200

    Revert "build: add symbol versioning when we build with gnu ld"
    
    This reverts commit cb5492978b6b157f529806afb2f5fc6202888129.
    
    For more information, please have a look at the discussion on
    samba-technical starting with [1].
    
    [1] http://lists.samba.org/archive/samba-technical/2008-June/059511.html
    
    Karolin
    (cherry picked from commit 1e5aeb96f92fef8056ec9010e125f4d0d31dd90e)

commit 5141a7f4cc598ac200e01cf279d3a53ff5e9d49a
Author: Volker Lendecke <vl at samba.org>
Date:   Sat Jun 7 08:48:13 2008 +0200

    Fix a memleak in fetch_ldap_pw
    
    Fix Coverity ID 572, also fix the error check for secrets_fetch failing
    (cherry picked from commit 2663c81a782fd4394a9feaaaa987c7f6d38ca5da)
    (cherry picked from commit 56447baf3bca6cc7110420d84188291f6c785daf)

commit 5ee7f2e437e55ba25cca6cd4fba1f88dd935356a
Author: Volker Lendecke <vl at samba.org>
Date:   Sat Jun 7 08:50:02 2008 +0200

    Fix a memleak in secrets_fetch_trust_account_password_legacy
    
    Coverity ID 571
    (cherry picked from commit a551773e34af1c118f77784a285e1b885da8655d)
    (cherry picked from commit 682ec284b189e12de4fff9f000b12960a69d90cb)

commit 1860b6201f05b5f1432f5e3e20f1687157158bb6
Author: Volker Lendecke <vl at samba.org>
Date:   Sat Jun 7 08:51:35 2008 +0200

    Fix a memleak in secrets_fetch_afs_key
    
    Coverity ID 570
    (cherry picked from commit 0f52dc3f7eae7e87b8a71bd099b99b0b3e76a387)
    (cherry picked from commit fb708dafb052dae7733657487ac73a533750f6f9)

commit e9691a2b122b49e37f9e620b1653fef8a2f32fe1
Author: Volker Lendecke <vl at samba.org>
Date:   Sat Jun 7 09:04:03 2008 +0200

    Add STREAMINFO op to vfs_full_audit
    
    Fix Coverity ID 552 and 553
    (cherry picked from commit c46e10d2605b22d31675976e62e5ae61d73c8a0a)
    (cherry picked from commit 20aa14480e9ae6cea663c67fe9e2d1d3b6fafa7d)

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

Summary of changes:
 WHATSNEW.txt                                 |    8 ++++++
 source/Makefile.in                           |   16 ++++++------
 source/configure.in                          |   17 -------------
 source/exports/libsmbclient.version.syms     |    8 ------
 source/exports/libsmbsharemodes.version.syms |    7 -----
 source/include/vfs_macros.h                  |    2 +-
 source/modules/vfs_full_audit.c              |   27 ++++++++++++++++++++
 source/passdb/secrets.c                      |    6 ++++-
 source/script/mksyms.awk                     |    3 ++
 source/script/mksyms.sh                      |   34 ++++----------------------
 10 files changed, 57 insertions(+), 71 deletions(-)
 delete mode 100644 source/exports/libsmbclient.version.syms
 delete mode 100644 source/exports/libsmbsharemodes.version.syms


Changeset truncated at 500 lines:

diff --git a/WHATSNEW.txt b/WHATSNEW.txt
index 9555030..f9c9586 100644
--- a/WHATSNEW.txt
+++ b/WHATSNEW.txt
@@ -234,6 +234,14 @@ o   Björn Jacke <bj at sernet.de>
 
 o   Volker Lendecke <vl at samba.org>
     * BUG 5502: Fix security=server.
+    * Fix coverity IDs 552, 553, 570, 571, 572.
+
+
+o   Stefan Metzmacher <metze at samba.org>
+    * Remove support for symbol versioning in shared libraries.
+      For more information, please have a look at the disussion on
+      samba-technical starting with
+      http://lists.samba.org/archive/samba-technical/2008-June/059511.html.
 
 
 o   Marc VanHeyningen <marc.vanheyningen at isilon.com>
diff --git a/source/Makefile.in b/source/Makefile.in
index 998bf43..1cf03ee 100644
--- a/source/Makefile.in
+++ b/source/Makefile.in
@@ -1587,8 +1587,8 @@ bin/ldbdel: $(BINARY_PREREQS) $(LDBDEL_OBJ) @BUILD_POPT@ @LIBTALLOC_SHARED@ @LIB
 
 MKSYMS_SH = $(srcdir)/script/mksyms.sh
 
-$(LIBTALLOC_SYMS): $(LIBTALLOC_HEADERS) $(builddir)/library-versions
-	@$(MKSYMS_SH) $(AWK) $(builddir)/library-versions $@ $(LIBTALLOC_HEADERS)
+$(LIBTALLOC_SYMS): $(LIBTALLOC_HEADERS)
+	@$(MKSYMS_SH) $(AWK) $@ $(LIBTALLOC_HEADERS)
 
 $(LIBTALLOC_SHARED_TARGET): $(BINARY_PREREQS) $(LIBTALLOC_OBJ) $(LIBTALLOC_SYMS)
 	@echo Linking shared library $@
@@ -1600,8 +1600,8 @@ $(LIBTALLOC_STATIC_TARGET): $(BINARY_PREREQS) $(LIBTALLOC_OBJ0)
 	@echo Linking non-shared library $@
 	@-$(AR) -rc $@ $(LIBTALLOC_OBJ0)
 
-$(LIBTDB_SYMS): $(LIBTDB_HEADERS) $(builddir)/library-versions
-	@$(MKSYMS_SH) $(AWK) $(builddir)/library-versions $@ $(LIBTDB_HEADERS)
+$(LIBTDB_SYMS): $(LIBTDB_HEADERS)
+	@$(MKSYMS_SH) $(AWK) $@ $(LIBTDB_HEADERS)
 
 $(LIBTDB_SHARED_TARGET): $(BINARY_PREREQS) $(LIBTDB_OBJ) $(LIBTDB_SYMS)
 	@echo Linking shared library $@
@@ -1613,8 +1613,8 @@ $(LIBTDB_STATIC_TARGET): $(BINARY_PREREQS) $(LIBTDB_OBJ0)
 	@echo Linking non-shared library $@
 	@-$(AR) -rc $@ $(LIBTDB_OBJ0)
 
-$(LIBWBCLIENT_SYMS): $(LIBWBCLIENT_HEADERS) $(builddir)/library-versions
-	@$(MKSYMS_SH) $(AWK) $(builddir)/library-versions $@ $(LIBWBCLIENT_HEADERS)
+$(LIBWBCLIENT_SYMS): $(LIBWBCLIENT_HEADERS)
+	@$(MKSYMS_SH) $(AWK) $@ $(LIBWBCLIENT_HEADERS)
 
 $(LIBWBCLIENT_SHARED_TARGET): $(BINARY_PREREQS) $(LIBWBCLIENT_OBJ) $(LIBWBCLIENT_SYMS) @LIBTALLOC_SHARED@
 	@echo Linking shared library $@
@@ -1636,8 +1636,8 @@ bin/libaddns.a: $(BINARY_PREREQS) $(LIBADDNS_OBJ)
 	@echo Linking non-shared library $@
 	@-$(AR) -rc $@ $(LIBADDNS_OBJ)
 
-$(LIBNETAPI_SYMS): $(LIBNETAPI_HEADERS) $(builddir)/library-versions
-	@$(MKSYMS_SH) $(AWK) $(builddir)/library-versions $@ $(LIBNETAPI_HEADERS)
+$(LIBNETAPI_SYMS): $(LIBNETAPI_HEADERS)
+	@$(MKSYMS_SH) $(AWK) $@ $(LIBNETAPI_HEADERS)
 
 $(LIBNETAPI_SHARED_TARGET): $(BINARY_PREREQS) $(LIBNETAPI_OBJ) $(LIBNETAPI_SYMS) @LIBTALLOC_SHARED@ @LIBTDB_SHARED@ @LIBWBCLIENT_SHARED@
 	@echo Linking shared library $@
diff --git a/source/configure.in b/source/configure.in
index 473b75f..481f3cd 100644
--- a/source/configure.in
+++ b/source/configure.in
@@ -1504,23 +1504,6 @@ fi
 # Set defaults
 SYMSEXT="syms"
 AC_SUBST(SYMSEXT)
-use_symbol_versioning=no
-if test x"$ac_cv_gnu_ld_version_script" = x"yes"; then
-	use_symbol_versioning=yes
-fi
-AC_ARG_ENABLE(symbol-versioning,[
-	AS_HELP_STRING([--enable-symbol-versioning],
-		[Turn on symbol versioning support if available (default=auto)])
-])
-if test x"$enable_symbol_versioning" = x"no"; then
-	use_symbol_versioning=no
-fi
-
-AC_MSG_CHECKING([symbol versioning])
-if test "x$use_symbol_versioning" = x"yes"; then
-	SYMSEXT="version.syms"
-fi
-AC_MSG_RESULT($use_symbol_versioning)
 
 # Assume non-shared by default and override below
 BLDSHARED="false"
diff --git a/source/exports/libsmbclient.version.syms b/source/exports/libsmbclient.version.syms
deleted file mode 100644
index 6afdbcb..0000000
--- a/source/exports/libsmbclient.version.syms
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# we use no version symbols for libsmbclient
-# to be compatible with 3.0.x
-#
-{
-	global: smbc_*;
-	local: *;
-};
diff --git a/source/exports/libsmbsharemodes.version.syms b/source/exports/libsmbsharemodes.version.syms
deleted file mode 100644
index cf3f033..0000000
--- a/source/exports/libsmbsharemodes.version.syms
+++ /dev/null
@@ -1,7 +0,0 @@
-#
-# we use no version symbols for libsmbsharemodes
-# to be compatible with 3.0.x
-#
-{
-	global: *;
-};
diff --git a/source/include/vfs_macros.h b/source/include/vfs_macros.h
index f0a9809..da7f596 100644
--- a/source/include/vfs_macros.h
+++ b/source/include/vfs_macros.h
@@ -336,7 +336,7 @@
 #define SMB_VFS_NEXT_NOTIFY_WATCH(conn, ctx, e, callback, private_data, handle_p) ((conn)->vfs_next.ops.notify_watch((conn)->vfs_next.handles.notify_watch, (ctx), (e), (callback), (private_data), (handle_p)))
 #define SMB_VFS_NEXT_CHFLAGS(handle, path, flags) ((handle)->vfs_next.ops.chflags((handle)->vfs_next.handles.chflags, (path), (flags)))
 #define SMB_VFS_NEXT_FILE_ID_CREATE(handle, dev, inode) ((handle)->vfs_next.ops.file_id_create((handle)->vfs_next.handles.file_id_create, (dev), (inode)))
-#define SMB_VFS_NEXT_STREAMINFO(handle, fsp, fname, mem_ctx, num_streams, streams) ((handle)->vfs.ops.streaminfo((handle)->vfs.handles.streaminfo, (fsp), (fname), (mem_ctx), (num_streams), (streams)))
+#define SMB_VFS_NEXT_STREAMINFO(handle, fsp, fname, mem_ctx, num_streams, streams) ((handle)->vfs_next.ops.streaminfo((handle)->vfs_next.handles.streaminfo, (fsp), (fname), (mem_ctx), (num_streams), (streams)))
 
 /* NT ACL operations. */
 #define SMB_VFS_NEXT_FGET_NT_ACL(handle, fsp, security_info, ppdesc) ((handle)->vfs_next.ops.fget_nt_acl((handle)->vfs_next.handles.fget_nt_acl, (fsp), (security_info), (ppdesc)))
diff --git a/source/modules/vfs_full_audit.c b/source/modules/vfs_full_audit.c
index 2f8098d..db933f7 100644
--- a/source/modules/vfs_full_audit.c
+++ b/source/modules/vfs_full_audit.c
@@ -190,6 +190,12 @@ static int smb_full_audit_chflags(vfs_handle_struct *handle,
 			    const char *path, unsigned int flags);
 static struct file_id smb_full_audit_file_id_create(struct vfs_handle_struct *handle,
 						    SMB_DEV_T dev, SMB_INO_T inode);
+static NTSTATUS smb_full_audit_streaminfo(vfs_handle_struct *handle,
+					  struct files_struct *fsp,
+					  const char *fname,
+					  TALLOC_CTX *mem_ctx,
+					  unsigned int *pnum_streams,
+					  struct stream_struct **pstreams);
 static NTSTATUS smb_full_audit_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
 				uint32 security_info,
 				SEC_DESC **ppdesc);
@@ -422,6 +428,8 @@ static vfs_op_tuple audit_op_tuples[] = {
 	 SMB_VFS_LAYER_LOGGER},
 	{SMB_VFS_OP(smb_full_audit_file_id_create),	SMB_VFS_OP_FILE_ID_CREATE,
 	 SMB_VFS_LAYER_LOGGER},
+	{SMB_VFS_OP(smb_full_audit_streaminfo),	SMB_VFS_OP_STREAMINFO,
+	 SMB_VFS_LAYER_LOGGER},
 
 	/* NT ACL operations. */
 
@@ -590,6 +598,7 @@ static struct {
 	{ SMB_VFS_OP_NOTIFY_WATCH, "notify_watch" },
 	{ SMB_VFS_OP_CHFLAGS,	"chflags" },
 	{ SMB_VFS_OP_FILE_ID_CREATE,	"file_id_create" },
+	{ SMB_VFS_OP_STREAMINFO,	"streaminfo" },
 	{ SMB_VFS_OP_FGET_NT_ACL,	"fget_nt_acl" },
 	{ SMB_VFS_OP_GET_NT_ACL,	"get_nt_acl" },
 	{ SMB_VFS_OP_FSET_NT_ACL,	"fset_nt_acl" },
@@ -1529,6 +1538,24 @@ static struct file_id smb_full_audit_file_id_create(struct vfs_handle_struct *ha
 	return result;
 }
 
+static NTSTATUS smb_full_audit_streaminfo(vfs_handle_struct *handle,
+					  struct files_struct *fsp,
+					  const char *fname,
+					  TALLOC_CTX *mem_ctx,
+					  unsigned int *pnum_streams,
+					  struct stream_struct **pstreams)
+{
+	NTSTATUS result;
+
+	result = SMB_VFS_NEXT_STREAMINFO(handle, fsp, fname, mem_ctx,
+					 pnum_streams, pstreams);
+
+	do_log(SMB_VFS_OP_STREAMINFO, NT_STATUS_IS_OK(result), handle,
+	       "%s", fname);
+
+	return result;
+}
+
 static NTSTATUS smb_full_audit_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
 				uint32 security_info,
 				SEC_DESC **ppdesc)
diff --git a/source/passdb/secrets.c b/source/passdb/secrets.c
index 34a87bd..6efa82f 100644
--- a/source/passdb/secrets.c
+++ b/source/passdb/secrets.c
@@ -399,6 +399,7 @@ bool secrets_fetch_trust_account_password_legacy(const char *domain,
 
 	if (size != sizeof(*pass)) {
 		DEBUG(0, ("secrets were of incorrect size!\n"));
+		SAFE_FREE(pass);
 		return False;
 	}
 
@@ -883,10 +884,11 @@ bool fetch_ldap_pw(char **dn, char** pw)
 			if (*p == ',') *p = '/';
 
 		data=(char *)secrets_fetch(old_style_key, &size);
-		if (!size && size < sizeof(old_style_pw)) {
+		if ((data == NULL) || (size < sizeof(old_style_pw))) {
 			DEBUG(0,("fetch_ldap_pw: neither ldap secret retrieved!\n"));
 			SAFE_FREE(old_style_key);
 			SAFE_FREE(*dn);
+			SAFE_FREE(data);
 			return False;
 		}
 
@@ -1060,6 +1062,8 @@ bool secrets_fetch_afs_key(const char *cell, struct afs_key *result)
 
 	result->kvno = ntohl(result->kvno);
 
+	SAFE_FREE(keyfile);
+
 	return True;
 }
 
diff --git a/source/script/mksyms.awk b/source/script/mksyms.awk
index dfe51db..a30bea4 100644
--- a/source/script/mksyms.awk
+++ b/source/script/mksyms.awk
@@ -9,6 +9,9 @@
 BEGIN {
 	inheader=0;
 	current_file="";
+	print "#"
+	print "# This file is automatically generated with \"make symbols\". DO NOT EDIT "
+	print "#"
 	print "{"
 	print "\tglobal:"
 }
diff --git a/source/script/mksyms.sh b/source/script/mksyms.sh
index 673c77a..51d3fbd 100755
--- a/source/script/mksyms.sh
+++ b/source/script/mksyms.sh
@@ -15,50 +15,26 @@ LANG=C; export LANG
 LC_ALL=C; export LC_ALL
 LC_COLLATE=C; export LC_COLLATE
 
-if [ $# -lt 3 ]
+if [ $# -lt 2 ]
 then
-  echo "Usage: $0 awk versionfile output_file header_files"
+  echo "Usage: $0 awk output_file header_files"
   exit 1
 fi
 
 awk="$1"
 shift
 
-versionfile="$1"
-shift
-
 symsfile="$1"
 shift
 symsfile_tmp="$symsfile.$$.tmp~"
 
-libname=`basename $symsfile | cut -d '.' -f1`
-verline=`grep $libname $versionfile`
-majver=`echo -n "$verline" | cut -d ':' -f2`
-minver=`echo -n "$verline" | cut -d ':' -f3`
-upname=`echo -n "$libname" | sed -e 's/^lib//' | tr '[a-z]' '[A-Z]'`
-symver="${upname}_${majver}.${minver}"
-
-symsext=`basename $symsfile | cut -d '.' -f2-`
-
-if test x"$symsext" = x"version.syms"; then
-	echo "creating $symsfile for $symver"
-else
-	echo "creating $symsfile"
-	symver="# no symbol versioning"
-fi
-
 proto_src="`echo $@ | tr ' ' '\n' | sort | uniq `"
 
-mkdir -p `dirname $symsfile`
+echo creating $symsfile
 
-cat > $symsfile_tmp <<_ACEOF
-#
-# This file is automatically generated with "$0". DO NOT EDIT
-#
-$symver
-_ACEOF
+mkdir -p `dirname $symsfile`
 
-${awk} -f `dirname $0`/mksyms.awk $proto_src >> $symsfile_tmp
+${awk} -f `dirname $0`/mksyms.awk $proto_src > $symsfile_tmp
 
 if cmp -s $symsfile $symsfile_tmp 2>/dev/null
 then


-- 
Samba Shared Repository


More information about the samba-cvs mailing list