Gentoo Archives: gentoo-commits

From: "Tiziano Mueller (dev-zero)" <dev-zero@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in net-fs/samba: ChangeLog samba-3.0.28.ebuild
Date: Mon, 10 Dec 2007 16:40:09
Message-Id: E1J1lfn-0005rQ-FP@stork.gentoo.org
1 dev-zero 07/12/10 16:40:03
2
3 Modified: ChangeLog
4 Added: samba-3.0.28.ebuild
5 Log:
6 Version bump for security bug #200773 (CVE-2007-6015).
7 Minor fixes for bugs #200132 and #199934)
8 (Portage version: 2.1.4_rc9, RepoMan options: --force)
9
10 Revision Changes Path
11 1.326 net-fs/samba/ChangeLog
12
13 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-fs/samba/ChangeLog?rev=1.326&view=markup
14 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-fs/samba/ChangeLog?rev=1.326&content-type=text/plain
15 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-fs/samba/ChangeLog?r1=1.325&r2=1.326
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v
20 retrieving revision 1.325
21 retrieving revision 1.326
22 diff -u -r1.325 -r1.326
23 --- ChangeLog 2 Dec 2007 18:28:55 -0000 1.325
24 +++ ChangeLog 10 Dec 2007 16:39:55 -0000 1.326
25 @@ -1,6 +1,12 @@
26 # ChangeLog for net-fs/samba
27 # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v 1.325 2007/12/02 18:28:55 dev-zero Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/net-fs/samba/ChangeLog,v 1.326 2007/12/10 16:39:55 dev-zero Exp $
30 +
31 +*samba-3.0.28 (10 Dec 2007)
32 +
33 + 10 Dec 2007; Tiziano Müller <dev-zero@g.o> +samba-3.0.28.ebuild:
34 + Version bump for security bug #200773 (CVE-2007-6015).
35 + Minor fixes for bugs #200132 and #199934.
36
37 02 Dec 2007; Tiziano Müller <dev-zero@g.o> samba-3.0.27a.ebuild:
38 Added note to restart clients
39
40
41
42 1.1 net-fs/samba/samba-3.0.28.ebuild
43
44 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-fs/samba/samba-3.0.28.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-fs/samba/samba-3.0.28.ebuild?rev=1.1&content-type=text/plain
46
47 Index: samba-3.0.28.ebuild
48 ===================================================================
49 # Copyright 1999-2007 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/net-fs/samba/samba-3.0.28.ebuild,v 1.1 2007/12/10 16:39:55 dev-zero Exp $
52
53 inherit eutils pam python multilib versionator confutils
54
55 MY_P=${PN}-${PV/_/}
56
57 DESCRIPTION="A suite of SMB and CIFS client/server programs for UNIX"
58 HOMEPAGE="http://www.samba.org/"
59 SRC_URI="mirror://samba/${MY_P}.tar.gz
60 mirror://samba/old-versions/${MY_P}.tar.gz"
61 LICENSE="GPL-2"
62 SLOT="0"
63 KEYWORDS="alpha amd64 ~arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc ~sparc-fbsd x86 ~x86-fbsd"
64 IUSE_LINGUAS="linguas_ja linguas_pl"
65 IUSE="${IUSE_LINGUAS} acl ads async automount caps cups doc examples ipv6 kernel_linux ldap fam
66 pam python quotas readline selinux swat syslog winbind"
67
68 RDEPEND="dev-libs/popt
69 virtual/libiconv
70 acl? ( kernel_linux? ( sys-apps/acl ) )
71 cups? ( net-print/cups )
72 ipv6? ( sys-apps/xinetd )
73 ads? ( virtual/krb5 )
74 ldap? ( net-nds/openldap )
75 pam? ( virtual/pam )
76 python? ( dev-lang/python )
77 readline? ( sys-libs/readline )
78 selinux? ( sec-policy/selinux-samba )
79 swat? ( sys-apps/xinetd )
80 syslog? ( virtual/logger )
81 fam? ( virtual/fam )
82 caps? ( sys-libs/libcap )"
83 DEPEND="${RDEPEND}"
84
85 S=${WORKDIR}/${MY_P}
86 CONFDIR=${FILESDIR}/config
87 PRIVATE_DST=/var/lib/samba/private
88
89 pkg_setup() {
90 confutils_use_depend_all ads ldap
91 }
92
93 src_unpack() {
94 unpack ${A}
95 cd "${S}/source"
96
97 # This patch adds "-Wl,-z,now" to smb{mnt,umount}
98 # Please read ... for further informations
99 epatch "${FILESDIR}/3.0.26a-lazyldflags.patch"
100
101 # Bug #196015 (upstream: #5021)
102 epatch "${FILESDIR}/3.0.26a-invalid-free-fix.patch"
103
104 # Ok, agreed, this is ugly. But it avoids a patch we
105 # need for every samba version and we don't need autotools
106 sed -i \
107 -e 's|"lib32" ||' \
108 -e 's|if test -d "$i/$l" ;|if test -d "$i/$l" -o -L "$i/$l";|' \
109 configure || die "sed failed"
110
111 rm "${S}/docs/manpages"/{mount,umount}.cifs.8
112 }
113
114 src_compile() {
115 cd "${S}/source"
116
117 local myconf
118 local mylangs
119 local mymod_shared
120
121 python_version
122 myconf="--with-python=no"
123 use python && myconf="--with-python=${python}"
124
125 mylangs="--with-manpages-langs=en"
126 use linguas_ja && mylangs="${mylangs},ja"
127 use linguas_pl && mylangs="${mylangs},pl"
128
129 use winbind && mymod_shared="--with-shared-modules=idmap_rid"
130 if use ldap ; then
131 myconf="${myconf} $(use_with ads)"
132 use winbind && mymod_shared="${mymod_shared},idmap_ad"
133 fi
134
135 [[ ${CHOST} == *-*bsd* ]] && myconf="${myconf} --disable-pie"
136 use hppa && myconf="${myconf} --disable-pie"
137
138 use caps && export ac_cv_header_sys_capability_h=yes || export ac_cv_header_sys_capability_h=no
139
140 # Otherwise we get the whole swat stuff installed
141 if ! use swat ; then
142 sed -i \
143 -e 's/^\(install:.*\)installswat \(.*\)/\1\2/' \
144 Makefile.in || die "sed failed"
145 fi
146
147 econf \
148 --with-fhs \
149 --sysconfdir=/etc/samba \
150 --localstatedir=/var \
151 --with-configdir=/etc/samba \
152 --with-libdir=/usr/$(get_libdir)/samba \
153 --with-swatdir=/usr/share/doc/${PF}/swat \
154 --with-piddir=/var/run/samba \
155 --with-lockdir=/var/cache/samba \
156 --with-logfilebase=/var/log/samba \
157 --with-privatedir=${PRIVATE_DST} \
158 --with-libsmbclient \
159 --without-spinlocks \
160 --enable-socket-wrapper \
161 --with-cifsmount=no \
162 $(use_with acl acl-support) \
163 $(use_with async aio-support) \
164 $(use_with automount) \
165 $(use_enable cups) \
166 $(use_enable fam) \
167 $(use_with ads krb5) \
168 $(use_with ldap) \
169 $(use_with pam) $(use_with pam pam_smbpass) \
170 $(use_with quotas) $(use_with quotas sys-quotas) \
171 $(use_with readline) \
172 $(use_with kernel_linux smbmount) \
173 $(use_with syslog) \
174 $(use_with winbind) \
175 ${myconf} ${mylangs} ${mymod_shared} || die "econf failed"
176
177 emake proto || die "emake proto failed"
178 emake everything || die "emake everything failed"
179
180 if use python ; then
181 emake python_ext || die "emake python_ext failed"
182 fi
183 }
184
185 src_test() {
186 cd "${S}/source"
187 emake test || die "tests failed"
188 }
189
190 src_install() {
191 cd "${S}/source"
192
193 emake DESTDIR="${D}" install-everything || die "emake install-everything failed"
194
195 # Extra rpctorture progs
196 local extra_bins="rpctorture"
197 for i in ${extra_bins} ; do
198 [[ -x "${S}/bin/${i}" ]] && dobin "${S}/bin/${i}"
199 done
200
201 # remove .old stuff from /usr/bin:
202 rm -f "${D}"/usr/bin/*.old
203
204 # Removing executable bits from header-files
205 fperms 644 /usr/include/lib{msrpc,smbclient}.h
206
207 # Nsswitch extensions. Make link for wins and winbind resolvers
208 if use winbind ; then
209 dolib.so nsswitch/libnss_wins.so
210 dosym libnss_wins.so /usr/$(get_libdir)/libnss_wins.so.2
211 dolib.so nsswitch/libnss_winbind.so
212 dosym libnss_winbind.so /usr/$(get_libdir)/libnss_winbind.so.2
213 fi
214
215 if use pam ; then
216 dopammod bin/pam_smbpass.so
217 use winbind && dopammod bin/pam_winbind.so
218 fi
219
220 if use kernel_linux ; then
221 # Warning: this can byte you if /usr is
222 # on a separate volume and you have to mount
223 # a smb volume before the local mount
224 dosym ../usr/bin/smbmount /sbin/mount.smbfs
225 fperms 4755 /usr/bin/smbmnt
226 fperms 4755 /usr/bin/smbumount
227 fi
228
229 # bug #46389: samba doesn't create symlink anymore
230 # beaviour seems to be changed in 3.0.6, see bug #61046
231 dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so.0
232 dosym samba/libsmbclient.so /usr/$(get_libdir)/libsmbclient.so
233
234 # make the smb backend symlink for cups printing support (bug #133133)
235 if use cups ; then
236 dodir $(cups-config --serverbin)/backend
237 dosym /usr/bin/smbspool $(cups-config --serverbin)/backend/smb
238 fi
239
240 if use python ; then
241 emake DESTDIR="${D}" python_install || die "emake installpython failed"
242 # We're doing that manually
243 find "${D}/usr/$(get_libdir)/python${PYVER}/site-packages" -iname "*.pyc" -delete
244 fi
245
246 cd "${S}/source"
247
248 # General config files
249 insinto /etc/samba
250 doins "${CONFDIR}"/{smbusers,lmhosts}
251 newins "${CONFDIR}/smb.conf.example-samba3" smb.conf.example
252
253 newpamd "${CONFDIR}/samba.pam" samba
254 use winbind && doins ${CONFDIR}/system-auth-winbind
255 if use swat ; then
256 insinto /etc/xinetd.d
257 newins "${CONFDIR}/swat.xinetd" swat
258 else
259 rm -f "${D}/usr/sbin/swat"
260 rm -f "${D}/usr/share/man/man8/swat.8"
261 fi
262
263 newinitd "${FILESDIR}/samba-init" samba
264 newconfd "${FILESDIR}/samba-conf" samba
265
266 if use ldap ; then
267 insinto /etc/openldap/schema
268 doins "${S}/examples/LDAP/samba.schema"
269 fi
270
271 if use ipv6 ; then
272 insinto /etc/xinetd.d
273 newins "${FILESDIR}/samba-xinetd" smb
274 fi
275
276 # dirs
277 diropts -m0700 ; keepdir ${PRIVATE_DST}
278 diropts -m1777 ; keepdir /var/spool/samba
279
280 diropts -m0755
281 keepdir /var/{log,run,cache}/samba
282 keepdir /var/lib/samba/{netlogon,profiles}
283 keepdir /var/lib/samba/printers/{W32X86,WIN40,W32ALPHA,W32MIPS,W32PPC}
284 keepdir /usr/$(get_libdir)/samba/{rpc,idmap,auth}
285
286 # docs
287 dodoc "${FILESDIR}/README.gentoo"
288 dodoc "${S}"/{README,Roadmap,WHATSNEW.txt}
289 dodoc "${CONFDIR}/nsswitch.conf-wins"
290 use winbind && dodoc "${CONFDIR}/nsswitch.conf-winbind"
291
292 if use examples ; then
293 insinto /usr/share/doc/${PF}
294 doins -r "${S}/examples/"
295 find "${D}/usr/share/doc/${PF}" -type d -print0 | xargs -0 chmod 755
296 find "${D}/usr/share/doc/${PF}/examples" ! -type d -print0 | xargs -0 chmod 644
297 if use python ; then
298 insinto /usr/share/doc/${PF}/python
299 doins -r "${S}/source/python/examples"
300 fi
301 fi
302
303 if ! use doc ; then
304 if ! use swat ; then
305 rm -rf "${D}/usr/share/doc/${PF}/swat"
306 else
307 rm -rf "${D}/usr/share/doc/${PF}/swat/help"/{guide,howto,devel}
308 rm -rf "${D}/usr/share/doc/${PF}/swat/using_samba"
309 fi
310 fi
311
312 }
313
314 pkg_preinst() {
315 local PRIVATE_SRC=/etc/samba/private
316 if [[ ! -r "${ROOT}/${PRIVATE_DST}/secrets.tdb" \
317 && -r "${ROOT}/${PRIVATE_SRC}/secrets.tdb" ]] ; then
318 ebegin "Copying ${ROOT}/${PRIVATE_SRC}/* to ${ROOT}/${PRIVATE_DST}/"
319 mkdir -p "${D}/${PRIVATE_DST}"
320 cp -pPRf "${ROOT}/${PRIVATE_SRC}"/* "${D}/${PRIVATE_DST}/"
321 eend $?
322 fi
323
324 if [[ ! -f "${ROOT}/etc/samba/smb.conf" ]] ; then
325 touch "${D}/etc/samba/smb.conf"
326 fi
327 }
328
329 pkg_postinst() {
330 if use python ; then
331 python_version
332 python_mod_optimize /usr/$(get_libdir)/python${PYVER}/site-packages/samba
333 fi
334
335 if use swat ; then
336 einfo "swat must be enabled by xinetd:"
337 einfo " change the /etc/xinetd.d/swat configuration"
338 fi
339
340 if use ipv6 ; then
341 einfo "ipv6 support must be enabled by xinetd:"
342 einfo " change the /etc/xinetd.d/smb configuration"
343 fi
344
345 elog "It is possible to start/stop daemons separately:"
346 elog " Create a symlink from /etc/init.d/samba.{smbd,nmbd,winbind} to"
347 elog " /etc/init.d/samba. Calling /etc/init.d/samba directly will start"
348 elog " the daemons configured in /etc/conf.d/samba"
349
350 elog "The mount/umount.cifs helper applications are not included anymore."
351 elog "Please install net-fs/mount-cifs instead."
352
353 ewarn "If you're upgrading from 3.0.24 or earlier, please make sure to"
354 ewarn "restart your clients to clear any cached information about the server."
355 ewarn "Otherwise they might not be able to connect to the volumes."
356 }
357
358 pkg_postrm() {
359 if use python ; then
360 python_version
361 python_mod_cleanup /usr/$(get_libdir)/python${PYVER}/site-packages/samba
362 fi
363 }
364
365
366
367 --
368 gentoo-commits@g.o mailing list