[SCM] Samba Shared Repository - branch master updated
Andrew Bartlett
abartlet at samba.org
Tue Apr 10 20:05:03 MDT 2012
The branch, master has been updated
via 47e7013 on our way with Samba 4.0alpha20
via 8a34f61 prepare WHATSNEW for Samba 4.0alpha19 release and mark as release.
via 7381863 ccan: Fix failtest on Fedora 16 as stdlib.h does not imply malloc.h
via ce5ac20 remove --enable-developer from samba4-libs autobuild
via f446506 remove --enable-developer from recursive waf build in autoconf build
via 72b8a09 buildtools: Add --enable-debug option
via 031dee3 .gitignore: ignore MYMETA.yml
via 646aced build: search for talloc, tdb, tevent in non-standard system locations
via f7d6089 build: Add tevent deps for users of tevent calls
from fe707f6 Add a new module, aio_linux which implements Linux kernel aio support. Docs to follow.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 47e7013d20d5ca4fc2b9445d8618a29e85f21f79
Author: Andrew Bartlett <abartlet at samba.org>
Date: Wed Apr 11 07:33:26 2012 +1000
on our way with Samba 4.0alpha20
Autobuild-User: Andrew Bartlett <abartlet at samba.org>
Autobuild-Date: Wed Apr 11 04:04:18 CEST 2012 on sn-devel-104
commit 8a34f61b27b2de4b0672e46b2fd50f8191a880ad
Author: Andrew Bartlett <abartlet at samba.org>
Date: Wed Apr 11 07:32:43 2012 +1000
prepare WHATSNEW for Samba 4.0alpha19 release and mark as release.
commit 73818636e01de66d7a8d98072188a60284a00d00
Author: Andrew Bartlett <abartlet at samba.org>
Date: Wed Apr 11 08:27:14 2012 +1000
ccan: Fix failtest on Fedora 16 as stdlib.h does not imply malloc.h
The issue is that there are two different sources of the malloc
prototype, and they both need to be included otherwise the failtest
overrides chokes on the headers.
Andrew Bartlett
commit ce5ac20d1979498572d4b6f631801664a8f4a9ee
Author: Andrew Bartlett <abartlet at samba.org>
Date: Wed Apr 11 08:01:47 2012 +1000
remove --enable-developer from samba4-libs autobuild
This will ensure everything works for end users without --enable-developer.
Andrew Bartlett
commit f446506608ba93303b9c671bdaacd692f72bad28
Author: Andrew Bartlett <abartlet at samba.org>
Date: Wed Apr 11 07:59:01 2012 +1000
remove --enable-developer from recursive waf build in autoconf build
wanting to run make test does not make you a developer in need of ABI checking.
Andrew Bartlett
commit 72b8a0952a10c94aa0483a83bec9253b53a30e39
Author: Andrew Bartlett <abartlet at samba.org>
Date: Wed Apr 11 08:08:44 2012 +1000
buildtools: Add --enable-debug option
commit 031dee348dbbf1c4658a0488520bacc582c4fe29
Author: Andrew Bartlett <abartlet at samba.org>
Date: Wed Apr 11 07:56:00 2012 +1000
.gitignore: ignore MYMETA.yml
commit 646aced66543b56725b3f2f5bc061d946c109db8
Author: Andrew Bartlett <abartlet at samba.org>
Date: Wed Apr 11 09:36:12 2012 +1000
build: search for talloc, tdb, tevent in non-standard system locations
This is needed because the s3 includes.h directly mentions these
headers, but not every part of s3 depends on these directly.
Andrew Bartlett
commit f7d60899d6118185cc09aad52eeaf3146d577413
Author: Andrew Bartlett <abartlet at samba.org>
Date: Wed Apr 11 09:09:56 2012 +1000
build: Add tevent deps for users of tevent calls
This isn't strictly required - this isn't a build break at the moment,
but is a good practice to directly depend on the major libraries we
use, and helps us to have more fine-grained rather than global
dependencies.
Andrew Bartlett
-----------------------------------------------------------------------
Summary of changes:
.gitignore | 1 +
VERSION | 2 +-
WHATSNEW.txt | 67 +++++++++++++++++---------------
buildtools/wafsamba/samba3.py | 26 ++++++++++--
buildtools/wafsamba/samba_autoconf.py | 4 ++
buildtools/wafsamba/wscript | 3 +
lib/ccan/failtest/failtest_override.h | 4 ++
script/autobuild.py | 10 ++--
source3/Makefile-smbtorture4 | 2 +-
source3/modules/wscript_build | 6 +-
10 files changed, 79 insertions(+), 46 deletions(-)
Changeset truncated at 500 lines:
diff --git a/.gitignore b/.gitignore
index 09a5ee4..d8cb4e7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -102,6 +102,7 @@ pidl/blib
pidl/cover_db
pidl/Makefile
pidl/pm_to_blib
+pidl/MYMETA.yml
packaging/RHEL-CTDB/samba.spec
packaging/RHEL/samba.spec
packaging/RHEL/makerpms.sh
diff --git a/VERSION b/VERSION
index 952ff93..beab1e5 100644
--- a/VERSION
+++ b/VERSION
@@ -57,7 +57,7 @@ SAMBA_VERSION_TP_RELEASE=
# e.g. SAMBA_VERSION_ALPHA_RELEASE=1 #
# -> "4.0.0alpha1" #
########################################################
-SAMBA_VERSION_ALPHA_RELEASE=19
+SAMBA_VERSION_ALPHA_RELEASE=20
########################################################
# For 'pre' releases the version will be #
diff --git a/WHATSNEW.txt b/WHATSNEW.txt
index a9258b0..d58ad09 100644
--- a/WHATSNEW.txt
+++ b/WHATSNEW.txt
@@ -1,4 +1,4 @@
-What's new in Samba 4 alpha18
+What's new in Samba 4 alpha19
=============================
Samba 4.0 will be the next version of the Samba suite and incorporates
@@ -10,7 +10,7 @@ and above.
WARNINGS
========
-Samba4 alpha18 is not a final Samba release, however we are now making
+Samba4 alpha19 is not a final Samba release, however we are now making
good progress towards a Samba 4.0 release, of which this is a preview.
Be aware the this release contains both the technology of Samba 3.6
(that you can reasonably expect to upgrade existing Samba 3.x releases
@@ -55,52 +55,59 @@ programs to interface to Samba's internals, and many tools and
internal workings of the DC code is now implemented in python.
-CHANGES SINCE alpha17
+CHANGES SINCE alpha18
=====================
-For a list of changes since alpha 17, please see the git log.
+For a list of changes since alpha 18, please see the git log.
$ git clone git://git.samba.org/samba.git
$ cd samba.git
-$ git log samba-4.0.0alpha17..samba-4.0.0alpha18
+$ git log samba-4.0.0alpha18..samba-4.0.0alpha19
Some major user-visible changes include:
-Improvements to DNS servers. Samba4 now has 3 options for the
-handling of DNS: The default option is to use the BIND 9.8 DLZ plugin,
-which stores the information about the DNS zone in the directory.
-There is also an internal DNS server (but which does not support
-secure DNS updates at this time) and the flat file BIND 9.8 backend
-(storing the data in traditional zone files).
+CVE-2012-1182:
+ Samba 3.0.x to 3.6.3 are affected by a
+ vulnerability that allows remote code
+ execution as the "root" user.
-To migrate from zone files to directory based DNS servers, a migration
-tool (upgradedns) has been added.
+Portability to MacOS X. By using the CC_MD5*() routines we no longer
+segfault on MacOS X.
-samba-tool dns commands to manage DNS records stored in directory.
+The source4/librpc layer has been reworked to be much more robust to
+connection failures.
-smbwrapper (a user-space file system based on LD_PRELOAD) has been
-removed.
+security=share in smbd has now been removed.
+
+A segfault in vfs_aio_fork for the smbd file server has been fixed
+
+ldbadd and ldbmodify now handle each ldif file in a single
+transaction, when modifying a local ldb.
+
+Further improvements to the dlz_bind9 and internal DNS servers.
-Improvement to the upgrade process between Samba 3.x domains and Samba
-4.0 AD domains (samba-tool domain samba3upgrade).
Some major but less visible changes include:
-Major work to bridge the code gap between the major parts of the code
-base, including a common loadparm wrapper, smb client library, as well
-as NTLMSSP, GSSAPI and SPNEGO code as part of the GENSEC
-authentication and authorization stack.
+Initial support for s3fs, using the smbd file server in the AD Domain
+controller has been added (but not yet finished, so not exposed)
+
+Samba now only uses the _FILE_OFFSET_BITS=64 API for accessing large
+files, not the _LARGEFILE64_SOURCE API.
+
+All Samba daemons now monitor stdin when launched in the foreground,
+and shutdown when stdin is closed. We also ensure that all child
+processes are clened up by a similar mechanism. This ensures that
+stray processes do not hang around, particularly in make test.
-Preparation work for moving to TDB2, a new version of Samba's core TDB
+Further preparation work for moving to TDB2, a new version of Samba's core TDB
database.
-smbtorture tests for SMB 2 and SMB 2.2 as the team improves and
-develops support these new protocols.
+Early implementation work on the SMB 2.2 protocol client and server as
+the team improves and develops support these new protocols.
-Major cleanup and removal of global variables in the smbd SMB and SMB2 server.
+The last of the old-style krb5 ticket handling has been removed.
-Heimdal security issue 2012-01-11 - libkrb5 checksum - denial of serice
-http://www.h5l.org//advisories.html?show=2012-01-11
KNOWN ISSUES
============
@@ -113,9 +120,7 @@ KNOWN ISSUES
- Systems with tdb or ldb installed as a system library may have
difficulty building this release of Samba4. The --disable-tdb2
- configure switch may be of assistance. (Distributors who (rightly)
- have difficulty with this may wish to wait until a future release,
- which will soon fix this issue).
+ configure switch may be of assistance.
- Installation on systems without a system iconv (and developer
headers at compile time) is known to cause errors when dealing with
diff --git a/buildtools/wafsamba/samba3.py b/buildtools/wafsamba/samba3.py
index fdc5712..afdf99a 100644
--- a/buildtools/wafsamba/samba3.py
+++ b/buildtools/wafsamba/samba3.py
@@ -4,6 +4,7 @@
import Options, Build, os
from optparse import SUPPRESS_HELP
from samba_utils import os_path_relpath, TO_LIST
+from samba_autoconf import library_flags
def SAMBA3_ADD_OPTION(opt, option, help=(), dest=None, default=True,
with_name="with", without_name="without"):
@@ -58,19 +59,34 @@ def s3_fix_kwargs(bld, kwargs):
'../source4/heimdal_build' ]
if bld.CONFIG_SET('BUILD_TDB2'):
- if not bld.CONFIG_SET('USING_SYSTEM_TDB2'):
+ if bld.CONFIG_SET('USING_SYSTEM_TDB2'):
+ (tdb2_includes, tdb2_ldflags) = library_flags(bld, 'tdb')
+ extra_includes += tdb2_includes
+ else:
extra_includes += [ '../lib/tdb2' ]
else:
- if not bld.CONFIG_SET('USING_SYSTEM_TDB'):
+ if bld.CONFIG_SET('USING_SYSTEM_TDB'):
+ (tdb_includes, tdb_ldflags) = library_flags(bld, 'tdb')
+ extra_includes += tdb_includes
+ else:
extra_includes += [ '../lib/tdb/include' ]
- if not bld.CONFIG_SET('USING_SYSTEM_TEVENT'):
+ if bld.CONFIG_SET('USING_SYSTEM_TEVNT'):
+ (tevent_includes, tevent_ldflags) = library_flags(bld, 'tevent')
+ extra_includes += tevent_includes
+ else:
extra_includes += [ '../lib/tevent' ]
- if not bld.CONFIG_SET('USING_SYSTEM_TALLOC'):
+ if bld.CONFIG_SET('USING_SYSTEM_TALLOC'):
+ (talloc_includes, talloc_ldflags) = library_flags(bld, 'talloc')
+ extra_includes += talloc_includes
+ else:
extra_includes += [ '../lib/talloc' ]
- if not bld.CONFIG_SET('USING_SYSTEM_POPT'):
+ if bld.CONFIG_SET('USING_SYSTEM_POPT'):
+ (popt_includes, popt_ldflags) = library_flags(bld, 'popt')
+ extra_includes += popt_includes
+ else:
extra_includes += [ '../lib/popt' ]
# s3 builds assume that they will have a bunch of extra include paths
diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py
index 2bb86c7..08df2b3 100644
--- a/buildtools/wafsamba/samba_autoconf.py
+++ b/buildtools/wafsamba/samba_autoconf.py
@@ -599,6 +599,10 @@ def SAMBA_CONFIG_H(conf, path=None):
if not IN_LAUNCH_DIR(conf):
return
+ if Options.options.debug:
+ conf.ADD_CFLAGS('-g',
+ testflags=True)
+
if Options.options.developer:
# we add these here to ensure that -Wstrict-prototypes is not set during configure
conf.ADD_CFLAGS('-Wall -g -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-align -Wwrite-strings -Werror-implicit-function-declaration -Wformat=2 -Wno-format-y2k -Wmissing-prototypes -fno-common',
diff --git a/buildtools/wafsamba/wscript b/buildtools/wafsamba/wscript
index a302280..ff18777 100755
--- a/buildtools/wafsamba/wscript
+++ b/buildtools/wafsamba/wscript
@@ -81,6 +81,9 @@ def set_options(opt):
gr.add_option('--enable-auto-reconfigure',
help='enable automatic reconfigure on build',
action='store_true', dest='enable_auto_reconfigure')
+ gr.add_option('--enable-debug',
+ help=("Turn on debugging symbols"),
+ action="store_true", dest='debug', default=False)
gr.add_option('--enable-developer',
help=("Turn on developer warnings and debugging"),
action="store_true", dest='developer', default=False)
diff --git a/lib/ccan/failtest/failtest_override.h b/lib/ccan/failtest/failtest_override.h
index b056d53..7d03188 100644
--- a/lib/ccan/failtest/failtest_override.h
+++ b/lib/ccan/failtest/failtest_override.h
@@ -10,6 +10,10 @@
/* Replacement of allocators. */
#include <stdlib.h>
+#ifdef HAVE_MALLOC_H
+#include <malloc.h>
+#endif
+
#undef calloc
#define calloc(nmemb, size) \
failtest_calloc((nmemb), (size), __FILE__, __LINE__)
diff --git a/script/autobuild.py b/script/autobuild.py
index 6e090fa..41b2537 100755
--- a/script/autobuild.py
+++ b/script/autobuild.py
@@ -55,23 +55,23 @@ tasks = {
("check-clean-tree", "script/clean-source-tree.sh", "text/plain"),
("clean", "make clean", "text/plain") ],
- "samba4-libs" : [ ("talloc-configure", "cd lib/talloc && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --enable-developer -C ${PREFIX}", "text/plain"),
+ "samba4-libs" : [ ("talloc-configure", "cd lib/talloc && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --enable-debug -C ${PREFIX}", "text/plain"),
("talloc-make", "cd lib/talloc && make -j", "text/plain"),
("talloc-install", "cd lib/talloc && make install", "text/plain"),
- ("tdb-configure", "cd lib/tdb && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --enable-developer -C ${PREFIX}", "text/plain"),
+ ("tdb-configure", "cd lib/tdb && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --enable-debug -C ${PREFIX}", "text/plain"),
("tdb-make", "cd lib/tdb && make -j", "text/plain"),
("tdb-install", "cd lib/tdb && make install", "text/plain"),
- ("tevent-configure", "cd lib/tevent && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --enable-developer -C ${PREFIX}", "text/plain"),
+ ("tevent-configure", "cd lib/tevent && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --enable-debug -C ${PREFIX}", "text/plain"),
("tevent-make", "cd lib/tevent && make -j", "text/plain"),
("tevent-install", "cd lib/tevent && make install", "text/plain"),
- ("ldb-configure", "cd lib/ldb && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --disable-tdb2 --enable-developer -C ${PREFIX}", "text/plain"),
+ ("ldb-configure", "cd lib/ldb && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --disable-tdb2 --enable-debug -C ${PREFIX}", "text/plain"),
("ldb-make", "cd lib/ldb && make -j", "text/plain"),
("ldb-install", "cd lib/ldb && make install", "text/plain"),
- ("configure", "PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=!talloc,!tdb,!pytdb,!ldb,!pyldb,!tevent,!pytevent --disable-tdb2 --enable-developer -C ${PREFIX}", "text/plain"),
+ ("configure", "PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=!talloc,!tdb,!pytdb,!ldb,!pyldb,!tevent,!pytevent --disable-tdb2 --enable-debug -C ${PREFIX}", "text/plain"),
("make", "make -j", "text/plain"),
("install", "make install", "text/plain")],
diff --git a/source3/Makefile-smbtorture4 b/source3/Makefile-smbtorture4
index 57fff2b..c2fe87a 100644
--- a/source3/Makefile-smbtorture4
+++ b/source3/Makefile-smbtorture4
@@ -6,7 +6,7 @@ SAMBA4_BINARIES="smbtorture,ndrdump"
samba4-configure:
@(cd .. && \
CFLAGS='' $(WAF) reconfigure || \
- CFLAGS='' $(WAF) configure --enable-socket-wrapper --enable-nss-wrapper --enable-uid-wrapper --nonshared-binary=$(SAMBA4_BINARIES) --enable-auto-reconfigure --enable-developer --disable-tdb2)
+ CFLAGS='' $(WAF) configure --enable-socket-wrapper --enable-nss-wrapper --enable-uid-wrapper --nonshared-binary=$(SAMBA4_BINARIES) --enable-auto-reconfigure --enable-debug --disable-tdb2)
.PHONY: samba4-configure
diff --git a/source3/modules/wscript_build b/source3/modules/wscript_build
index 090ca1b..f230fe3 100644
--- a/source3/modules/wscript_build
+++ b/source3/modules/wscript_build
@@ -352,7 +352,7 @@ bld.SAMBA3_MODULE('vfs_fileid',
bld.SAMBA3_MODULE('vfs_aio_fork',
subsystem='vfs',
source=VFS_AIO_FORK_SRC,
- deps='samba-util',
+ deps='samba-util tevent',
init_function='',
internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_aio_fork'),
enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_aio_fork'),
@@ -361,7 +361,7 @@ bld.SAMBA3_MODULE('vfs_aio_fork',
bld.SAMBA3_MODULE('vfs_aio_pthread',
subsystem='vfs',
source=VFS_AIO_PTHREAD_SRC,
- deps='samba-util',
+ deps='samba-util tevent',
init_function='',
internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_aio_pthread'),
enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_aio_pthread'),
@@ -475,7 +475,7 @@ bld.SAMBA3_MODULE('vfs_time_audit',
bld.SAMBA3_MODULE('vfs_dfs_samba4',
subsystem='vfs',
source='vfs_dfs_samba4.c',
- deps='samba-util dfs_server_ad samdb',
+ deps='samba-util dfs_server_ad samdb tevent',
init_function='',
internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_dfs_samba4'),
enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_dfs_samba4'))
--
Samba Shared Repository
More information about the samba-cvs
mailing list