From 5d753741333f8e92bbc64fc5c1cc83d83fd2e827 Mon Sep 17 00:00:00 2001 From: Guenther Deschner Date: Mon, 26 May 2008 16:31:07 +0000 Subject: [PATCH] Merge F9 to devel again. Guenther --- .cvsignore | 2 +- samba-3.2.0pre2-roreloc.diff | 66 ------------------- samba-3.2.0pre3-join.diff | 66 ------------------- samba-3.2.0pre3-smbclient.diff | 29 --------- samba-3.2.0rc1-capget.diff | 113 +++++++++++++++++++++++++++++++++ samba.spec | 29 +++++---- sources | 2 +- 7 files changed, 131 insertions(+), 176 deletions(-) delete mode 100644 samba-3.2.0pre2-roreloc.diff delete mode 100644 samba-3.2.0pre3-join.diff delete mode 100644 samba-3.2.0pre3-smbclient.diff create mode 100644 samba-3.2.0rc1-capget.diff diff --git a/.cvsignore b/.cvsignore index 7f6769f..4d964da 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -samba-3.2.0pre3.tar.gz +samba-3.2.0rc1.tar.gz diff --git a/samba-3.2.0pre2-roreloc.diff b/samba-3.2.0pre2-roreloc.diff deleted file mode 100644 index b8eacc5..0000000 --- a/samba-3.2.0pre2-roreloc.diff +++ /dev/null @@ -1,66 +0,0 @@ -commit c20c5f082162ff6c0c2931f456897334aa002e83 -Author: Simo Sorce -Date: Fri Mar 7 11:33:26 2008 -0500 - - Enable use of Relocations Read-Only, if supported, for enhanced security. - -diff --git a/source/Makefile.in b/source/Makefile.in -index ac33a11..376d24c 100644 ---- a/source/Makefile.in -+++ b/source/Makefile.in -@@ -43,8 +43,8 @@ CPPFLAGS=-DHAVE_CONFIG_H @CPPFLAGS@ - - EXEEXT=@EXEEXT@ - AR=@AR@ --LDSHFLAGS=@LDSHFLAGS@ @LDFLAGS@ --LDFLAGS=@PIE_LDFLAGS@ @LDFLAGS@ -+LDSHFLAGS=@LDSHFLAGS@ @RELRO_LDFLAGS@ @LDFLAGS@ -+LDFLAGS=@PIE_LDFLAGS@ @RELRO_LDFLAGS@ @LDFLAGS@ - - WINBIND_NSS_LDSHFLAGS=@WINBIND_NSS_LDSHFLAGS@ @LDFLAGS@ - AWK=@AWK@ -diff --git a/source/configure.in b/source/configure.in -index 056c0f8..f884d93 100644 ---- a/source/configure.in -+++ b/source/configure.in -@@ -73,6 +73,7 @@ AC_SUBST(HOST_OS) - AC_SUBST(PICFLAG) - AC_SUBST(PIE_CFLAGS) - AC_SUBST(PIE_LDFLAGS) -+AC_SUBST(RELRO_LDFLAGS) - AC_SUBST(SHLIBEXT) - AC_SUBST(INSTALLLIBCMD_SH) - AC_SUBST(INSTALLLIBCMD_A) -@@ -1513,6 +1514,32 @@ EOF - fi - fi - -+# Set defaults -+RELRO_LDFLAGS="" -+AC_ARG_ENABLE(relro, [AS_HELP_STRING([--enable-relro], [Turn on Relocations Read-Only (relro) support if available (default=yes)])]) -+ -+if test "x$enable_relro" != xno -+then -+ AC_CACHE_CHECK([for -Wl,-z,relro], samba_cv_relro, -+ [ -+ cat > conftest.c <&AS_MESSAGE_LOG_FD]) -+ then -+ samba_cv_relro=yes -+ else -+ samba_cv_relro=no -+ fi -+ rm -f conftest* -+ ]) -+ if test x"${samba_cv_relro}" = x"yes" -+ then -+ RELRO_LDFLAGS="-Wl,-z,relro" -+ fi -+fi -+ - # Assume non-shared by default and override below - BLDSHARED="false" - diff --git a/samba-3.2.0pre3-join.diff b/samba-3.2.0pre3-join.diff deleted file mode 100644 index 26d2307..0000000 --- a/samba-3.2.0pre3-join.diff +++ /dev/null @@ -1,66 +0,0 @@ -commit f3251ba03a69c2fd0335861177159a32b2bc9477 -Author: Günther Deschner -Date: Wed May 14 23:50:25 2008 +0200 - - Fix Bug #5465 (joining with createcomputer=ou1/ou2/ou3). - - Guenther - -diff --git a/source/libads/ldap.c b/source/libads/ldap.c -index 24eb114..99fd645 100644 ---- a/source/libads/ldap.c -+++ b/source/libads/ldap.c -@@ -3595,18 +3595,18 @@ const char *ads_get_extended_right_name_by_guid(ADS_STRUCT *ads, - - ADS_STATUS ads_check_ou_dn(TALLOC_CTX *mem_ctx, - ADS_STRUCT *ads, -- const char *account_ou) -+ const char **account_ou) - { - struct ldb_dn *name_dn = NULL; - const char *name = NULL; - char *ou_string = NULL; - -- name_dn = ldb_dn_explode(mem_ctx, account_ou); -+ name_dn = ldb_dn_explode(mem_ctx, *account_ou); - if (name_dn) { - return ADS_SUCCESS; - } - -- ou_string = ads_ou_string(ads, account_ou); -+ ou_string = ads_ou_string(ads, *account_ou); - if (!ou_string) { - return ADS_ERROR_LDAP(LDAP_INVALID_DN_SYNTAX); - } -@@ -3623,8 +3623,8 @@ ADS_STATUS ads_check_ou_dn(TALLOC_CTX *mem_ctx, - return ADS_ERROR_LDAP(LDAP_INVALID_DN_SYNTAX); - } - -- account_ou = talloc_strdup(mem_ctx, name); -- if (!account_ou) { -+ *account_ou = talloc_strdup(mem_ctx, name); -+ if (!*account_ou) { - return ADS_ERROR_LDAP(LDAP_NO_MEMORY); - } - -diff --git a/source/libnet/libnet_join.c b/source/libnet/libnet_join.c -index 36700b2..4cfdd50 100644 ---- a/source/libnet/libnet_join.c -+++ b/source/libnet/libnet_join.c -@@ -207,7 +207,7 @@ static ADS_STATUS libnet_join_precreate_machine_acct(TALLOC_CTX *mem_ctx, - const char *attrs[] = { "dn", NULL }; - bool moved = false; - -- status = ads_check_ou_dn(mem_ctx, r->in.ads, r->in.account_ou); -+ status = ads_check_ou_dn(mem_ctx, r->in.ads, &r->in.account_ou); - if (!ADS_ERR_OK(status)) { - return status; - } -@@ -1486,7 +1486,6 @@ static int libnet_destroy_UnjoinCtx(struct libnet_UnjoinCtx *r) - unsetenv(KRB5_ENV_CCNAME); - } - -- - return 0; - } - diff --git a/samba-3.2.0pre3-smbclient.diff b/samba-3.2.0pre3-smbclient.diff deleted file mode 100644 index a594bfa..0000000 --- a/samba-3.2.0pre3-smbclient.diff +++ /dev/null @@ -1,29 +0,0 @@ -commit 687275cd532f8f8ad710acd222a0c76625da53c6 -Author: Jeremy Allison -Date: Thu May 8 22:07:35 2008 -0700 - - Fix bug #5452 - smbclient put always creates zero length - files. Thanks to Kai Engert for - reporting. - Jeremy. - -diff --git a/source/lib/xfile.c b/source/lib/xfile.c -index d20a95b..e44a92d 100644 ---- a/source/lib/xfile.c -+++ b/source/lib/xfile.c -@@ -263,13 +263,13 @@ int x_fflush(XFILE *f) - - if (f->flags & X_FLAG_ERROR) return -1; - -+ if (f->bufused == 0 || !f->buf) return 0; -+ - if ((f->open_flags & O_ACCMODE) != O_WRONLY) { - errno = EINVAL; - return -1; - } - -- if (f->bufused == 0 || !f->buf) return 0; -- - ret = write(f->fd, f->buf, f->bufused); - if (ret == -1) return -1; - diff --git a/samba-3.2.0rc1-capget.diff b/samba-3.2.0rc1-capget.diff new file mode 100644 index 0000000..c1a8614 --- /dev/null +++ b/samba-3.2.0rc1-capget.diff @@ -0,0 +1,113 @@ + source/include/smb.h | 3 +- + source/lib/system.c | 5 ++++ + source/smbd/oplock_linux.c | 48 +------------------------------------------ + 3 files changed, 9 insertions(+), 47 deletions(-) + +diff --git a/source/include/smb.h b/source/include/smb.h +index d6b026d..38d9b7b 100644 +--- a/source/include/smb.h ++++ b/source/include/smb.h +@@ -1703,7 +1703,8 @@ minimum length == 18. + + enum smbd_capability { + KERNEL_OPLOCK_CAPABILITY, +- DMAPI_ACCESS_CAPABILITY ++ DMAPI_ACCESS_CAPABILITY, ++ LEASE_CAPABILITY + }; + + /* if a kernel does support oplocks then a structure of the following +diff --git a/source/lib/system.c b/source/lib/system.c +index fa50955..eabb6d6 100644 +--- a/source/lib/system.c ++++ b/source/lib/system.c +@@ -733,6 +733,11 @@ static bool set_process_capability(enum smbd_capability capability, + cap_vals[num_cap_vals++] = CAP_MKNOD; + #endif + break; ++ case LEASE_CAPABILITY: ++#ifdef CAP_LEASE ++ cap_vals[num_cap_vals++] = CAP_LEASE; ++#endif ++ break; + } + + SMB_ASSERT(num_cap_vals <= ARRAY_SIZE(cap_vals)); +diff --git a/source/smbd/oplock_linux.c b/source/smbd/oplock_linux.c +index fa7cb42..08df228 100644 +--- a/source/smbd/oplock_linux.c ++++ b/source/smbd/oplock_linux.c +@@ -22,22 +22,6 @@ + + #if HAVE_KERNEL_OPLOCKS_LINUX + +-/* these can be removed when they are in glibc headers */ +-struct cap_user_header { +- uint32 version; +- int pid; +-} header; +-struct cap_user_data { +- uint32 effective; +- uint32 permitted; +- uint32 inheritable; +-} data; +- +-extern int capget(struct cap_user_header * hdrp, +- struct cap_user_data * datap); +-extern int capset(struct cap_user_header * hdrp, +- const struct cap_user_data * datap); +- + static SIG_ATOMIC_T signals_received; + #define FD_PENDING_SIZE 100 + static SIG_ATOMIC_T fd_pending_array[FD_PENDING_SIZE]; +@@ -75,40 +59,12 @@ static void signal_handler(int sig, siginfo_t *info, void *unused) + sys_select_signal(RT_SIGNAL_LEASE); + } + +-/**************************************************************************** +- Try to gain a linux capability. +-****************************************************************************/ +- +-static void set_capability(unsigned capability) +-{ +-#ifndef _LINUX_CAPABILITY_VERSION +-#define _LINUX_CAPABILITY_VERSION 0x19980330 +-#endif +- header.version = _LINUX_CAPABILITY_VERSION; +- header.pid = 0; +- +- if (capget(&header, &data) == -1) { +- DEBUG(3,("Unable to get kernel capabilities (%s)\n", +- strerror(errno))); +- return; +- } +- +- if (0 == (data.effective & (1<= 0:0.64 @@ -252,12 +250,10 @@ cp %{SOURCE11} packaging/Fedora/ #%patch104 -p1 -b .nmbd-netbiosname # FIXME: does not apply %patch107 -p1 -b .grouppwd #%patch108 -p1 -b .non-ascii-domain -%patch110 -p1 -b .smbspool +#%patch110 -p1 -b .smbspool # FIXME: does not apply #%patch111 -p1 -b .smbclient # FIXME: does not apply #%patch200 -p0 -b .inotify # FIXME: does not compile -%patch207 -p1 -b .roreloc -%patch208 -p1 -b .smbclient -%patch209 -p1 -b .join +%patch220 -p1 -b .capget mv source/VERSION source/VERSION.orig sed -e 's/SAMBA_VERSION_VENDOR_SUFFIX=$/&\"%{release}\"/' < source/VERSION.orig > source/VERSION @@ -434,9 +430,9 @@ install -m 644 source/lib/talloc/talloc.pc $RPM_BUILD_ROOT%{_libdir}/pkgconfig/t ln -s libtalloc.so.1 $RPM_BUILD_ROOT%{_libdir}/libtalloc.so rm -f $RPM_BUILD_ROOT%{_libdir}/samba/libtdb.so $RPM_BUILD_ROOT%{_libdir}/samba/libtdb.a || true -install -m 755 source/bin/libtdb.so $RPM_BUILD_ROOT%{_libdir}/libtdb.so.0 +install -m 755 source/bin/libtdb.so $RPM_BUILD_ROOT%{_libdir}/libtdb.so.1 install -m 644 source/lib/tdb/tdb.pc $RPM_BUILD_ROOT%{_libdir}/pkgconfig/tdb.pc -ln -s libtdb.so.0 $RPM_BUILD_ROOT%{_libdir}/libtdb.so +ln -s libtdb.so.1 $RPM_BUILD_ROOT%{_libdir}/libtdb.so rm -f $RPM_BUILD_ROOT%{_libdir}/samba/libwbclient.so $RPM_BUILD_ROOT%{_libdir}/samba/libwbclient.a || true install -m 755 source/bin/libwbclient.so $RPM_BUILD_ROOT%{_libdir}/libwbclient.so.0 @@ -852,6 +848,13 @@ exit 0 %{_datadir}/pixmaps/samba/logo-small.png %changelog +* Fri May 23 2008 Guenther Deschner - 3.2.0-1.pre3.13 +- Update to 3.2.0rc1 + +* Wed May 21 2008 Simo Sorce - 3.2.0-1.pre3.12 +- impossit made iimpossible to print against Vista and XP SP3 as servers +- resolves: #439154 + * Thu May 15 2008 Guenther Deschner - 3.2.0-1.pre3.11 - Add "net ads join createcomputer=ou1/ou2/ou3" fix (BZO #5465) diff --git a/sources b/sources index 9f6fef8..17cbdc2 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -b8d013bdb8f65f494778ffcb50cf0215 samba-3.2.0pre3.tar.gz +df46b81d4921136af3aaade65c054d31 samba-3.2.0rc1.tar.gz