Hello community,

here is the log from the commit of package samba for openSUSE:Factory checked 
in at 2014-03-18 13:38:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/samba (Old)
 and      /work/SRC/openSUSE:Factory/.samba.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "samba"

Changes:
--------
--- /work/SRC/openSUSE:Factory/samba/samba.changes      2014-03-01 
14:38:42.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.samba.new/samba.changes 2014-03-18 
13:38:18.000000000 +0100
@@ -1,0 +2,37 @@
+Wed Mar 12 13:57:29 UTC 2014 - [email protected]
+
+- Depend only on %version with all manual Provides and Requires; (bnc#844307).
+
+-------------------------------------------------------------------
+Tue Mar 11 18:07:47 UTC 2014 - [email protected]
+
+- Update to 4.1.6.
+  + Password lockout not enforced for SAMR password changes; CVE-2013-4496;
+    (bnc#849224).
+  + smbcacls can remove a file or directory ACL by mistake; CVE-2013-6442;
+    (bnc#855866).
+
+-------------------------------------------------------------------
+Tue Mar 11 13:10:59 UTC 2014 - [email protected]
+
+- Password lockout not enforced for SAMR password changes;
+  CVE-2013-4496; (bnc#849224).
+
+-------------------------------------------------------------------
+Tue Mar 11 10:21:46 UTC 2014 - [email protected]
+
+- Call update-apparmor-samba-profile via ExecStartPre too; (bnc#867665).
+
+-------------------------------------------------------------------
+Mon Mar 10 16:00:03 UTC 2014 - [email protected]
+
+- samba4 smbcalcs --chown | --chgrp dacl regression; CVE-2013-6442;
+  (bnc#855866).
+
+-------------------------------------------------------------------
+Tue Mar  4 17:20:33 UTC 2014 - [email protected]
+
+- Retry named pipe open requests on STATUS_PIPE_NOT_AVAILABLE; (bso#10484);
+  (bnc#865095).
+
+-------------------------------------------------------------------

Old:
----
  samba-4.1.5.tar.asc
  samba-4.1.5.tar.gz

New:
----
  samba-4.1.6.tar.asc
  samba-4.1.6.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ samba.spec ++++++
--- /var/tmp/diff_new_pack.zTLniJ/_old  2014-03-18 13:38:20.000000000 +0100
+++ /var/tmp/diff_new_pack.zTLniJ/_new  2014-03-18 13:38:20.000000000 +0100
@@ -117,7 +117,7 @@
 BuildRequires:  gpg-offline
 BuildRequires:  systemd
 %endif
-%define        samba_ver 4.1.5
+%define        samba_ver 4.1.6
 %define        samba_ver_suffix %nil
 %if "%{samba_ver_suffix}" == ""
 %define samba_source_location 
http://ftp.samba.org/pub/samba/stable/samba-%{version}.tar.gz
@@ -144,17 +144,17 @@
 %else
 %define        build_make_smp_mflags %{?jobs:-j%jobs}
 %endif
-%define SOURCE_TIMESTAMP 3193
+%define SOURCE_TIMESTAMP 3208
 %define BRANCH %{version}
 %global with_mitkrb5 1
 %global with_dc 0
 %global with_get_printing_ticket 0
-Version:        4.1.5
+Version:        4.1.6
 Release:        0
 License:        GPL-3.0+
 Url:            http://www.samba.org/
 Group:          Productivity/Networking/Samba
-Provides:       samba-gplv3 = %{version}-%{release}
+Provides:       samba-gplv3 = %{version}
 Obsoletes:      samba-gplv3 < %{version}
 Requires:       samba-client >= %{version}
 %if 0%{?suse_version} > 1030
@@ -254,10 +254,10 @@
 License:        GPL-3.0+
 Summary:        Samba Client Utilities
 Group:          Productivity/Networking/Samba
-Provides:       samba-gplv3-client = %{version}-%{release}
+Provides:       samba-gplv3-client = %{version}
 Provides:       smbfs
 Obsoletes:      samba-gplv3-client < %{version}
-Provides:       samba-client-gplv2 = %{version}-%{release}
+Provides:       samba-client-gplv2 = %{version}
 Obsoletes:      samba-client-gplv2 < %{version}
 %if 0%{?suse_version} > 0
 PreReq:         %{?fillup_prereq}
@@ -313,9 +313,9 @@
 Group:          Documentation/Other
 PreReq:         coreutils
 PreReq:         findutils
-Provides:       samba-gplv3-doc = %{version}-%{release}
+Provides:       samba-gplv3-doc = %{version}
 Obsoletes:      samba-gplv3-doc < %{version}
-Provides:       samba-doc-gplv2 = %{version}-%{release}
+Provides:       samba-doc-gplv2 = %{version}
 Obsoletes:      samba-doc-gplv2 < %{version}
 %if 0%{?suse_version} > 1110
 BuildArch:      noarch
@@ -337,7 +337,7 @@
 Summary:        Wrapper binary for kerberized printing
 Group:          Productivity/Networking/Samba
 PreReq:         coreutils
-Provides:       samba-gplv3-krb-printing = %{version}-%{release}
+Provides:       samba-gplv3-krb-printing = %{version}
 Obsoletes:      samba-gplv3-krb-printing < %{version}
 %if 0%{?suse_version} > 1000
 PreReq:         permissions
@@ -388,7 +388,7 @@
 License:        GPL-3.0+
 Summary:        Samba Python libraries
 Group:          Applications/System
-Requires:       %{name} = %{version}-%{release}
+Requires:       %{name} = %{version}
 Requires:       python-tevent
 Requires:       python-tdb
 Requires:       pyldb
@@ -406,8 +406,8 @@
 License:        GPL-3.0+
 Summary:        Testing tools for Samba servers and clients
 Group:          Applications/System
-Requires:       samba = %{version}-%{release}
-Requires:       samba-winbind = %{version}-%{release}
+Requires:       samba = %{version}
+Requires:       samba-winbind = %{version}
 PreReq:         /sbin/ldconfig
 
 %description test
@@ -435,7 +435,7 @@
 License:        GPL-3.0+
 Summary:        Winbind Daemon and Tool
 Group:          Productivity/Networking/Samba
-Provides:       samba-gplv3-winbind = %{version}-%{release}
+Provides:       samba-gplv3-winbind = %{version}
 Obsoletes:      samba-gplv3-winbind < %{version}
 Provides:       samba-client:/usr/sbin/winbindd
 Requires:       samba-client >= %{version}
@@ -479,7 +479,7 @@
 License:        GPL-3.0+
 Summary:        Development files for the DCE/RPC ATSVC library
 Group:          Development/Libraries/C and C++
-Requires:       libdcerpc-atsvc0 = %{version}-%{release}
+Requires:       libdcerpc-atsvc0 = %{version}
 
 %description -n libdcerpc-atsvc-devel
 ATSVC is a DCE/RPC based protocol used by CIFS hosts to
@@ -518,7 +518,7 @@
 License:        GPL-3.0+
 Summary:        Development files for the SAMR protocol library
 Group:          Development/Libraries/C and C++
-Requires:       libdcerpc-samr0 = %{version}-%{release}
+Requires:       libdcerpc-samr0 = %{version}
 
 %description -n libdcerpc-samr-devel
 This subpackage contains libraries and header files for developing
@@ -549,9 +549,9 @@
 License:        GPL-3.0+
 Summary:        Development files for the DCE/RPC library
 Group:          Development/Libraries/C and C++
-Requires:       libdcerpc0 = %{version}-%{release}
-Requires:       libdcerpc-binding0 = %{version}-%{release}
-Requires:       samba-core-devel = %{version}-%{release}
+Requires:       libdcerpc0 = %{version}
+Requires:       libdcerpc-binding0 = %{version}
+Requires:       samba-core-devel = %{version}
 
 %description -n libdcerpc-devel
 DCE/RPC, short for "Distributed Computing Environment / Remote
@@ -583,8 +583,8 @@
 License:        GPL-3.0+
 Summary:        Development files for Samba's generic security library
 Group:          Development/Libraries/C and C++
-Requires:       libgensec0 = %{version}-%{release}
-Requires:       samba-core-devel = %{version}-%{release}
+Requires:       libgensec0 = %{version}
+Requires:       samba-core-devel = %{version}
 
 %description -n libgensec-devel
 This subpackage contains libraries and header files for developing
@@ -609,8 +609,8 @@
 License:        GPL-3.0+
 Summary:        Development files for the ndr-krb5pac library
 Group:          Development/Libraries/C and C++
-Requires:       libndr-krb5pac0 = %{version}-%{release}
-Requires:       samba-core-devel = %{version}-%{release}
+Requires:       libndr-krb5pac0 = %{version}
+Requires:       samba-core-devel = %{version}
 
 %description -n libndr-krb5pac-devel
 This subpackage contains libraries and header files for developing
@@ -635,8 +635,8 @@
 License:        GPL-3.0+
 Summary:        Development files for the ndr-nbt library
 Group:          Development/Libraries/C and C++
-Requires:       libndr-nbt0 = %{version}-%{release}
-Requires:       samba-core-devel = %{version}-%{release}
+Requires:       libndr-nbt0 = %{version}
+Requires:       samba-core-devel = %{version}
 
 %description -n libndr-nbt-devel
 This subpackage contains libraries and header files for developing
@@ -661,8 +661,8 @@
 License:        GPL-3.0+
 Summary:        Development files for the libndr-standard library
 Group:          Development/Libraries/C and C++
-Requires:       libndr-standard0 = %{version}-%{release}
-Requires:       samba-core-devel = %{version}-%{release}
+Requires:       libndr-standard0 = %{version}
+Requires:       samba-core-devel = %{version}
 
 %description -n libndr-standard-devel
 This subpackage contains libraries and header files for developing
@@ -689,8 +689,8 @@
 License:        GPL-3.0+
 Summary:        Development files for the Network Data Representation library
 Group:          Development/Libraries/C and C++
-Requires:       libndr0 = %{version}-%{release}
-Requires:       samba-core-devel = %{version}-%{release}
+Requires:       libndr0 = %{version}
+Requires:       samba-core-devel = %{version}
 
 %description -n libndr-devel
 Network Data Representation (NDR) is an implementation of the
@@ -718,8 +718,8 @@
 License:        GPL-3.0+
 Summary:        Development files for the Samba3 password database library
 Group:          Development/Libraries/C and C++
-Requires:       libpdb0 = %{version}-%{release}
-Requires:       libndr-standard-devel = %{version}-%{release}
+Requires:       libpdb0 = %{version}
+Requires:       libndr-standard-devel = %{version}
 Requires:       libtevent-devel
 
 %description -n libpdb-devel
@@ -745,8 +745,8 @@
 License:        GPL-3.0+
 Summary:        Development files for the Samba Windows-style registry library
 Group:          Development/Libraries/C and C++
-Requires:       libregistry0 = %{version}-%{release}
-Requires:       samba-core-devel = %{version}-%{release}
+Requires:       libregistry0 = %{version}
+Requires:       samba-core-devel = %{version}
 
 %description -n libregistry-devel
 This subpackage contains libraries and header files for developing
@@ -771,7 +771,7 @@
 License:        GPL-3.0+
 Summary:        Development files for the Samba credential management library
 Group:          Development/Libraries/C and C++
-Requires:       libsamba-credentials0 = %{version}-%{release}
+Requires:       libsamba-credentials0 = %{version}
 
 %description -n libsamba-credentials-devel
 This subpackage contains libraries and header files for developing
@@ -796,8 +796,8 @@
 License:        GPL-3.0+
 Summary:        Development files for the host-wide Samba configuration library
 Group:          Development/Libraries/C and C++
-Requires:       libsamba-hostconfig0 = %{version}-%{release}
-Requires:       samba-core-devel = %{version}-%{release}
+Requires:       libsamba-hostconfig0 = %{version}
+Requires:       samba-core-devel = %{version}
 
 %description -n libsamba-hostconfig-devel
 This subpackage contains libraries and header files for developing
@@ -822,7 +822,7 @@
 License:        GPL-3.0+
 Summary:        Development files for the Samba AD Group Policy library
 Group:          Development/Libraries/C and C++
-Requires:       libsamba-policy0 = %{version}-%{release}
+Requires:       libsamba-policy0 = %{version}
 
 %description -n libsamba-policy-devel
 This subpackage contains libraries and header files for developing
@@ -847,8 +847,8 @@
 License:        GPL-3.0+
 Summary:        Development files for the Samba utility function library
 Group:          Development/Libraries/C and C++
-Requires:       libsamba-util0 = %{version}-%{release}
-Requires:       samba-core-devel = %{version}-%{release}
+Requires:       libsamba-util0 = %{version}
+Requires:       samba-core-devel = %{version}
 
 %description -n libsamba-util-devel
 This subpackage contains libraries and header files for developing
@@ -873,7 +873,7 @@
 License:        GPL-3.0+
 Summary:        Development files for Samba's SAM database library
 Group:          Development/Libraries/C and C++
-Requires:       libsamdb0 = %{version}-%{release}
+Requires:       libsamdb0 = %{version}
 
 %description -n libsamdb-devel
 This subpackage contains libraries and header files for developing
@@ -898,8 +898,8 @@
 License:        GPL-3.0+
 Summary:        Development files for Samba4's raw SMB client library
 Group:          Development/Libraries/C and C++
-Requires:       libsmbclient-raw0 = %{version}-%{release}
-Requires:       samba-core-devel = %{version}-%{release}
+Requires:       libsmbclient-raw0 = %{version}
+Requires:       samba-core-devel = %{version}
 
 %description -n libsmbclient-raw-devel
 This subpackage contains libraries and header files for developing
@@ -926,7 +926,7 @@
 License:        GPL-3.0+
 Summary:        Development files for the Samba3 configuration library
 Group:          Development/Libraries/C and C++
-Requires:       libsmbconf0 = %{version}-%{release}
+Requires:       libsmbconf0 = %{version}
 
 %description -n libsmbconf-devel
 libsmbconf is a library to read or, based on the backend, modify the
@@ -955,7 +955,7 @@
 License:        GPL-3.0+
 Summary:        Development files for the smbldap library
 Group:          Development/Libraries/C and C++
-Requires:       libsmbldap0 = %{version}-%{release}
+Requires:       libsmbldap0 = %{version}
 Requires:       libtalloc-devel
 Requires:       libtevent-devel
 Requires:       openldap2-devel
@@ -988,8 +988,8 @@
 Summary:        Development files for the Samba tevent utility library
 Group:          Development/Libraries/C and C++
 Requires:       libtevent-devel
-Requires:       libtevent-util0 = %{version}-%{release}
-Requires:       samba-core-devel = %{version}-%{release}
+Requires:       libtevent-util0 = %{version}
+Requires:       samba-core-devel = %{version}
 
 %description -n libtevent-util-devel
 The libtevent-util library contains functions to convert tevent error
@@ -1005,7 +1005,7 @@
 %package -n %{libsmbclient_name}
 License:        GPL-3.0+
 %if 0%{?suse_version} > 1030
-Provides:       libsmbclient = %{version}-%{release}
+Provides:       libsmbclient = %{version}
 Obsoletes:      libsmbclient
 %endif
 Summary:        Samba Client Library
@@ -1027,7 +1027,7 @@
 Group:          Development/Libraries/C and C++
 BuildRequires:  %{pkgconfig_req}
 Requires:       krb5-devel
-Requires:       %{libsmbclient_name} = %{version}-%{release}
+Requires:       %{libsmbclient_name} = %{version}
 
 %description -n libsmbclient-devel
 This package contains the static libraries and header files needed to
@@ -1055,7 +1055,7 @@
 Summary:        Libraries and Header Files to Develop Programs with netapi 
Support
 Group:          Development/Libraries/C and C++
 BuildRequires:  %{pkgconfig_req}
-Requires:       %{libnetapi_name} = %{version}-%{release}
+Requires:       %{libnetapi_name} = %{version}
 
 %description -n libnetapi-devel
 This package contains the static libraries and header files needed to
@@ -1068,7 +1068,7 @@
 %package -n %{libsmbsharemodes_name}
 License:        GPL-3.0+
 %if 0%{?suse_version} > 1030
-Provides:       libsmbsharemodes = %{version}-%{release}
+Provides:       libsmbsharemodes = %{version}
 Obsoletes:      libsmbsharemodes
 %endif
 Summary:        Samba smbsharemodes Library
@@ -1087,7 +1087,7 @@
 Summary:        Libraries and Header Files to Develop Programs with 
smbsharemodes Support
 Group:          Development/Libraries/C and C++
 BuildRequires:  %{pkgconfig_req}
-Requires:       %{libsmbsharemodes_name} = %{version}-%{release}
+Requires:       %{libsmbsharemodes_name} = %{version}
 
 %description -n libsmbsharemodes-devel
 This package contains the static libraries and header files needed to
@@ -1115,7 +1115,7 @@
 Summary:        Libraries and Header Files to Develop Programs with wbclient 
Support
 Group:          Development/Libraries/C and C++
 BuildRequires:  %{pkgconfig_req}
-Requires:       %{libwbclient_name} = %{version}-%{release}
+Requires:       %{libwbclient_name} = %{version}
 
 %description -n libwbclient-devel
 This package contains the static libraries and header files needed to
@@ -1366,6 +1366,8 @@
 ${srv_name^^}DOPTIONS=\"-D\"\n" >>SUSE.sysconfig.${srv_name}
        ln -s ../../%{_sbindir}/service %{buildroot}/%{_sbindir}/rc${srv_name}
 done
+sed -i -e 
"s@EnvironmentFile=-/etc/sysconfig/samba@EnvironmentFile=-/etc/sysconfig/samba\nExecStartPre=/usr/share/samba/update-apparmor-samba-profile@g"
 \
+       %{buildroot}/%{_unitdir}/smb.service
 head -n 2 ../packaging/systemd/samba.sysconfig > \
        %{buildroot}%_var/adm/fillup-templates/sysconfig.samba
 cat SUSE.sysconfig.{nmb,smb} >>\

++++++ patches.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches/samba.org/ca3998d0436747f637b04eb32eb6c17fce3e2159 
new/patches/samba.org/ca3998d0436747f637b04eb32eb6c17fce3e2159
--- old/patches/samba.org/ca3998d0436747f637b04eb32eb6c17fce3e2159      
1970-01-01 01:00:00.000000000 +0100
+++ new/patches/samba.org/ca3998d0436747f637b04eb32eb6c17fce3e2159      
2014-03-11 15:25:27.000000000 +0100
@@ -0,0 +1,86 @@
+From dc33e95df1583849afb46947734cb59646667b88 Mon Sep 17 00:00:00 2001
+From: David Disseldorp <[email protected]>
+Date: Thu, 27 Feb 2014 19:46:14 +0100
+Subject: [PATCH] vfs: propagate snapshot enumeration errors
+
+The current FSCTL_GET_SHADOW_COPY_DATA/FSCTL_SRV_ENUMERATE_SNAPSHOTS
+handler squashes all non-ENOSYS errors into an NT_STATUS_UNSUCCESSFUL
+response.
+This commit ensures that all errors are propagated up to the client, to
+aid debugging.
+The Windows Explorer "Previous Versions" dialogue doesn't appear to
+distinguish between error codes. It displays "There are no previous
+versions available".
+
+Signed-off-by: David Disseldorp <[email protected]>
+Reviewed-by: Jeremy Allison <[email protected]>
+
+Autobuild-User(master): Jeremy Allison <[email protected]>
+Autobuild-Date(master): Thu Feb 27 22:42:50 CET 2014 on sn-devel-104
+
+(cherry picked from commit ca3998d0436747f637b04eb32eb6c17fce3e2159)
+---
+ source3/modules/vfs_default.c | 26 ++++++++++++++++----------
+ 1 file changed, 16 insertions(+), 10 deletions(-)
+
+diff --git source3/modules/vfs_default.c source3/modules/vfs_default.c
+index bf64dbd..38b8b54 100644
+--- source3/modules/vfs_default.c
++++ source3/modules/vfs_default.c
+@@ -1021,12 +1021,12 @@ static NTSTATUS vfswrap_fsctl(struct vfs_handle_struct 
*handle,
+ {
+       const char *in_data = (const char *)_in_data;
+       char **out_data = (char **)_out_data;
++      NTSTATUS status;
+ 
+       switch (function) {
+       case FSCTL_SET_SPARSE:
+       {
+               bool set_sparse = true;
+-              NTSTATUS status;
+ 
+               if (in_len >= 1 && in_data[0] == 0) {
+                       set_sparse = false;
+@@ -1123,16 +1123,23 @@ static NTSTATUS vfswrap_fsctl(struct vfs_handle_struct 
*handle,
+                * Call the VFS routine to actually do the work.
+                */
+               if (SMB_VFS_GET_SHADOW_COPY_DATA(fsp, shadow_data, labels)!=0) {
+-                      TALLOC_FREE(shadow_data);
+-                      if (errno == ENOSYS) {
+-                              DEBUG(5,("FSCTL_GET_SHADOW_COPY_DATA: 
connectpath %s, not supported.\n", 
+-                                      fsp->conn->connectpath));
+-                              return NT_STATUS_NOT_SUPPORTED;
++                      int log_lev = 0;
++                      if (errno == 0) {
++                              /* broken module didn't set errno on error */
++                              status = NT_STATUS_UNSUCCESSFUL;
+                       } else {
+-                              DEBUG(0,("FSCTL_GET_SHADOW_COPY_DATA: 
connectpath %s, failed.\n", 
+-                                      fsp->conn->connectpath));
+-                              return NT_STATUS_UNSUCCESSFUL;
++                              status = map_nt_error_from_unix(errno);
++                              if (NT_STATUS_EQUAL(status,
++                                                  NT_STATUS_NOT_SUPPORTED)) {
++                                      log_lev = 5;
++                              }
+                       }
++                      DEBUG(log_lev, ("FSCTL_GET_SHADOW_COPY_DATA: "
++                                      "connectpath %s, failed - %s.\n",
++                                      fsp->conn->connectpath,
++                                      nt_errstr(status)));
++                      TALLOC_FREE(shadow_data);
++                      return status;
+               }
+ 
+               labels_data_count = (shadow_data->num_volumes * 2 * 
+@@ -1260,7 +1267,6 @@ static NTSTATUS vfswrap_fsctl(struct vfs_handle_struct 
*handle,
+                * and SEEK_DATA/SEEK_HOLE on Solaris is needed to make
+                * this FSCTL correct for sparse files.
+                */
+-              NTSTATUS status;
+               uint64_t offset, length;
+               char *out_data_tmp = NULL;
+ 
+-- 
+1.8.4.5
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches/samba.org/ebe6627c1f0e6b488a0c456860a055fd5701e84d 
new/patches/samba.org/ebe6627c1f0e6b488a0c456860a055fd5701e84d
--- old/patches/samba.org/ebe6627c1f0e6b488a0c456860a055fd5701e84d      
1970-01-01 01:00:00.000000000 +0100
+++ new/patches/samba.org/ebe6627c1f0e6b488a0c456860a055fd5701e84d      
2014-03-11 15:25:27.000000000 +0100
@@ -0,0 +1,132 @@
+From a357ecdadec723d2f61076f3d6589c908f872682 Mon Sep 17 00:00:00 2001
+From: David Disseldorp <[email protected]>
+Date: Mon, 3 Mar 2014 19:49:35 +0100
+Subject: [PATCH] rpc_client: retry open on STATUS_PIPE_NOT_AVAILABLE
+
+Windows Server starts some named pipe services on demand, and responds
+to initial open requests with STATUS_PIPE_NOT_AVAILABLE. The FssagentRpc
+named pipe on Windows Server 2012 exhibits this behaviour.
+
+This change sees rpcclient retry named pipe open requests when the
+server responds with STATUS_PIPE_NOT_AVAILABLE. The retry logic is
+contained in an asynchronous tevent_timer callback, to allow for
+non-blocking callers.
+
+Signed-off-by: David Disseldorp <[email protected]>
+Reviewed-by: Jeremy Allison <[email protected]>
+(cherry picked from commit ebe6627c1f0e6b488a0c456860a055fd5701e84d)
+[[email protected]: rebasead for 4.1 without 46d29d46bc065d51e3f7ca6892]
+---
+ source3/rpc_client/rpc_transport_np.c | 57 ++++++++++++++++++++++++++++++-----
+ 1 file changed, 50 insertions(+), 7 deletions(-)
+
+diff --git source3/rpc_client/rpc_transport_np.c 
source3/rpc_client/rpc_transport_np.c
+index 78caa5b..f0696ad 100644
+--- source3/rpc_client/rpc_transport_np.c
++++ source3/rpc_client/rpc_transport_np.c
+@@ -21,12 +21,18 @@
+ #include "../lib/util/tevent_ntstatus.h"
+ #include "rpc_client/rpc_transport.h"
+ #include "libsmb/cli_np_tstream.h"
++#include "client.h"
+ 
+ #undef DBGC_CLASS
+ #define DBGC_CLASS DBGC_RPC_CLI
+ 
+ struct rpc_transport_np_init_state {
+       struct rpc_cli_transport *transport;
++      int retries;
++      struct tevent_context *ev;
++      struct cli_state *cli;
++      struct timeval abs_timeout;
++      const char *pipe_name;
+ };
+ 
+ static void rpc_transport_np_init_pipe_open(struct tevent_req *subreq);
+@@ -38,7 +44,6 @@ struct tevent_req *rpc_transport_np_init_send(TALLOC_CTX 
*mem_ctx,
+ {
+       struct tevent_req *req;
+       struct rpc_transport_np_init_state *state;
+-      const char *pipe_name;
+       struct tevent_req *subreq;
+ 
+       req = tevent_req_create(mem_ctx, &state,
+@@ -47,16 +52,19 @@ struct tevent_req *rpc_transport_np_init_send(TALLOC_CTX 
*mem_ctx,
+               return NULL;
+       }
+ 
+-      pipe_name = get_pipe_name_from_syntax(state, abstract_syntax);
+-      if (tevent_req_nomem(pipe_name, req)) {
++      state->ev = ev;
++      state->cli = cli;
++      state->abs_timeout = timeval_current_ofs_msec(cli->timeout);
++      state->pipe_name = get_pipe_name_from_syntax(state, abstract_syntax);
++      if (tevent_req_nomem(state->pipe_name, req)) {
+               return tevent_req_post(req, ev);
+       }
+ 
+-      while (pipe_name[0] == '\\') {
+-              pipe_name++;
++      while (state->pipe_name[0] == '\\') {
++              state->pipe_name++;
+       }
+ 
+-      subreq = tstream_cli_np_open_send(state, ev, cli, pipe_name);
++      subreq = tstream_cli_np_open_send(state, ev, cli, state->pipe_name);
+       if (tevent_req_nomem(subreq, req)) {
+               return tevent_req_post(req, ev);
+       }
+@@ -65,6 +73,25 @@ struct tevent_req *rpc_transport_np_init_send(TALLOC_CTX 
*mem_ctx,
+       return req;
+ }
+ 
++static void rpc_transport_np_init_pipe_open_retry(struct tevent_context *ev,
++                                                struct tevent_timer *te,
++                                                struct timeval t,
++                                                void *priv_data)
++{
++      struct tevent_req *subreq;
++      struct tevent_req *req = talloc_get_type(priv_data, struct tevent_req);
++      struct rpc_transport_np_init_state *state = tevent_req_data(
++              req, struct rpc_transport_np_init_state);
++
++      subreq = tstream_cli_np_open_send(state, ev, state->cli,
++                                        state->pipe_name);
++      if (tevent_req_nomem(subreq, req)) {
++              return;
++      }
++      tevent_req_set_callback(subreq, rpc_transport_np_init_pipe_open, req);
++      state->retries++;
++}
++
+ static void rpc_transport_np_init_pipe_open(struct tevent_req *subreq)
+ {
+       struct tevent_req *req = tevent_req_callback_data(
+@@ -76,7 +103,23 @@ static void rpc_transport_np_init_pipe_open(struct 
tevent_req *subreq)
+ 
+       status = tstream_cli_np_open_recv(subreq, state, &stream);
+       TALLOC_FREE(subreq);
+-      if (!NT_STATUS_IS_OK(status)) {
++      if (NT_STATUS_EQUAL(status, NT_STATUS_PIPE_NOT_AVAILABLE)
++                              && (!timeval_expired(&state->abs_timeout))) {
++              struct tevent_timer *te;
++              /*
++               * Retry on STATUS_PIPE_NOT_AVAILABLE, Windows starts some
++               * servers (FssagentRpc) on demand.
++               */
++              DEBUG(2, ("RPC pipe %s not available, retry %d\n",
++                        state->pipe_name, state->retries));
++              te = tevent_add_timer(state->ev, state,
++                               timeval_current_ofs_msec(100 * state->retries),
++                               rpc_transport_np_init_pipe_open_retry, req);
++              if (tevent_req_nomem(te, req)) {
++                      return;
++              }
++              return;
++      } else if (!NT_STATUS_IS_OK(status)) {
+               tevent_req_nterror(req, status);
+               return;
+       }
+-- 
+1.8.4.5
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches/series new/patches/series
--- old/patches/series  2014-02-27 16:58:58.000000000 +0100
+++ new/patches/series  2014-03-11 19:22:37.000000000 +0100
@@ -72,6 +72,8 @@
 samba.org/59b09564a7edac8dc241269587146342244ce58b -p0 # bnc 860809
 samba.org/d433ad077f354de4fc1d5a155d991f417ae9967c -p0 # bnc 860809
 samba.org/4f979525e4137c536118a9c2b2b4ef798c270e27 -p0 # bnc 860809
+samba.org/ca3998d0436747f637b04eb32eb6c17fce3e2159 -p0 # bnc 865641
+samba.org/ebe6627c1f0e6b488a0c456860a055fd5701e84d -p0 # bso 10484, bnc 865095
 samba.org/fix_pc_dependencies.diff -p0
 
 # SuSE specific changes
@@ -115,7 +117,6 @@
 suse/0035-torture-add-timeout-sleeps-to-fsrvp-create-helper.patch -p0 # fate 
313346
 suse/0036-torture-add-FSRVP-message-sequence-timeout-test.patch -p0 # fate 
313346
 suse/0037-selftest-use-short-FSRVP-message-sequence-timeouts.patch -p0 # fate 
313346
-suse/0038-vfs-propagate-snapshot-enumeration-permissions-error.patch -p0 # bnc 
865641
 suse/0001-smbcacls-parse-config-file-argument-prior-to-load.patch -p0 # fate 
316474
 suse/0002-add-new-propagate-inheritance-option-for-smbcacls.patch -p0 # fate 
316474
 suse/0003-doc-describe-smbcacls-propagate-inheritance.patch -p0 # fate 316474
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches/suse/0008-vfs-add-snapshot-create-delete-hooks.patch 
new/patches/suse/0008-vfs-add-snapshot-create-delete-hooks.patch
--- old/patches/suse/0008-vfs-add-snapshot-create-delete-hooks.patch    
2014-02-27 16:58:58.000000000 +0100
+++ new/patches/suse/0008-vfs-add-snapshot-create-delete-hooks.patch    
2014-03-11 16:47:42.000000000 +0100
@@ -348,7 +348,7 @@
  /* Directory operations */
  
  static DIR *vfswrap_opendir(vfs_handle_struct *handle, const char *fname, 
const char *mask, uint32 attr)
-@@ -2479,6 +2536,11 @@ static struct vfs_fn_pointers vfs_default_fns = {
+@@ -2485,6 +2542,11 @@ static struct vfs_fn_pointers vfs_default_fns = {
        .statvfs_fn = vfswrap_statvfs,
        .fs_capabilities_fn = vfswrap_fs_capabilities,
        .get_dfs_referrals_fn = vfswrap_get_dfs_referrals,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches/suse/0038-vfs-propagate-snapshot-enumeration-permissions-error.patch
 
new/patches/suse/0038-vfs-propagate-snapshot-enumeration-permissions-error.patch
--- 
old/patches/suse/0038-vfs-propagate-snapshot-enumeration-permissions-error.patch
    2014-02-27 16:58:58.000000000 +0100
+++ 
new/patches/suse/0038-vfs-propagate-snapshot-enumeration-permissions-error.patch
    1970-01-01 01:00:00.000000000 +0100
@@ -1,85 +0,0 @@
-From 581a70000abea0d3657d27dec2494d51c7481711 Mon Sep 17 00:00:00 2001
-From: David Disseldorp <[email protected]>
-Date: Wed, 26 Feb 2014 17:53:11 +0100
-Subject: [PATCH 38/38] vfs: propagate snapshot enumeration permissions errors
-
-The current FSCTL_GET_SHADOW_COPY_DATA/FSCTL_SRV_ENUMERATE_SNAPSHOTS
-handler squashes all non-ENOSYS errors into an NT_STATUS_UNSUCCESSFUL
-response.
-This commit ensures that permissions errors are propagated up to the
-client as NT_STATUS_ACCESS_DENIED, to aid debugging.
-The Windows Explorer "Previous Versions" dialogue doesn't appear to
-distinguish between error codes. It displays "There are no previous
-versions available" in both cases.
-
-Signed-off-by: David Disseldorp <[email protected]>
----
- source3/modules/vfs_default.c | 24 ++++++++++++++----------
- 1 file changed, 14 insertions(+), 10 deletions(-)
-
-diff --git source3/modules/vfs_default.c source3/modules/vfs_default.c
-index 56f95a0..ac61a5b 100644
---- source3/modules/vfs_default.c
-+++ source3/modules/vfs_default.c
-@@ -1078,19 +1078,19 @@ static NTSTATUS vfswrap_fsctl(struct vfs_handle_struct 
*handle,
- {
-       const char *in_data = (const char *)_in_data;
-       char **out_data = (char **)_out_data;
-+      NTSTATUS status;
- 
-       switch (function) {
-       case FSCTL_SET_SPARSE:
-       {
-               bool set_sparse = true;
--              NTSTATUS status;
- 
-               if (in_len >= 1 && in_data[0] == 0) {
-                       set_sparse = false;
-               }
- 
-               status = file_set_sparse(handle->conn, fsp, set_sparse);
--              
-+
-               DEBUG(NT_STATUS_IS_OK(status) ? 10 : 9,
-                     ("FSCTL_SET_SPARSE: fname[%s] set[%u] - %s\n",
-                      smb_fname_str_dbg(fsp->fsp_name), set_sparse, 
-@@ -1180,16 +1180,21 @@ static NTSTATUS vfswrap_fsctl(struct vfs_handle_struct 
*handle,
-                * Call the VFS routine to actually do the work.
-                */
-               if (SMB_VFS_GET_SHADOW_COPY_DATA(fsp, shadow_data, labels)!=0) {
--                      TALLOC_FREE(shadow_data);
-+                      int log_lev = 0;
-                       if (errno == ENOSYS) {
--                              DEBUG(5,("FSCTL_GET_SHADOW_COPY_DATA: 
connectpath %s, not supported.\n", 
--                                      fsp->conn->connectpath));
--                              return NT_STATUS_NOT_SUPPORTED;
-+                              log_lev = 5;
-+                              status = NT_STATUS_NOT_SUPPORTED;
-+                      } else if ((errno == EPERM) || (errno == EACCES)) {
-+                              status = NT_STATUS_ACCESS_DENIED;
-                       } else {
--                              DEBUG(0,("FSCTL_GET_SHADOW_COPY_DATA: 
connectpath %s, failed.\n", 
--                                      fsp->conn->connectpath));
--                              return NT_STATUS_UNSUCCESSFUL;
-+                              status = NT_STATUS_UNSUCCESSFUL;
-                       }
-+                      DEBUG(log_lev, ("FSCTL_GET_SHADOW_COPY_DATA: "
-+                                      "connectpath %s, failed - %s.\n",
-+                                      fsp->conn->connectpath,
-+                                      nt_errstr(status)));
-+                      TALLOC_FREE(shadow_data);
-+                      return status;
-               }
- 
-               labels_data_count = (shadow_data->num_volumes * 2 * 
-@@ -1317,7 +1322,6 @@ static NTSTATUS vfswrap_fsctl(struct vfs_handle_struct 
*handle,
-                * and SEEK_DATA/SEEK_HOLE on Solaris is needed to make
-                * this FSCTL correct for sparse files.
-                */
--              NTSTATUS status;
-               uint64_t offset, length;
-               char *out_data_tmp = NULL;
- 
--- 
-1.8.4.5
-

++++++ samba-4.1.5.tar.gz -> samba-4.1.6.tar.gz ++++++
/work/SRC/openSUSE:Factory/samba/samba-4.1.5.tar.gz 
/work/SRC/openSUSE:Factory/.samba.new/samba-4.1.6.tar.gz differ: char 5, line 1

++++++ vendor-files.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/vendor-files/tools/package-data 
new/vendor-files/tools/package-data
--- old/vendor-files/tools/package-data 2014-02-27 16:59:27.000000000 +0100
+++ new/vendor-files/tools/package-data 2014-03-12 15:03:41.000000000 +0100
@@ -1,2 +1,2 @@
 # This is an autogenrated file.
-SAMBA_PACKAGE_SVN_VERSION="3193"
+SAMBA_PACKAGE_SVN_VERSION="3208"

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to