#
# TODO:
-# - fix Summary and Description for python-samba package
# - look into other distro specs for valid %descriptions for samba 3
-# - review configure options
-# - fix broken --without ldap, test functionality with other bconds
-# - check tdbtool (with tdb.spec)
#
# Conditional build:
%bcond_without ads # without ActiveDirectory support
%bcond_without pgsql # without PostgreSQL support
%bcond_without python # without python libs/utils
%bcond_with ldapsam # with LDAP SAM 2.2 based auth (instead of smbpasswd)
-#%bcond_with ipv6 # with IPv6 support
-#
+
# ADS requires krb5 and LDAP
%if %{without krb5} || %{without ldap}
%undefine with_ads
%endif
-%define vscan_version 0.3.5
+%define vscan_version 0.3.6
Summary: SMB server
Summary(cs): Server SMB
Summary(da): SMB server
Summary(uk): SMB Ë̦¤ÎÔ ÔÁ ÓÅÒ×ÅÒ
Summary(zh_CN): Samba ¿Í»§¶ËºÍ·þÎñÆ÷
Name: samba
-Version: 3.0.9
-Release: 4
+Version: 3.0.14a
+Release: 0.1
Epoch: 1
License: GPL v2
Group: Networking/Daemons
Source0: http://us1.samba.org/samba/ftp/%{name}-%{version}.tar.gz
-# Source0-md5: 9cf2bcef71509a81687dec8732545400
+# Source0-md5: ebee37e66a8b5f6fd328967dc09088e8
Source1: smb.init
Source2: %{name}.pamd
Source3: swat.inetd
Source5: %{name}.logrotate
Source6: smb.conf
Source7: http://dl.sourceforge.net/openantivirus/%{name}-vscan-%{vscan_version}.tar.bz2
-# Source7-md5: 5f173d549014985d681478897135915b
+# Source7-md5: 68c9d099d942d85e68d96804b26ac788
Source8: winbind.init
Source9: winbind.sysconfig
Patch0: %{name}-statfs-workaround.patch
Patch2: %{name}-setup-python.patch
Patch3: %{name}-FHS.patch
Patch4: %{name}-case_insensitive_sql_operator.patch
-#Patch5: http://v6web.litech.org/samba/%{name}-2.2.4+IPv6-20020609.diff
-Patch6: %{name}-3_0_9-printing.patch
-Patch7: %{name}-3.0.9-CAN-2004-1154.patch
URL: http://www.samba.org/
BuildRequires: acl-devel
BuildRequires: autoconf
BuildRequires: automake
%{?with_cups:BuildRequires: cups-devel}
%{?with_krb5:BuildRequires: heimdal-devel}
+BuildRequires: libmagic-devel
BuildRequires: libtool >= 2:1.4d
BuildRequires: libxml2-devel
%if %{with mysql}
%if %{with cups}
%define cups_serverbin %{_libdir}/cups
%endif
+%define schemadir /usr/share/openldap/schema
%description
Samba provides an SMB server which can be used to provide network
Please refer to the WHATSNEW.txt document for fixup information. This
binary release includes encrypted password support. Please read the
-smb.conf file and ENCRYPTION.txt in the docs directory for
-implementation details.
+smb.conf file for implementation details.
%description -l cs
Samba poskytuje server SMB, který lze pou¾ít pro poskytování sí»ových
TCP 901 Æ÷Æ®¸¦ »ç¿ëÇÏ°Ô µÈ´Ù.
ÃÖ±Ù Á¤º¸·Î WHATSNEW.txt ÆÄÀÏÀÇ ¹®¼¸¦ Âü°íÇϵµ·Ï ÇÑ´Ù. ¹ÙÀ̳ʸ®ÀÇ
-¸±¸®Áî´Â ¾ÏÈ£ÈµÈ Æнº¿öµå¸¦ Á¦°øÇÑ´Ù. ±¸Çö¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ Á¤º¸¸¦ ¾ò±â
-À§ÇØ docs µð·ºÅ丮³»¿¡ ÀÖ´Â smb.conf ÆÄÀÏ°ú ENCRYPTION.txt ÆÄÀÏÀ»
-Àо´Ù.
+¸±¸®Áî´Â ¾ÏÈ£ÈµÈ Æнº¿öµå¸¦ Á¦°øÇÑ´Ù.
%description -l pl
Samba udostêpnia serwer SMB, który mo¿e byæ u¿yty w celu dostarczenia
Summary: Samba python tools and libraries
Summary(pl): Narzêdzia i biblioteki pythona do samby
Group: Applications/Networking
+%pyrequires_eq python-libs
%description -n python-samba
Samba python tools and libraries.
%description vfs-shadow_copy -l pl
Modu³ VFS do tworzenia automatycznych kopii danych w zasobach samby.
+%package vfs-vscan-antivir
+Summary: On-access virus scanning for samba using AntiVir
+Summary(pl): Skaner antywirusowy online wykorzystuj±cy AntiVir
+Group: Networking/Daemons
+Requires: %{name} = %{epoch}:%{version}-%{release}
+Provides: %{name}-vscan = %{epoch}:%{version}-%{release}
+
+%description vfs-vscan-antivir
+A vfs-module for samba to implement on-access scanning using the
+AntiVir antivirus software (which must be installed to use this).
+
+%description vfs-vscan-antivir -l pl
+Modu³ vfs do samby implementuj±cy skaning antywirusowy w czasie
+dostêpu do plików korzystaj±c z oprogramowania antywirusowego AntiVir
+(które musi byæ zainstalowane, aby wykorzystaæ ten modu³).
+
%package vfs-vscan-clamav
Summary: On-access virus scanning for samba using ClamAV
Summary(pl): Skaner antywirusowy online wykorzystuj±cy ClamAV
dostêpu do plików korzystaj±c z oprogramowania antywirusowego Trend
(które musi byæ zainstalowane, aby wykorzystaæ ten modu³).
+%package -n openldap-schema-samba
+Summary: Samba LDAP schema
+Summary(pl): Schemat LDAP dla samby
+Group: Networking/Daemons
+Requires(post,postun): sed >= 4.0
+Requires: openldap-servers
+
+%description -n openldap-schema-samba
+This package contains samba.schema for openldap.
+
+%description -n openldap-schema-samba -l pl
+Ten pakiet zawiera schemat samby dla openldap-a.
+
%prep
%setup -q
%patch0 -p1
-%ifarch amd64
+%if "%{_lib}" == "lib64"
%patch1 -p1
%endif
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch6 -p1
-#%{?with_ipv6:%patch5 -p1}
-%patch7 -p1
cd examples/VFS
tar xjf %{SOURCE7}
--with%{!?with_krb5:out}-krb5
%{__make} proto
-%{__make} everything pam_smbpass bin/smbget client/mount.cifs
+%{__make} everything pam_smbpass bin/smbget client/mount.cifs bin/vfstest
cd ../examples/VFS
%{__autoconf}
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,pam.d,security,sysconfig/rc-inetd} \
$RPM_BUILD_ROOT/var/{lock,log,log/archiv,spool}/samba \
- $RPM_BUILD_ROOT{/sbin,/%{_lib}/security,%{_libdir},%{_vfsdir},%{_includedir},%{_sambahome}}
+ $RPM_BUILD_ROOT{/sbin,/%{_lib}/security,%{_libdir},%{_vfsdir},%{_includedir},%{_sambahome},%{schemadir}}
cd source
%{__make} install \
install source/bin/pam_smbpass.so $RPM_BUILD_ROOT/%{_lib}/security
install source/bin/wbinfo $RPM_BUILD_ROOT%{_bindir}
install source/bin/smbget $RPM_BUILD_ROOT%{_bindir}
+install source/bin/vfstest $RPM_BUILD_ROOT%{_bindir}
mv $RPM_BUILD_ROOT%{_libdir}/samba/libsmbclient.so $RPM_BUILD_ROOT%{_libdir}/libsmbclient.so.0
mv $RPM_BUILD_ROOT%{_libdir}/samba/libsmbclient.a $RPM_BUILD_ROOT%{_libdir}/libsmbclient.a
# vscan modules
install examples/VFS/samba-vscan-%{vscan_version}/*.so $RPM_BUILD_ROOT%{_vfsdir}
-install examples/VFS/samba-vscan-%{vscan_version}/{clamav,fprot,icap,kaspersky,mks,openantivirus,sophos,trend,f-secure,nai}/*.conf $RPM_BUILD_ROOT%{_sysconfdir}/samba
+install examples/VFS/samba-vscan-%{vscan_version}/{antivir,clamav,fprot,icap,kaspersky,mks,openantivirus,sophos,trend,f-secure,nai}/*.conf $RPM_BUILD_ROOT%{_sysconfdir}/samba
touch $RPM_BUILD_ROOT/var/lock/samba/{STATUS..LCK,wins.dat,browse.dat}
mv $RPM_BUILD_ROOT%{_bindir}/tdbtool $RPM_BUILD_ROOT%{_bindir}/tdbtool_samba
+%if %{with ldap}
+install examples/LDAP/samba.schema $RPM_BUILD_ROOT%{schemadir}
+%endif
+
%clean
rm -rf $RPM_BUILD_ROOT
/etc/rc.d/init.d/rc-inetd reload
fi
+%post -n openldap-schema-samba
+if ! grep -q %{schemadir}/samba.schema /etc/openldap/slapd.conf; then
+ sed -i -e '
+ /^include.*local.schema/{
+ i\
+include %{schemadir}/samba.schema
+ }
+
+ # enable dependant schemas: cosine(uid) inetorgperson(displayName) nis(gidNumber)
+ /^#include.*\(cosine\|inetorgperson\|nis\)\.schema/{
+ s/^#//
+ }
+ ' /etc/openldap/slapd.conf
+fi
+
+if [ -f /var/lock/subsys/ldap ]; then
+ /etc/rc.d/init.d/ldap restart >&2
+fi
+
+%postun -n openldap-schema-samba
+if [ "$1" = "0" ]; then
+ if grep -q %{schemadir}/samba.schema /etc/openldap/slapd.conf; then
+ sed -i -e '
+ /^include.*\/usr\/share\/openldap\/schema\/samba.schema/d
+
+ # for symmetry it would be nice if we disable enabled schemas in post,
+ # but we really can not do that, it would break something else.
+ ' /etc/openldap/slapd.conf
+ fi
+
+ if [ -f /var/lock/subsys/ldap ]; then
+ /etc/rc.d/init.d/ldap restart >&2 || :
+ fi
+fi
+
%triggerpostun -- samba < 1.9.18p7
if [ "$1" != "0" ]; then
/sbin/chkconfig --add smb
%attr(754,root,root) /etc/rc.d/init.d/winbind
%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/winbind
%{_mandir}/man8/winbindd*.8*
+%{_mandir}/man8/pam_winbind.8.gz
%{_mandir}/man1/wbinfo*.1*
%files -n nss_wins
%attr(755,root,root) %{_bindir}/smbcquotas
%attr(755,root,root) %{_bindir}/profiles
%attr(755,root,root) %{_bindir}/pdbedit
+%attr(755,root,root) %{_bindir}/vfstest
%dir %{_libdir}/%{name}/charset
%attr(755,root,root) %{_libdir}/%{name}/charset/*.so
%{_mandir}/man1/editreg.1*
%defattr(644,root,root,755)
%attr(755,root,root) %{_vfsdir}/shadow_copy.so
+%files vfs-vscan-antivir
+%defattr(644,root,root,755)
+#%doc examples/VFS/%{name}-vscan-%{vscan_version}/{INSTALL,FAQ}
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/samba/vscan-antivir.conf
+%attr(755,root,root) %{_vfsdir}/vscan-antivir.so
+
%files vfs-vscan-clamav
%defattr(644,root,root,755)
#%doc examples/VFS/%{name}-vscan-%{vscan_version}/{INSTALL,FAQ}
#%doc examples/VFS/%{name}-vscan-%{vscan_version}/{INSTALL,FAQ}
%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/samba/vscan-trend.conf
%attr(755,root,root) %{_vfsdir}/vscan-trend.so
+
+%if %{with ldap}
+%files -n openldap-schema-samba
+%defattr(644,root,root,755)
+%{schemadir}/*.schema
+%endif