summaryrefslogtreecommitdiff
path: root/net-fs
diff options
context:
space:
mode:
authorChristian Andreetta <satya@gentoo.org>2006-03-31 08:17:42 +0000
committerChristian Andreetta <satya@gentoo.org>2006-03-31 08:17:42 +0000
commit0d04576478d52d4d7f7105b1859558f1e99fc612 (patch)
tree183831833a803a879b29ba8d88a727150e86a59e /net-fs
parentVersion bump #128079 by Christian Gmeiner. (diff)
downloadhistorical-0d04576478d52d4d7f7105b1859558f1e99fc612.tar.gz
historical-0d04576478d52d4d7f7105b1859558f1e99fc612.tar.bz2
historical-0d04576478d52d4d7f7105b1859558f1e99fc612.zip
security fix CVE-2006-1059: winbind log private info exposure. samba-3.0.22 is just 3.0.21c with the CVE patch
Package-Manager: portage-2.1_pre7-r1
Diffstat (limited to 'net-fs')
-rw-r--r--net-fs/samba/ChangeLog12
-rw-r--r--net-fs/samba/Manifest33
-rw-r--r--net-fs/samba/files/035_all_samba-3.0.21-winbind_log.patch11
-rw-r--r--net-fs/samba/files/README.gentoo6
-rw-r--r--net-fs/samba/files/digest-samba-3.0.21b-r19
-rw-r--r--net-fs/samba/files/digest-samba-3.0.21c-r19
-rw-r--r--net-fs/samba/files/digest-samba-3.0.229
-rw-r--r--net-fs/samba/samba-3.0.21b-r1.ebuild309
-rw-r--r--net-fs/samba/samba-3.0.21c-r1.ebuild309
-rw-r--r--net-fs/samba/samba-3.0.22.ebuild308
10 files changed, 1008 insertions, 7 deletions
diff --git a/net-fs/samba/ChangeLog b/net-fs/samba/ChangeLog
index fd7a545ada9d..cc5fe8a5385f 100644
--- a/net-fs/samba/ChangeLog
+++ b/net-fs/samba/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for net-fs/samba
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v 1.221 2006/03/14 20:35:14 chutzpah Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v 1.222 2006/03/31 08:17:42 satya Exp $
+
+*samba-3.0.22 (31 Mar 2006)
+*samba-3.0.21c-r1 (31 Mar 2006)
+*samba-3.0.21b-r1 (31 Mar 2006)
+
+ 31 Mar 2006; Christian Andreetta <satya@gentoo.org>
+ +files/035_all_samba-3.0.21-winbind_log.patch, files/README.gentoo,
+ +samba-3.0.21b-r1.ebuild, +samba-3.0.21c-r1.ebuild, +samba-3.0.22.ebuild:
+ security fix CVE-2006-1059: winbind log private info exposure. samba-3.0.22 is
+ just 3.0.21c with the CVE patch
14 Mar 2006; Patrick McLean <chutzpah@gentoo.org> samba-3.0.21b.ebuild:
Stable on amd64 (bug #124632)
diff --git a/net-fs/samba/Manifest b/net-fs/samba/Manifest
index 237702f17599..9aff04e562c8 100644
--- a/net-fs/samba/Manifest
+++ b/net-fs/samba/Manifest
@@ -1,9 +1,12 @@
-MD5 b8099411dd6810e56c023eacb6715e78 ChangeLog 38818
-RMD160 817c3994a2d02611ccc1ab089e204e70cabb5ba9 ChangeLog 38818
-SHA256 7c16233b50d303b15e9662e35a5c1c86569ef9d880a52d07f717007a9cd73986 ChangeLog 38818
-MD5 a81151c8ce798cbb8498e4e3723dd5bb files/README.gentoo 2458
-RMD160 ac4f6cbf6a73d8d74e5ed604d539d3e187139e70 files/README.gentoo 2458
-SHA256 90d86b2f167d5ad5c6c82e5a4422a1eb2dd70a365a56fbe6c9f82640e3658806 files/README.gentoo 2458
+MD5 8d4ae3ddb002c5070809557f8d6fe71b ChangeLog 39224
+RMD160 28f57a047c8c6ad62e1c52dca19b3eb57e3bb057 ChangeLog 39224
+SHA256 c5f7fe3d267f46d3b80ce4c4ba2225acf9bae7e7bd8d15d911619e035f744906 ChangeLog 39224
+MD5 7cbe28bc9f7e821c88c4f80c39752eb5 files/035_all_samba-3.0.21-winbind_log.patch 438
+RMD160 11b402af2f251c91de0ca1fd2ef0d011f28f1450 files/035_all_samba-3.0.21-winbind_log.patch 438
+SHA256 cf22a104c251470be1347079951d2eef847e1e3e8a9604e491985b9aadd8e0d0 files/035_all_samba-3.0.21-winbind_log.patch 438
+MD5 4909031b1d1c775a746e4804997c65ce files/README.gentoo 2682
+RMD160 8463761043508f9fbaf8e2dcde71315f37e85d1b files/README.gentoo 2682
+SHA256 e01f08d8cc91506b1d212b9b59648b96458fe79c6bff483a5b49aef90c3ac3bb files/README.gentoo 2682
MD5 8655ff25f25d7e80f85a5e527d43e94b files/digest-samba-3.0.14a-r2 209
RMD160 bdbde65e9d4ad0e5c4051226afee11ae853c9d22 files/digest-samba-3.0.14a-r2 209
SHA256 dea790af76ff0bbc8379af6139464f3574f2df94b9916d1f026e68b3390d7237 files/digest-samba-3.0.14a-r2 209
@@ -25,9 +28,18 @@ SHA256 faf73ffb71cafa8a1e1e6ec414653152cbf27f66534cd17d415314c612bcb8f4 files/di
MD5 dc35f89eee1482d5d66160435a4ed501 files/digest-samba-3.0.21b 771
RMD160 e7ca1a5340c12879038990aa3c5ee18c7e086048 files/digest-samba-3.0.21b 771
SHA256 67e85a0163908cb088d46451c58fad2f34fb3707764f9efe9d52af36372d1b61 files/digest-samba-3.0.21b 771
+MD5 adb7ab134c8c36d103e72cf1b41c3255 files/digest-samba-3.0.21b-r1 771
+RMD160 56ae2c22ea011aec0ab585c3aa452ff7644b01c4 files/digest-samba-3.0.21b-r1 771
+SHA256 2e1f17c1d03f9f6f7fd99942fe59a064ec353f5c464e97f29fc7c534f11fd8af files/digest-samba-3.0.21b-r1 771
MD5 064044b71a87a5fd0d0a9991b291f1aa files/digest-samba-3.0.21c 771
RMD160 7f98dee6fd8921ee4cb881db03200444109d77e2 files/digest-samba-3.0.21c 771
SHA256 6c6e6be13ac92b83a03f76234a239ac5fe2bd3b7bb26e3cf50c8f0de9ab9f6a2 files/digest-samba-3.0.21c 771
+MD5 064044b71a87a5fd0d0a9991b291f1aa files/digest-samba-3.0.21c-r1 771
+RMD160 7f98dee6fd8921ee4cb881db03200444109d77e2 files/digest-samba-3.0.21c-r1 771
+SHA256 6c6e6be13ac92b83a03f76234a239ac5fe2bd3b7bb26e3cf50c8f0de9ab9f6a2 files/digest-samba-3.0.21c-r1 771
+MD5 1463ff1b83a8b87658e88d95b1f74493 files/digest-samba-3.0.22 768
+RMD160 72df0e06bc0b9843ced9bec5537be6495386219e files/digest-samba-3.0.22 768
+SHA256 484bc72e02eeb2de02b9f707d1edbb72125631c85e96c9a0ff4c06afe78d5194 files/digest-samba-3.0.22 768
MD5 41299f246433a1a55c8fccc77ccd709e metadata.xml 491
RMD160 a168f5ebf64e25d8c80c1c33220b2695ae8f3645 metadata.xml 491
SHA256 f6534dfe5249b4f1482818d56c36126ae4681eb5b7d24dbf985f6be6f2c58493 metadata.xml 491
@@ -49,9 +61,18 @@ SHA256 7c816bdf1e9d104d9402add068b96930ce06d869bcce69df8cdcd6725db908f2 samba-3.
MD5 c5a70bc09be5f115ebfbc5fb000be560 samba-3.0.21a.ebuild 8614
RMD160 8ab10e38ca352508befe26e9ceba22fa28580942 samba-3.0.21a.ebuild 8614
SHA256 8c18e7127bcb06a0d4867a001dbcf71478154d747862cc7a32ef3f9c8ffc2818 samba-3.0.21a.ebuild 8614
+MD5 3f52053c36d38ea2153225d8c6f3f736 samba-3.0.21b-r1.ebuild 8717
+RMD160 d3626b923e3e16cc8581e5d65db6fb52c13036a7 samba-3.0.21b-r1.ebuild 8717
+SHA256 d32bcb2a1a3c0b44c516b642ec80eade95dffc538cf18dfcd36db2a3ed1329dc samba-3.0.21b-r1.ebuild 8717
MD5 1f09216095d15cd2d95220aca4730b6c samba-3.0.21b.ebuild 8612
RMD160 ce3345f50584fb3b0d5e3946b7dcafd0b543f425 samba-3.0.21b.ebuild 8612
SHA256 3f096b5532bfed301c59bd93c601d99ac203a809906b7fad0afd9db3aabc1187 samba-3.0.21b.ebuild 8612
+MD5 bfbd824f0b354541786d57be6a45d102 samba-3.0.21c-r1.ebuild 8717
+RMD160 d2c48a84e6cb5c37ff95b00fefeedf4aaf73e2c2 samba-3.0.21c-r1.ebuild 8717
+SHA256 95577e212853042f9a8060f39a48b6d57d5d4152d6d7a02604c557a6180c6644 samba-3.0.21c-r1.ebuild 8717
MD5 5c77ef195240c56181d7e72fbbc26163 samba-3.0.21c.ebuild 8614
RMD160 b4447944b1a8b9dc9b8ce0dcd318518e54fd9ead samba-3.0.21c.ebuild 8614
SHA256 c760d44c512b26c29fecd93bf995cc7e416a23d12c94bbc9e490f3f75c1bb1fc samba-3.0.21c.ebuild 8614
+MD5 710670af78f73412e0ece2eb72a39643 samba-3.0.22.ebuild 8638
+RMD160 899b2900c90ada51ff6186938e871e420cdb96a0 samba-3.0.22.ebuild 8638
+SHA256 1d46d2ea0f973c06064e6992aadb49c20938cf2278b81db8e780c377121e41d2 samba-3.0.22.ebuild 8638
diff --git a/net-fs/samba/files/035_all_samba-3.0.21-winbind_log.patch b/net-fs/samba/files/035_all_samba-3.0.21-winbind_log.patch
new file mode 100644
index 000000000000..d57343196488
--- /dev/null
+++ b/net-fs/samba/files/035_all_samba-3.0.21-winbind_log.patch
@@ -0,0 +1,11 @@
++++ source/nsswitch/winbindd_cm.c 2006-03-30 13:57:25.000000000 +0200
+--- source/nsswitch/winbindd_cm.c.orig 2006-03-30 13:56:57.000000000 +0200
+@@ -294,7 +294,7 @@
+
+ DEBUG(5, ("connecting to %s from %s with username "
+ "[%s]\\[%s]\n", controller, global_myname(),
+- machine_account, machine_password));
++ lp_workgroup(), machine_account));
+
+ ads_status = cli_session_setup_spnego(*cli,
+ machine_account,
diff --git a/net-fs/samba/files/README.gentoo b/net-fs/samba/files/README.gentoo
index 419231d23d7d..b6d3abd14275 100644
--- a/net-fs/samba/files/README.gentoo
+++ b/net-fs/samba/files/README.gentoo
@@ -23,6 +23,12 @@
automount: automount support (previously default)
syslog: log to syslog daemon (previously default)
+3.0.22:
+ *sql backend: they were experimental, and now are marked as "deprecated"
+ upstream
+ CVE-2006-1059 security fix: 3.0.21* shipped with a bug in the debug
+ functions of winbind (debug>=5 reveals secret ids in logs)
+
General:
If you experience client locks in file transfers _only_, try the parameter
use sendfile = no (man smb.conf(5), man sendfile(2))
diff --git a/net-fs/samba/files/digest-samba-3.0.21b-r1 b/net-fs/samba/files/digest-samba-3.0.21b-r1
new file mode 100644
index 000000000000..8ba15fb23471
--- /dev/null
+++ b/net-fs/samba/files/digest-samba-3.0.21b-r1
@@ -0,0 +1,9 @@
+MD5 e68da25c1ff30482c9401e279ae62797 samba-3-gentoo-0.3.11.tar.bz2 15929
+RMD160 2ad449ab8ceddb2d2f940eaebdab7965925038c5 samba-3-gentoo-0.3.11.tar.bz2 15929
+SHA256 8c6de0f26458995b8d095ddc433caac8b183fbc6e5f9cbc240cb762ae3c1f3da samba-3-gentoo-0.3.11.tar.bz2 15929
+MD5 bb73dffb33f4a39386ef9f3e07ae28ff samba-3.0.21b.tar.gz 17539079
+RMD160 883f855523e2a079cd7295df6647b3cb9b56c23a samba-3.0.21b.tar.gz 17539079
+SHA256 a5e6982024105276d347b3b521897d6937c727e273814e743ada8eddf972e7d0 samba-3.0.21b.tar.gz 17539079
+MD5 900502ba36b80620229b94e5129bc856 samba-vscan-0.3.6b.tar.bz2 164471
+RMD160 5cd81345b06f44b2febf3f24e62325322b1c6a3b samba-vscan-0.3.6b.tar.bz2 164471
+SHA256 2fa680c85ef036a9ac27d1039807881c7a0f35f64f731b1d3a13b860a9135e7a samba-vscan-0.3.6b.tar.bz2 164471
diff --git a/net-fs/samba/files/digest-samba-3.0.21c-r1 b/net-fs/samba/files/digest-samba-3.0.21c-r1
new file mode 100644
index 000000000000..2ea5182a54e1
--- /dev/null
+++ b/net-fs/samba/files/digest-samba-3.0.21c-r1
@@ -0,0 +1,9 @@
+MD5 e68da25c1ff30482c9401e279ae62797 samba-3-gentoo-0.3.11.tar.bz2 15929
+RMD160 2ad449ab8ceddb2d2f940eaebdab7965925038c5 samba-3-gentoo-0.3.11.tar.bz2 15929
+SHA256 8c6de0f26458995b8d095ddc433caac8b183fbc6e5f9cbc240cb762ae3c1f3da samba-3-gentoo-0.3.11.tar.bz2 15929
+MD5 9deeda292399d2bbad120f98a290f5da samba-3.0.21c.tar.gz 17542009
+RMD160 2ad1451007cbb5165f5ca3ce77d84abbbd0d6b52 samba-3.0.21c.tar.gz 17542009
+SHA256 9181b82fe6c3ea6b7b248cfddef34481ca3c114d70fe0f11fb60175179e86b43 samba-3.0.21c.tar.gz 17542009
+MD5 900502ba36b80620229b94e5129bc856 samba-vscan-0.3.6b.tar.bz2 164471
+RMD160 5cd81345b06f44b2febf3f24e62325322b1c6a3b samba-vscan-0.3.6b.tar.bz2 164471
+SHA256 2fa680c85ef036a9ac27d1039807881c7a0f35f64f731b1d3a13b860a9135e7a samba-vscan-0.3.6b.tar.bz2 164471
diff --git a/net-fs/samba/files/digest-samba-3.0.22 b/net-fs/samba/files/digest-samba-3.0.22
new file mode 100644
index 000000000000..89a82f875b68
--- /dev/null
+++ b/net-fs/samba/files/digest-samba-3.0.22
@@ -0,0 +1,9 @@
+MD5 e68da25c1ff30482c9401e279ae62797 samba-3-gentoo-0.3.11.tar.bz2 15929
+RMD160 2ad449ab8ceddb2d2f940eaebdab7965925038c5 samba-3-gentoo-0.3.11.tar.bz2 15929
+SHA256 8c6de0f26458995b8d095ddc433caac8b183fbc6e5f9cbc240cb762ae3c1f3da samba-3-gentoo-0.3.11.tar.bz2 15929
+MD5 5c39505af17cf5caf3d6ed8bab135036 samba-3.0.22.tar.gz 17542657
+RMD160 b41cffc999c524c1650d2dd3fbd063dc79741091 samba-3.0.22.tar.gz 17542657
+SHA256 781466885804343248afb74dfdd57df0c7165b252ded06a71c0f24827b2a8e2d samba-3.0.22.tar.gz 17542657
+MD5 900502ba36b80620229b94e5129bc856 samba-vscan-0.3.6b.tar.bz2 164471
+RMD160 5cd81345b06f44b2febf3f24e62325322b1c6a3b samba-vscan-0.3.6b.tar.bz2 164471
+SHA256 2fa680c85ef036a9ac27d1039807881c7a0f35f64f731b1d3a13b860a9135e7a samba-vscan-0.3.6b.tar.bz2 164471
diff --git a/net-fs/samba/samba-3.0.21b-r1.ebuild b/net-fs/samba/samba-3.0.21b-r1.ebuild
new file mode 100644
index 000000000000..f7d3857ea80c
--- /dev/null
+++ b/net-fs/samba/samba-3.0.21b-r1.ebuild
@@ -0,0 +1,309 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.0.21b-r1.ebuild,v 1.1 2006/03/31 08:17:42 satya Exp $
+
+inherit eutils versionator
+
+IUSE_LINGUAS="ja pl"
+IUSE="acl async automount cups doc examples kerberos ldap ldapsam libclamav mysql
+ oav pam postgres python quotas readline selinux swat syslog winbind xml xml2"
+RESTRICT="test"
+
+VSCAN_VER="0.3.6b"
+PATCH_VER="0.3.11"
+MY_P=${PN}-${PV/_/}
+MY_PP=${PN}-$(get_major_version)-gentoo-${PATCH_VER}
+S2=${WORKDIR}/${MY_P}
+S=${S2}/source
+PFVSCAN=${PN}-vscan-${VSCAN_VER}
+DESCRIPTION="SAMBA is a suite of SMB and CIFS client/server programs for UNIX"
+HOMEPAGE="http://www.samba.org/
+ http://www.openantivirus.org/projects.php"
+SRC_URI="mirror://samba/${MY_P}.tar.gz
+ mirror://samba/old-versions/${MY_P}.tar.gz
+ oav? ( mirror://sourceforge/openantivirus/${PFVSCAN}.tar.bz2 )
+ mirror://gentoo/${MY_PP}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+
+RDEPEND="dev-libs/popt
+ acl? ( sys-apps/acl )
+ cups? ( net-print/cups )
+ ldap? ( kerberos? ( virtual/krb5 ) net-nds/openldap )
+ mysql? ( dev-db/mysql sys-libs/zlib )
+ pam? ( virtual/pam )
+ postgres? ( dev-db/postgresql sys-libs/zlib )
+ python? ( dev-lang/python )
+ readline? ( sys-libs/readline )
+ selinux? ( sec-policy/selinux-samba )
+ swat? ( sys-apps/xinetd )
+ syslog? ( virtual/logger )
+ xml? ( dev-libs/libxml2 sys-libs/zlib )
+ xml2? ( dev-libs/libxml2 sys-libs/zlib )
+ "
+
+DEPEND="${RDEPEND}
+ sys-devel/autoconf
+ >=sys-apps/sed-4"
+
+PRIVATE_DST=/var/lib/samba/private
+PATCHDIR=${WORKDIR}/patches
+CONFDIR=${WORKDIR}/configs
+
+src_unpack() {
+ unpack ${A}; cd ${S2}
+
+ rm -rf ${S2}/examples.ORIG
+
+ cp ${FILESDIR}/035_all_samba-3.0.21-winbind_log.patch ${PATCHDIR}/general
+ export EPATCH_SUFFIX="patch"
+ epatch ${PATCHDIR}/general
+ if use oav ; then
+ cd ${WORKDIR}
+ epatch ${PATCHDIR}/vscan
+ cp -pPR ${WORKDIR}/${PFVSCAN} ${S2}/examples/VFS
+ fi
+
+ #uClib: bug #120383, https://bugzilla.samba.org/show_bug.cgi?id=3451
+ sed -i -e '/include.*fstab.h/d' "${S}"/client/umount.cifs.c
+}
+
+src_compile() {
+ ebegin "Running autoconf"
+ autoconf
+ eend $?
+
+ local myconf
+ local mymods
+ local mylangs
+
+ if use xml || use xml2 ; then
+ mymods="xml,${mymods}"
+ fi
+ use mysql && mymods="mysql,${mymods}"
+ use postgres && mymods="pgsql,${mymods}"
+ [[ -n "${mymods}" ]] && myconf="--with-expsam=${mymods}"
+
+ mylangs="en"
+ use linguas_ja && mylangs="${mylangs},ja"
+ use linguas_pl && mylangs="${mylangs},pl"
+ myconf="${myconf} --with-manpages-langs=${mylangs}"
+
+ if use ldap; then
+ myconf="${myconf} $(use_with ldap) $(use_with kerberos ads)"
+ myconf="${myconf} $(use_with ldapsam)"
+ else
+ myconf="${myconf} --without-ldapsam"
+ fi
+ use winbind && myconf="${myconf} $(use_with winbind) --with-shared-modules=idmap_rid"
+
+ [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie"
+
+ econf \
+ --with-fhs \
+ --sysconfdir=/etc/samba \
+ --localstatedir=/var \
+ --with-configdir=/etc/samba \
+ --with-libdir=/usr/$(get_libdir)/samba \
+ --with-swatdir=/usr/share/doc/${PF}/swat \
+ --with-piddir=/var/run/samba \
+ --with-lockdir=/var/cache/samba \
+ --with-logfilebase=/var/log/samba \
+ --with-privatedir=${PRIVATE_DST} \
+ --with-libsmbclient \
+ --without-spinlocks \
+ $(use_with acl acl-support) \
+ $(use_with async aio-support) \
+ $(use_with automount) \
+ $(use_enable cups) \
+ $(use_with kerberos krb5) \
+ $(use_with pam) $(use_with pam pam_smbpass) \
+ $(use_with python) \
+ $(use_with quotas) $(use_with quotas sys-quotas) \
+ $(use_with readline) \
+ $(use_with kernel_linux smbmount) \
+ $(use_with syslog) \
+ ${myconf} || die
+
+ emake proto || die "SAMBA make proto error"
+ emake everything || die "SAMBA make everything error"
+
+ einfo "make rpctorture"
+ emake rpctorture || ewarn "rpctorture didn't build"
+
+ if use python ; then
+ python python/setup.py build
+ fi
+
+ # Build samba-vscan plugins
+ if use oav; then
+ cd ${S2}/examples/VFS/${PFVSCAN}
+ econf \
+ --with-fhs \
+ --libdir=/usr/$(get_libdir)/samba \
+ $(use_with libclamav) || die "${PFVSCAN} ./configure failed"
+ emake || die "Failed to make ${PFVSCAN}"
+ fi
+
+}
+
+src_install() {
+ local extra_bins="rpctorture"
+
+ make DESTDIR=${D} install-everything || die
+
+ # Extra rpctorture progs
+ exeinto /usr/bin
+ for i in ${extra_bins}; do
+ [[ -x ${S}/bin/${i} ]] && doexe ${S}/bin/${i}
+ einfo "Extra binaries: ${i}"
+ done
+
+ # remove .old stuff from /usr/bin:
+ rm -f ${D}/usr/bin/*.old
+
+ # Nsswitch extensions. Make link for wins and winbind resolvers
+ dolib.so ${S}/nsswitch/libnss_wins.so
+ dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2
+ if use winbind; then
+ dolib.so ${S}/nsswitch/libnss_winbind.so
+ dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2
+ fi
+
+ if use pam; then
+ exeinto /$(get_libdir)/security
+ doexe ${S}/bin/pam_smbpass.so
+ if use winbind; then
+ exeinto /$(get_libdir)/security
+ doexe ${S}/nsswitch/pam_winbind.so
+ fi
+ fi
+
+ if use kernel_linux; then
+ # mount backend
+ dodir /sbin
+ dosym ../usr/bin/smbmount /sbin/mount.smbfs
+ dosym ../usr/bin/mount.cifs /sbin/mount.cifs
+ fi
+
+ # bug #46389: samba doesn't create symlink anymore
+ # beaviour seems to be changed in 3.0.6, see bug #61046
+ dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so.0
+ dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so
+
+ # make the smb backend symlink for cups printing support..
+ if use cups; then
+ dodir /usr/$(get_libdir)/cups/backend
+ dosym ../../../bin/smbspool /usr/$(get_libdir)/cups/backend/smb
+ fi
+
+ # VFS plugin modules
+ if use oav; then
+ cd ${S2}/examples/VFS/${PFVSCAN}
+ make install DESTDIR=${D} || die "VFS: vscan error"
+ insinto /etc/samba
+ doins ${S2}/examples/VFS/${PFVSCAN}/openantivirus/*conf
+ fi
+
+ # Python extensions
+ if use python; then
+ cd ${S}
+ python python/setup.py install --root=${D} || die
+ fi
+
+ # General config files
+ insinto /etc/samba
+ doins ${CONFDIR}/smbusers
+ newins ${CONFDIR}/smb.conf.example-samba3 smb.conf.example
+ doins ${CONFDIR}/lmhosts
+
+ newpamd ${CONFDIR}/samba.pam samba
+ use winbind && doins ${CONFDIR}/system-auth-winbind
+ insinto /etc/xinetd.d
+ newins ${CONFDIR}/swat.xinetd swat
+ newinitd ${CONFDIR}/samba-init samba
+ newconfd ${CONFDIR}/samba-conf samba
+ if use ldap; then
+ insinto /etc/openldap/schema
+ doins ${S2}/examples/LDAP/samba.schema
+ fi
+
+ # dirs
+ diropts -m0700 ; keepdir ${PRIVATE_DST}
+ diropts -m1777 ; keepdir /var/spool/samba
+
+ diropts -m0755
+ keepdir /var/{log,run,cache}/samba
+ keepdir /var/lib/samba/{netlogon,profiles}
+ keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC}
+ keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth}
+
+ # docs
+ dodoc ${FILESDIR}/README.gentoo
+ dodoc ${S2}/{COPYING,Manifest,README,Roadmap,WHATSNEW.txt}
+ dodoc ${CONFDIR}/nsswitch.conf-wins
+ use winbind && dodoc ${CONFDIR}/nsswitch.conf-winbind
+
+ if use oav; then
+ docinto ${PFVSCAN}
+ cd ${WORKDIR}/${PFVSCAN}
+ dodoc AUTHORS COPYING ChangeLog FAQ INSTALL NEWS README TODO
+ dodoc */*.conf
+ fi
+
+ if use examples; then
+ docinto examples
+ cp -pPR ${S2}/examples/* ${D}/usr/share/doc/${PF}/examples
+ chmod -R 755 `find ${D}/usr/share/doc/${PF}/examples -type d`
+ chmod -R 644 `find ${D}/usr/share/doc/${PF}/examples ! -type d`
+ fi
+
+ if ! use doc; then
+ if ! use swat; then
+ rm -rf ${D}/usr/share/doc/${PF}/swat
+ else
+ rm -rf ${D}/usr/share/doc/${PF}/swat/help/{guide,howto,devel}
+ rm -rf ${D}/usr/share/doc/${PF}/swat/using_samba
+ fi
+ fi
+
+ # Patch ChangeLog
+ docinto gentoo
+ dodoc ${PATCHDIR}/ChangeLog
+}
+
+pkg_preinst() {
+ local PRIVATE_SRC=/etc/samba/private
+ if [[ ! -r ${ROOT}/${PRIVATE_DST}/secrets.tdb \
+ && -r ${ROOT}/${PRIVATE_SRC}/secrets.tdb ]]; then
+ ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/"
+ mkdir -p ${IMAGE}/${PRIVATE_DST}
+ cp -pPRf ${ROOT}/${PRIVATE_SRC}/* ${IMAGE}/${PRIVATE_DST}/
+ eend $?
+ fi
+
+ if [[ ! -f "${ROOT}/etc/samba/smb.conf" ]]; then
+ touch ${IMAGE}/etc/samba/smb.conf
+ fi
+}
+
+pkg_postinst() {
+ if use swat; then
+ einfo "swat must be enabled by xinetd:"
+ einfo " change the /etc/xinetd.d/swat configuration"
+ fi
+ einfo "As of 3.0.20: New USE flags: syslog, automount, async (default: disabled)"
+ einfo "As of 3.0.20b: New USE flags: ldapsam, swat (default: disabled)"
+ einfo "SQL and XML backends are *experimental*: sql is being deprecated"
+ einfo "Latest info: README.gentoo in documentation directory"
+}
+
+pkg_postrm(){
+ # If stale docs, and one isn't re-emerging the latest version, removes
+ # (this is actually a portage bug, though)
+ [[ -n "${PF}" && ! -f ${ROOT}/usr/lib/${PN}/en.msg ]] && \
+ rm -rf ${ROOT}/usr/share/doc/${PF}
+}
+
diff --git a/net-fs/samba/samba-3.0.21c-r1.ebuild b/net-fs/samba/samba-3.0.21c-r1.ebuild
new file mode 100644
index 000000000000..54fd47f9e4f6
--- /dev/null
+++ b/net-fs/samba/samba-3.0.21c-r1.ebuild
@@ -0,0 +1,309 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.0.21c-r1.ebuild,v 1.1 2006/03/31 08:17:42 satya Exp $
+
+inherit eutils versionator
+
+IUSE_LINGUAS="ja pl"
+IUSE="acl async automount cups doc examples kerberos ldap ldapsam libclamav mysql
+ oav pam postgres python quotas readline selinux swat syslog winbind xml xml2"
+RESTRICT="test"
+
+VSCAN_VER="0.3.6b"
+PATCH_VER="0.3.11"
+MY_P=${PN}-${PV/_/}
+MY_PP=${PN}-$(get_major_version)-gentoo-${PATCH_VER}
+S2=${WORKDIR}/${MY_P}
+S=${S2}/source
+PFVSCAN=${PN}-vscan-${VSCAN_VER}
+DESCRIPTION="SAMBA is a suite of SMB and CIFS client/server programs for UNIX"
+HOMEPAGE="http://www.samba.org/
+ http://www.openantivirus.org/projects.php"
+SRC_URI="mirror://samba/${MY_P}.tar.gz
+ mirror://samba/old-versions/${MY_P}.tar.gz
+ oav? ( mirror://sourceforge/openantivirus/${PFVSCAN}.tar.bz2 )
+ mirror://gentoo/${MY_PP}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+
+RDEPEND="dev-libs/popt
+ acl? ( sys-apps/acl )
+ cups? ( net-print/cups )
+ ldap? ( kerberos? ( virtual/krb5 ) net-nds/openldap )
+ mysql? ( dev-db/mysql sys-libs/zlib )
+ pam? ( virtual/pam )
+ postgres? ( dev-db/postgresql sys-libs/zlib )
+ python? ( dev-lang/python )
+ readline? ( sys-libs/readline )
+ selinux? ( sec-policy/selinux-samba )
+ swat? ( sys-apps/xinetd )
+ syslog? ( virtual/logger )
+ xml? ( dev-libs/libxml2 sys-libs/zlib )
+ xml2? ( dev-libs/libxml2 sys-libs/zlib )
+ "
+
+DEPEND="${RDEPEND}
+ sys-devel/autoconf
+ >=sys-apps/sed-4"
+
+PRIVATE_DST=/var/lib/samba/private
+PATCHDIR=${WORKDIR}/patches
+CONFDIR=${WORKDIR}/configs
+
+src_unpack() {
+ unpack ${A}; cd ${S2}
+
+ rm -rf ${S2}/examples.ORIG
+
+ cp ${FILESDIR}/035_all_samba-3.0.21-winbind_log.patch ${PATCHDIR}/general
+ export EPATCH_SUFFIX="patch"
+ epatch ${PATCHDIR}/general
+ if use oav ; then
+ cd ${WORKDIR}
+ epatch ${PATCHDIR}/vscan
+ cp -pPR ${WORKDIR}/${PFVSCAN} ${S2}/examples/VFS
+ fi
+
+ #uClib: bug #120383, https://bugzilla.samba.org/show_bug.cgi?id=3451
+ sed -i -e '/include.*fstab.h/d' "${S}"/client/umount.cifs.c
+}
+
+src_compile() {
+ ebegin "Running autoconf"
+ autoconf
+ eend $?
+
+ local myconf
+ local mymods
+ local mylangs
+
+ if use xml || use xml2 ; then
+ mymods="xml,${mymods}"
+ fi
+ use mysql && mymods="mysql,${mymods}"
+ use postgres && mymods="pgsql,${mymods}"
+ [[ -n "${mymods}" ]] && myconf="--with-expsam=${mymods}"
+
+ mylangs="en"
+ use linguas_ja && mylangs="${mylangs},ja"
+ use linguas_pl && mylangs="${mylangs},pl"
+ myconf="${myconf} --with-manpages-langs=${mylangs}"
+
+ if use ldap; then
+ myconf="${myconf} $(use_with ldap) $(use_with kerberos ads)"
+ myconf="${myconf} $(use_with ldapsam)"
+ else
+ myconf="${myconf} --without-ldapsam"
+ fi
+ use winbind && myconf="${myconf} $(use_with winbind) --with-shared-modules=idmap_rid"
+
+ [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie"
+
+ econf \
+ --with-fhs \
+ --sysconfdir=/etc/samba \
+ --localstatedir=/var \
+ --with-configdir=/etc/samba \
+ --with-libdir=/usr/$(get_libdir)/samba \
+ --with-swatdir=/usr/share/doc/${PF}/swat \
+ --with-piddir=/var/run/samba \
+ --with-lockdir=/var/cache/samba \
+ --with-logfilebase=/var/log/samba \
+ --with-privatedir=${PRIVATE_DST} \
+ --with-libsmbclient \
+ --without-spinlocks \
+ $(use_with acl acl-support) \
+ $(use_with async aio-support) \
+ $(use_with automount) \
+ $(use_enable cups) \
+ $(use_with kerberos krb5) \
+ $(use_with pam) $(use_with pam pam_smbpass) \
+ $(use_with python) \
+ $(use_with quotas) $(use_with quotas sys-quotas) \
+ $(use_with readline) \
+ $(use_with kernel_linux smbmount) \
+ $(use_with syslog) \
+ ${myconf} || die
+
+ emake proto || die "SAMBA make proto error"
+ emake everything || die "SAMBA make everything error"
+
+ einfo "make rpctorture"
+ emake rpctorture || ewarn "rpctorture didn't build"
+
+ if use python ; then
+ python python/setup.py build
+ fi
+
+ # Build samba-vscan plugins
+ if use oav; then
+ cd ${S2}/examples/VFS/${PFVSCAN}
+ econf \
+ --with-fhs \
+ --libdir=/usr/$(get_libdir)/samba \
+ $(use_with libclamav) || die "${PFVSCAN} ./configure failed"
+ emake || die "Failed to make ${PFVSCAN}"
+ fi
+
+}
+
+src_install() {
+ local extra_bins="rpctorture"
+
+ make DESTDIR=${D} install-everything || die
+
+ # Extra rpctorture progs
+ exeinto /usr/bin
+ for i in ${extra_bins}; do
+ [[ -x ${S}/bin/${i} ]] && doexe ${S}/bin/${i}
+ einfo "Extra binaries: ${i}"
+ done
+
+ # remove .old stuff from /usr/bin:
+ rm -f ${D}/usr/bin/*.old
+
+ # Nsswitch extensions. Make link for wins and winbind resolvers
+ dolib.so ${S}/nsswitch/libnss_wins.so
+ dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2
+ if use winbind; then
+ dolib.so ${S}/nsswitch/libnss_winbind.so
+ dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2
+ fi
+
+ if use pam; then
+ exeinto /$(get_libdir)/security
+ doexe ${S}/bin/pam_smbpass.so
+ if use winbind; then
+ exeinto /$(get_libdir)/security
+ doexe ${S}/nsswitch/pam_winbind.so
+ fi
+ fi
+
+ if use kernel_linux; then
+ # mount backend
+ dodir /sbin
+ dosym ../usr/bin/smbmount /sbin/mount.smbfs
+ dosym ../usr/bin/mount.cifs /sbin/mount.cifs
+ fi
+
+ # bug #46389: samba doesn't create symlink anymore
+ # beaviour seems to be changed in 3.0.6, see bug #61046
+ dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so.0
+ dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so
+
+ # make the smb backend symlink for cups printing support..
+ if use cups; then
+ dodir /usr/$(get_libdir)/cups/backend
+ dosym ../../../bin/smbspool /usr/$(get_libdir)/cups/backend/smb
+ fi
+
+ # VFS plugin modules
+ if use oav; then
+ cd ${S2}/examples/VFS/${PFVSCAN}
+ make install DESTDIR=${D} || die "VFS: vscan error"
+ insinto /etc/samba
+ doins ${S2}/examples/VFS/${PFVSCAN}/openantivirus/*conf
+ fi
+
+ # Python extensions
+ if use python; then
+ cd ${S}
+ python python/setup.py install --root=${D} || die
+ fi
+
+ # General config files
+ insinto /etc/samba
+ doins ${CONFDIR}/smbusers
+ newins ${CONFDIR}/smb.conf.example-samba3 smb.conf.example
+ doins ${CONFDIR}/lmhosts
+
+ newpamd ${CONFDIR}/samba.pam samba
+ use winbind && doins ${CONFDIR}/system-auth-winbind
+ insinto /etc/xinetd.d
+ newins ${CONFDIR}/swat.xinetd swat
+ newinitd ${CONFDIR}/samba-init samba
+ newconfd ${CONFDIR}/samba-conf samba
+ if use ldap; then
+ insinto /etc/openldap/schema
+ doins ${S2}/examples/LDAP/samba.schema
+ fi
+
+ # dirs
+ diropts -m0700 ; keepdir ${PRIVATE_DST}
+ diropts -m1777 ; keepdir /var/spool/samba
+
+ diropts -m0755
+ keepdir /var/{log,run,cache}/samba
+ keepdir /var/lib/samba/{netlogon,profiles}
+ keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC}
+ keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth}
+
+ # docs
+ dodoc ${FILESDIR}/README.gentoo
+ dodoc ${S2}/{COPYING,Manifest,README,Roadmap,WHATSNEW.txt}
+ dodoc ${CONFDIR}/nsswitch.conf-wins
+ use winbind && dodoc ${CONFDIR}/nsswitch.conf-winbind
+
+ if use oav; then
+ docinto ${PFVSCAN}
+ cd ${WORKDIR}/${PFVSCAN}
+ dodoc AUTHORS COPYING ChangeLog FAQ INSTALL NEWS README TODO
+ dodoc */*.conf
+ fi
+
+ if use examples; then
+ docinto examples
+ cp -pPR ${S2}/examples/* ${D}/usr/share/doc/${PF}/examples
+ chmod -R 755 `find ${D}/usr/share/doc/${PF}/examples -type d`
+ chmod -R 644 `find ${D}/usr/share/doc/${PF}/examples ! -type d`
+ fi
+
+ if ! use doc; then
+ if ! use swat; then
+ rm -rf ${D}/usr/share/doc/${PF}/swat
+ else
+ rm -rf ${D}/usr/share/doc/${PF}/swat/help/{guide,howto,devel}
+ rm -rf ${D}/usr/share/doc/${PF}/swat/using_samba
+ fi
+ fi
+
+ # Patch ChangeLog
+ docinto gentoo
+ dodoc ${PATCHDIR}/ChangeLog
+}
+
+pkg_preinst() {
+ local PRIVATE_SRC=/etc/samba/private
+ if [[ ! -r ${ROOT}/${PRIVATE_DST}/secrets.tdb \
+ && -r ${ROOT}/${PRIVATE_SRC}/secrets.tdb ]]; then
+ ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/"
+ mkdir -p ${IMAGE}/${PRIVATE_DST}
+ cp -pPRf ${ROOT}/${PRIVATE_SRC}/* ${IMAGE}/${PRIVATE_DST}/
+ eend $?
+ fi
+
+ if [[ ! -f "${ROOT}/etc/samba/smb.conf" ]]; then
+ touch ${IMAGE}/etc/samba/smb.conf
+ fi
+}
+
+pkg_postinst() {
+ if use swat; then
+ einfo "swat must be enabled by xinetd:"
+ einfo " change the /etc/xinetd.d/swat configuration"
+ fi
+ einfo "As of 3.0.20: New USE flags: syslog, automount, async (default: disabled)"
+ einfo "As of 3.0.20b: New USE flags: ldapsam, swat (default: disabled)"
+ einfo "SQL and XML backends are *experimental*: sql is being deprecated"
+ einfo "Latest info: README.gentoo in documentation directory"
+}
+
+pkg_postrm(){
+ # If stale docs, and one isn't re-emerging the latest version, removes
+ # (this is actually a portage bug, though)
+ [[ -n "${PF}" && ! -f ${ROOT}/usr/lib/${PN}/en.msg ]] && \
+ rm -rf ${ROOT}/usr/share/doc/${PF}
+}
+
diff --git a/net-fs/samba/samba-3.0.22.ebuild b/net-fs/samba/samba-3.0.22.ebuild
new file mode 100644
index 000000000000..d36526b31b8e
--- /dev/null
+++ b/net-fs/samba/samba-3.0.22.ebuild
@@ -0,0 +1,308 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.0.22.ebuild,v 1.1 2006/03/31 08:17:42 satya Exp $
+
+inherit eutils versionator
+
+IUSE_LINGUAS="ja pl"
+IUSE="acl async automount cups doc examples kerberos ldap ldapsam libclamav mysql
+ oav pam postgres python quotas readline selinux swat syslog winbind xml xml2"
+RESTRICT="test"
+
+VSCAN_VER="0.3.6b"
+PATCH_VER="0.3.11"
+MY_P=${PN}-${PV/_/}
+MY_PP=${PN}-$(get_major_version)-gentoo-${PATCH_VER}
+S2=${WORKDIR}/${MY_P}
+S=${S2}/source
+PFVSCAN=${PN}-vscan-${VSCAN_VER}
+DESCRIPTION="SAMBA is a suite of SMB and CIFS client/server programs for UNIX"
+HOMEPAGE="http://www.samba.org/
+ http://www.openantivirus.org/projects.php"
+SRC_URI="mirror://samba/${MY_P}.tar.gz
+ mirror://samba/old-versions/${MY_P}.tar.gz
+ oav? ( mirror://sourceforge/openantivirus/${PFVSCAN}.tar.bz2 )
+ mirror://gentoo/${MY_PP}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+
+RDEPEND="dev-libs/popt
+ acl? ( sys-apps/acl )
+ cups? ( net-print/cups )
+ ldap? ( kerberos? ( virtual/krb5 ) net-nds/openldap )
+ mysql? ( dev-db/mysql sys-libs/zlib )
+ pam? ( virtual/pam )
+ postgres? ( dev-db/postgresql sys-libs/zlib )
+ python? ( dev-lang/python )
+ readline? ( sys-libs/readline )
+ selinux? ( sec-policy/selinux-samba )
+ swat? ( sys-apps/xinetd )
+ syslog? ( virtual/logger )
+ xml? ( dev-libs/libxml2 sys-libs/zlib )
+ xml2? ( dev-libs/libxml2 sys-libs/zlib )
+ "
+
+DEPEND="${RDEPEND}
+ sys-devel/autoconf
+ >=sys-apps/sed-4"
+
+PRIVATE_DST=/var/lib/samba/private
+PATCHDIR=${WORKDIR}/patches
+CONFDIR=${WORKDIR}/configs
+
+src_unpack() {
+ unpack ${A}; cd ${S2}
+
+ rm -rf ${S2}/examples.ORIG
+
+ export EPATCH_SUFFIX="patch"
+ epatch ${PATCHDIR}/general
+ if use oav ; then
+ cd ${WORKDIR}
+ epatch ${PATCHDIR}/vscan
+ cp -pPR ${WORKDIR}/${PFVSCAN} ${S2}/examples/VFS
+ fi
+
+ #uClib: bug #120383, https://bugzilla.samba.org/show_bug.cgi?id=3451
+ sed -i -e '/include.*fstab.h/d' "${S}"/client/umount.cifs.c
+}
+
+src_compile() {
+ ebegin "Running autoconf"
+ autoconf
+ eend $?
+
+ local myconf
+ local mymods
+ local mylangs
+
+ if use xml || use xml2 ; then
+ mymods="xml,${mymods}"
+ fi
+ use mysql && mymods="mysql,${mymods}"
+ use postgres && mymods="pgsql,${mymods}"
+ [[ -n "${mymods}" ]] && myconf="--with-expsam=${mymods}"
+
+ mylangs="en"
+ use linguas_ja && mylangs="${mylangs},ja"
+ use linguas_pl && mylangs="${mylangs},pl"
+ myconf="${myconf} --with-manpages-langs=${mylangs}"
+
+ if use ldap; then
+ myconf="${myconf} $(use_with ldap) $(use_with kerberos ads)"
+ myconf="${myconf} $(use_with ldapsam)"
+ else
+ myconf="${myconf} --without-ldapsam"
+ fi
+ use winbind && myconf="${myconf} $(use_with winbind) --with-shared-modules=idmap_rid"
+
+ [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie"
+
+ econf \
+ --with-fhs \
+ --sysconfdir=/etc/samba \
+ --localstatedir=/var \
+ --with-configdir=/etc/samba \
+ --with-libdir=/usr/$(get_libdir)/samba \
+ --with-swatdir=/usr/share/doc/${PF}/swat \
+ --with-piddir=/var/run/samba \
+ --with-lockdir=/var/cache/samba \
+ --with-logfilebase=/var/log/samba \
+ --with-privatedir=${PRIVATE_DST} \
+ --with-libsmbclient \
+ --without-spinlocks \
+ $(use_with acl acl-support) \
+ $(use_with async aio-support) \
+ $(use_with automount) \
+ $(use_enable cups) \
+ $(use_with kerberos krb5) \
+ $(use_with pam) $(use_with pam pam_smbpass) \
+ $(use_with python) \
+ $(use_with quotas) $(use_with quotas sys-quotas) \
+ $(use_with readline) \
+ $(use_with kernel_linux smbmount) \
+ $(use_with syslog) \
+ ${myconf} || die
+
+ emake proto || die "SAMBA make proto error"
+ emake everything || die "SAMBA make everything error"
+
+ einfo "make rpctorture"
+ emake rpctorture || ewarn "rpctorture didn't build"
+
+ if use python ; then
+ python python/setup.py build
+ fi
+
+ # Build samba-vscan plugins
+ if use oav; then
+ cd ${S2}/examples/VFS/${PFVSCAN}
+ econf \
+ --with-fhs \
+ --libdir=/usr/$(get_libdir)/samba \
+ $(use_with libclamav) || die "${PFVSCAN} ./configure failed"
+ emake || die "Failed to make ${PFVSCAN}"
+ fi
+
+}
+
+src_install() {
+ local extra_bins="rpctorture"
+
+ make DESTDIR=${D} install-everything || die
+
+ # Extra rpctorture progs
+ exeinto /usr/bin
+ for i in ${extra_bins}; do
+ [[ -x ${S}/bin/${i} ]] && doexe ${S}/bin/${i}
+ einfo "Extra binaries: ${i}"
+ done
+
+ # remove .old stuff from /usr/bin:
+ rm -f ${D}/usr/bin/*.old
+
+ # Nsswitch extensions. Make link for wins and winbind resolvers
+ dolib.so ${S}/nsswitch/libnss_wins.so
+ dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2
+ if use winbind; then
+ dolib.so ${S}/nsswitch/libnss_winbind.so
+ dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2
+ fi
+
+ if use pam; then
+ exeinto /$(get_libdir)/security
+ doexe ${S}/bin/pam_smbpass.so
+ if use winbind; then
+ exeinto /$(get_libdir)/security
+ doexe ${S}/nsswitch/pam_winbind.so
+ fi
+ fi
+
+ if use kernel_linux; then
+ # mount backend
+ dodir /sbin
+ dosym ../usr/bin/smbmount /sbin/mount.smbfs
+ dosym ../usr/bin/mount.cifs /sbin/mount.cifs
+ fi
+
+ # bug #46389: samba doesn't create symlink anymore
+ # beaviour seems to be changed in 3.0.6, see bug #61046
+ dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so.0
+ dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so
+
+ # make the smb backend symlink for cups printing support..
+ if use cups; then
+ dodir /usr/$(get_libdir)/cups/backend
+ dosym ../../../bin/smbspool /usr/$(get_libdir)/cups/backend/smb
+ fi
+
+ # VFS plugin modules
+ if use oav; then
+ cd ${S2}/examples/VFS/${PFVSCAN}
+ make install DESTDIR=${D} || die "VFS: vscan error"
+ insinto /etc/samba
+ doins ${S2}/examples/VFS/${PFVSCAN}/openantivirus/*conf
+ fi
+
+ # Python extensions
+ if use python; then
+ cd ${S}
+ python python/setup.py install --root=${D} || die
+ fi
+
+ # General config files
+ insinto /etc/samba
+ doins ${CONFDIR}/smbusers
+ newins ${CONFDIR}/smb.conf.example-samba3 smb.conf.example
+ doins ${CONFDIR}/lmhosts
+
+ newpamd ${CONFDIR}/samba.pam samba
+ use winbind && doins ${CONFDIR}/system-auth-winbind
+ insinto /etc/xinetd.d
+ newins ${CONFDIR}/swat.xinetd swat
+ newinitd ${CONFDIR}/samba-init samba
+ newconfd ${CONFDIR}/samba-conf samba
+ if use ldap; then
+ insinto /etc/openldap/schema
+ doins ${S2}/examples/LDAP/samba.schema
+ fi
+
+ # dirs
+ diropts -m0700 ; keepdir ${PRIVATE_DST}
+ diropts -m1777 ; keepdir /var/spool/samba
+
+ diropts -m0755
+ keepdir /var/{log,run,cache}/samba
+ keepdir /var/lib/samba/{netlogon,profiles}
+ keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC}
+ keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth}
+
+ # docs
+ dodoc ${FILESDIR}/README.gentoo
+ dodoc ${S2}/{COPYING,Manifest,README,Roadmap,WHATSNEW.txt}
+ dodoc ${CONFDIR}/nsswitch.conf-wins
+ use winbind && dodoc ${CONFDIR}/nsswitch.conf-winbind
+
+ if use oav; then
+ docinto ${PFVSCAN}
+ cd ${WORKDIR}/${PFVSCAN}
+ dodoc AUTHORS COPYING ChangeLog FAQ INSTALL NEWS README TODO
+ dodoc */*.conf
+ fi
+
+ if use examples; then
+ docinto examples
+ cp -pPR ${S2}/examples/* ${D}/usr/share/doc/${PF}/examples
+ chmod -R 755 `find ${D}/usr/share/doc/${PF}/examples -type d`
+ chmod -R 644 `find ${D}/usr/share/doc/${PF}/examples ! -type d`
+ fi
+
+ if ! use doc; then
+ if ! use swat; then
+ rm -rf ${D}/usr/share/doc/${PF}/swat
+ else
+ rm -rf ${D}/usr/share/doc/${PF}/swat/help/{guide,howto,devel}
+ rm -rf ${D}/usr/share/doc/${PF}/swat/using_samba
+ fi
+ fi
+
+ # Patch ChangeLog
+ docinto gentoo
+ dodoc ${PATCHDIR}/ChangeLog
+}
+
+pkg_preinst() {
+ local PRIVATE_SRC=/etc/samba/private
+ if [[ ! -r ${ROOT}/${PRIVATE_DST}/secrets.tdb \
+ && -r ${ROOT}/${PRIVATE_SRC}/secrets.tdb ]]; then
+ ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/"
+ mkdir -p ${IMAGE}/${PRIVATE_DST}
+ cp -pPRf ${ROOT}/${PRIVATE_SRC}/* ${IMAGE}/${PRIVATE_DST}/
+ eend $?
+ fi
+
+ if [[ ! -f "${ROOT}/etc/samba/smb.conf" ]]; then
+ touch ${IMAGE}/etc/samba/smb.conf
+ fi
+}
+
+pkg_postinst() {
+ if use swat; then
+ einfo "swat must be enabled by xinetd:"
+ einfo " change the /etc/xinetd.d/swat configuration"
+ fi
+ einfo "As of 3.0.20: New USE flags: syslog, automount, async (default: disabled)"
+ einfo "As of 3.0.20b: New USE flags: ldapsam, swat (default: disabled)"
+ einfo "SQL and XML backends are *experimental*: sql is being deprecated"
+ einfo "Latest info: README.gentoo in documentation directory"
+}
+
+pkg_postrm(){
+ # If stale docs, and one isn't re-emerging the latest version, removes
+ # (this is actually a portage bug, though)
+ [[ -n "${PF}" && ! -f ${ROOT}/usr/lib/${PN}/en.msg ]] && \
+ rm -rf ${ROOT}/usr/share/doc/${PF}
+}
+