From a3319f0c8dff03c0fa977598105ab28d5b6edaeb Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Sat, 8 Oct 2005 20:34:06 +0000 Subject: Add support for starting/stopping gssd daemons #108276 and installing their config files. Also tweak the man-pages SEE ALSO #107991. Package-Manager: portage-2.0.53_rc4 --- net-fs/nfs-utils/ChangeLog | 12 ++- net-fs/nfs-utils/Manifest | 21 ++-- net-fs/nfs-utils/files/digest-nfs-utils-1.0.7-r2 | 1 + net-fs/nfs-utils/files/nfs | 81 +++++++++++--- .../files/nfs-utils-1.0.7-man-pages.patch | 12 +++ net-fs/nfs-utils/files/nfs.confd | 9 +- net-fs/nfs-utils/nfs-utils-1.0.7-r2.ebuild | 118 +++++++++++++++++++++ 7 files changed, 224 insertions(+), 30 deletions(-) create mode 100644 net-fs/nfs-utils/files/digest-nfs-utils-1.0.7-r2 create mode 100644 net-fs/nfs-utils/files/nfs-utils-1.0.7-man-pages.patch create mode 100644 net-fs/nfs-utils/nfs-utils-1.0.7-r2.ebuild (limited to 'net-fs') diff --git a/net-fs/nfs-utils/ChangeLog b/net-fs/nfs-utils/ChangeLog index 5ffdec926a0f..98f6937b2aba 100644 --- a/net-fs/nfs-utils/ChangeLog +++ b/net-fs/nfs-utils/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for net-fs/nfs-utils -# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/ChangeLog,v 1.70 2005/09/17 11:05:07 kloeri Exp $ +# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/ChangeLog,v 1.71 2005/10/08 20:34:06 vapier Exp $ + +*nfs-utils-1.0.7-r2 (08 Oct 2005) + + 08 Oct 2005; Mike Frysinger + +files/nfs-utils-1.0.7-man-pages.patch, files/nfs, files/nfs.confd, + +nfs-utils-1.0.7-r2.ebuild: + Add support for starting/stopping gssd daemons #108276 and installing their + config files. Also tweak the man-pages SEE ALSO #107991. 23 Mar 2005; Jeremy Huddleston files/nfsmount: Corrected init script to use 'svc_stop; svc_start' and not 'stop; start'. diff --git a/net-fs/nfs-utils/Manifest b/net-fs/nfs-utils/Manifest index e68988e4b340..ffd02880c8a1 100644 --- a/net-fs/nfs-utils/Manifest +++ b/net-fs/nfs-utils/Manifest @@ -1,24 +1,27 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 -MD5 9cee4adcef8a47ea4ee35090f7f89b0a metadata.xml 225 -MD5 a5785bca6bda4d00aabdc28e36802df1 nfs-utils-1.0.6-r6.ebuild 2926 -MD5 297d2da334fb6df5e747f61b989ef7ca nfs-utils-1.0.7-r1.ebuild 3272 -MD5 7e586e7e74c590e5c5b8c747a9c41ae7 ChangeLog 10263 +MD5 b2c2e3d2fe34adf5699943ba00ccb402 ChangeLog 10586 MD5 3a3d8bd1a03bbf2c51a4e77a3516febd files/digest-nfs-utils-1.0.6-r6 67 MD5 46e91b0dea9cbbfedcdccc9386b6326d files/digest-nfs-utils-1.0.7-r1 67 +MD5 46e91b0dea9cbbfedcdccc9386b6326d files/digest-nfs-utils-1.0.7-r2 67 MD5 a02eed87e5d581e56feb0f6dfd18e6df files/exports 66 -MD5 21621dd473ef1b9bf3d4fdde0b738c51 files/nfs 5964 +MD5 8d3d9ac54a272ccbd554d80df273c51a files/nfs 6750 MD5 3c693e012dcb68827b8f82cc98fa129b files/nfs-utils-0.3.3-rquotad-overflow.patch 1243 MD5 3878538fac900450212b414f8c8c39ab files/nfs-utils-1.0.6-uclibc.patch 547 MD5 df57bdbe3dfddd40cda65b04509d5957 files/nfs-utils-1.0.6-usn36.patch.gz 5596 MD5 77b7b275efe6533d3aaf065c89f804ef files/nfs-utils-1.0.7-gcc4.patch 553 -MD5 1892989b0c12f8b6c533a8c6adfb90ff files/nfs.confd 577 +MD5 39cf4f293c56793694cb75afbd5c0c17 files/nfs-utils-1.0.7-man-pages.patch 219 +MD5 fc332370f9517304bc251f505b17abf2 files/nfs.confd 533 MD5 1f3e6130e4a60767a213d34ff3131ae4 files/nfsmount 1171 +MD5 9cee4adcef8a47ea4ee35090f7f89b0a metadata.xml 225 +MD5 a5785bca6bda4d00aabdc28e36802df1 nfs-utils-1.0.6-r6.ebuild 2926 +MD5 297d2da334fb6df5e747f61b989ef7ca nfs-utils-1.0.7-r1.ebuild 3272 +MD5 854612a273789b0188aa41905996ead6 nfs-utils-1.0.7-r2.ebuild 3414 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) -iD8DBQFDK/h3Kf2g/qXtneoRApwHAKC9F3kkbZw4PQ5C7zsEEpbpFWJvGwCgpsXb -Rk4hbITsvH9GR051Hs2j7tg= -=DWoO +iD8DBQFDSC21gIKl8Uu19MoRAkiPAJwOOAbhMXeEYvykDv+iMkIIGdU+ygCfZCU1 +0jPuxOeQL2CywwVsrnbBRaY= +=xTKO -----END PGP SIGNATURE----- diff --git a/net-fs/nfs-utils/files/digest-nfs-utils-1.0.7-r2 b/net-fs/nfs-utils/files/digest-nfs-utils-1.0.7-r2 new file mode 100644 index 000000000000..0b0ec24d0c0b --- /dev/null +++ b/net-fs/nfs-utils/files/digest-nfs-utils-1.0.7-r2 @@ -0,0 +1 @@ +MD5 8f863120261cd572ad320a9152581e11 nfs-utils-1.0.7.tar.gz 398577 diff --git a/net-fs/nfs-utils/files/nfs b/net-fs/nfs-utils/files/nfs index 489eaec9d7bf..1fafe55f5590 100755 --- a/net-fs/nfs-utils/files/nfs +++ b/net-fs/nfs-utils/files/nfs @@ -1,7 +1,7 @@ #!/sbin/runscript # Copyright 1999-2005 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/files/nfs,v 1.10 2005/03/15 05:43:49 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/files/nfs,v 1.11 2005/10/08 20:34:06 vapier Exp $ #--------------------------------------------------------------------------- # This script starts/stops the following @@ -21,11 +21,13 @@ restarting=no # The binary locations exportfs=/usr/sbin/exportfs -statd=/sbin/rpc.statd -idmapd=/usr/sbin/rpc.idmapd -rquotad=/usr/sbin/rpc.rquotad -nfsd=/usr/sbin/rpc.nfsd -mountd=/usr/sbin/rpc.mountd + gssd=/usr/sbin/rpc.gssd + idmapd=/usr/sbin/rpc.idmapd + mountd=/usr/sbin/rpc.mountd + nfsd=/usr/sbin/rpc.nfsd + rquotad=/usr/sbin/rpc.rquotad + statd=/sbin/rpc.statd + svcgssd=/usr/sbin/rpc.svcgssd depend() { use ypbind net @@ -33,9 +35,7 @@ depend() { after quota } -start_idmapd() { - [[ ! -x ${idmapd} ]] && return 0 - +mount_pipefs() { if grep -q rpc_pipefs /proc/filesystems ; then if ! grep -q "rpc_pipefs /var/lib/nfs/rpc_pipefs" /proc/mounts ; then [[ ! -d /var/lib/nfs/rpc_pipefs ]] && mkdir -p /var/lib/nfs/rpc_pipefs @@ -44,6 +44,54 @@ start_idmapd() { eend $? fi fi +} + +umount_pipefs() { + if [[ ${restarting} == "no" ]] ; then + if grep -q "rpc_pipefs /var/lib/nfs/rpc_pipefs" /proc/mounts ; then + ebegin "Unmounting RPC pipefs" + umount /var/lib/nfs/rpc_pipefs + eend $? + fi + fi +} + +start_gssd() { + [[ ! -x ${gssd} || ! -x ${svcgssd} ]] && return 0 + local ret1 ret2 + + ebegin "Starting gssd" + ${gssd} ${RPCGSSDDOPTS} + ret1=$? + eend ${ret1} + + ebegin "Starting svcgssd" + ${svcgssd} ${RPCSVCGSSDDOPTS} + ret2=$? + eend ${ret2} + + return $((${ret1} + ${ret2})) +} + +stop_gssd() { + [[ ! -x ${gssd} || ! -x ${svcgssd} ]] && return 0 + local ret + + ebegin "Stopping gssd" + start-stop-daemon --stop --quiet --exec ${gssd} + ret1=$? + eend ${ret1} + + ebegin "Stopping svcgssd" + start-stop-daemon --stop --quiet --exec ${svcgssd} + ret2=$? + eend ${ret2} + + return $((${ret1} + ${ret2})) +} + +start_idmapd() { + [[ ! -x ${idmapd} ]] && return 0 ebegin "Starting idmapd" ${idmapd} ${RPCIDMAPDOPTS} @@ -52,19 +100,14 @@ start_idmapd() { stop_idmapd() { [[ ! -x ${idmapd} ]] && return 0 + local ret ebegin "Stopping idmapd" start-stop-daemon --stop --quiet --exec ${idmapd} ret=$? eend ${ret} - if [[ $restarting == "no" ]] ; then - if grep -q "rpc_pipefs /var/lib/nfs/rpc_pipefs" /proc/mounts ; then - ebegin "Unmounting RPC pipefs" - umount /var/lib/nfs/rpc_pipefs - eend $? - fi - fi + umount_pipefs return ${ret} } @@ -111,7 +154,9 @@ start() { fi # now that nfsd is mounted inside /proc, we can safely start mountd later + mount_pipefs start_idmapd + start_gssd start_statd # Exportfs likes to hang if networking isn't working. @@ -188,7 +233,11 @@ stop() { fi stop_statd + stop_gssd stop_idmapd + umount_pipefs + + return 0 } reload() { diff --git a/net-fs/nfs-utils/files/nfs-utils-1.0.7-man-pages.patch b/net-fs/nfs-utils/files/nfs-utils-1.0.7-man-pages.patch new file mode 100644 index 000000000000..58836d2e9ebb --- /dev/null +++ b/net-fs/nfs-utils/files/nfs-utils-1.0.7-man-pages.patch @@ -0,0 +1,12 @@ +http://bugs.gentoo.org/107991 + +--- utils/nfsd/nfsd.man ++++ utils/nfsd/nfsd.man +@@ -38,6 +38,7 @@ + program. + .SH SEE ALSO + .BR rpc.mountd (8), ++.BR exports (5), + .BR exportfs (8), + .BR rpc.rquotad (8), + .BR nfsstat (8). diff --git a/net-fs/nfs-utils/files/nfs.confd b/net-fs/nfs-utils/files/nfs.confd index f72b1d72e564..2d26adc46f94 100644 --- a/net-fs/nfs-utils/files/nfs.confd +++ b/net-fs/nfs-utils/files/nfs.confd @@ -1,7 +1,4 @@ # /etc/conf.d/nfs -# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/files/nfs.confd,v 1.9 2005/03/18 07:22:00 vapier Exp $ - -# Config file for /etc/init.d/nfs # If you wish to set the port numbers for lockd, # please see /etc/sysctl.conf @@ -20,5 +17,11 @@ RPCSTATDOPTS="" # Options to pass to rpc.idmapd RPCIDMAPDOPTS="" +# Options to pass to rpc.gssd +RPCGSSDOPTS="" + +# Options to pass to rpc.svcgssd +RPCSVCGSSDOPTS="" + # Timeout (in seconds) for exportfs EXPORTFSTIMEOUT=30 diff --git a/net-fs/nfs-utils/nfs-utils-1.0.7-r2.ebuild b/net-fs/nfs-utils/nfs-utils-1.0.7-r2.ebuild new file mode 100644 index 000000000000..7d21d3954c6c --- /dev/null +++ b/net-fs/nfs-utils/nfs-utils-1.0.7-r2.ebuild @@ -0,0 +1,118 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-fs/nfs-utils/nfs-utils-1.0.7-r2.ebuild,v 1.1 2005/10/08 20:34:06 vapier Exp $ + +inherit gnuconfig eutils flag-o-matic + +DESCRIPTION="NFS client and server daemons" +HOMEPAGE="http://nfs.sourceforge.net/" +SRC_URI="mirror://sourceforge/nfs/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="nonfsv4 tcpd kerberos" + +# kth-krb doesn't provide the right include +# files, and nfs-utils doesn't build against heimdal either, +# so don't depend on virtual/krb. +# (04 Feb 2005 agriffis) +RDEPEND="tcpd? ( sys-apps/tcp-wrappers ) + >=net-nds/portmap-5b-r6 + >=sys-apps/util-linux-2.11f + !nonfsv4? ( + >=dev-libs/libevent-1.0b + >=net-libs/nfsidmap-0.9 + ) + kerberos? ( app-crypt/mit-krb5 )" +DEPEND="${RDEPEND} + >=sys-apps/portage-2.0.51" + +src_unpack() { + unpack ${A} + cd "${S}" + + epatch "${FILESDIR}"/${P}-gcc4.patch #88421 + epatch "${FILESDIR}"/${P}-man-pages.patch #107991 + + # getrpcbynumber_r is not in the SuSv3 spec. disable it for uClibc + epatch "${FILESDIR}"/nfs-utils-1.0.6-uclibc.patch + + # since the usn36 patch is now integrated (at least the parts we care about) + # into 1.0.7, we need to re-apply the rquoted patch (04 Feb 2005 agriffis) + epatch "${FILESDIR}"/nfs-utils-0.3.3-rquotad-overflow.patch + + sed -i 's:@mandir@:$(install_prefix)@mandir@:' config.mk.in +} + +src_compile() { + econf \ + --mandir=/usr/share/man \ + --with-statedir=/var/lib/nfs \ + --disable-rquotad \ + --enable-nfsv3 \ + --enable-secure-statd \ + $(use_enable !nonfsv4 nfsv4) \ + $(use_enable kerberos gss) \ + || die "Configure failed" + + if ! use tcpd ; then + sed -i "s:\(-lwrap\|-DHAVE_TCP_WRAPPER\)::" config.mk + fi + + # parallel make fails for depend target + emake -j1 depend || die "failed to make depend" + emake || die "Failed to compile" +} + +src_install() { + make install_prefix="${D}" install || die + + # Don't overwrite existing xtab/etab, install the original + # versions somewhere safe... more info in pkg_postinst + dodir /usr/lib/nfs + keepdir /var/lib/nfs/{sm,sm.bak} + mv "${D}"/var/lib/nfs/* "${D}"/usr/lib/nfs + keepdir /var/lib/nfs + keepdir /var/lib/nfs/v4root + + # Install some client-side binaries in /sbin + dodir /sbin + mv "${D}"/usr/sbin/rpc.{lockd,statd} "${D}"/sbin/ + + dodoc ChangeLog README + docinto linux-nfs ; dodoc linux-nfs/* + + insinto /etc + doins "${FILESDIR}"/exports + use !nonfsv4 && doins utils/idmapd/idmapd.conf + use kerberos && newins support/gssapi/SAMPLE_gssapi_mech.conf + + doinitd "${FILESDIR}"/nfs "${FILESDIR}"/nfsmount + newconfd "${FILESDIR}"/nfs.confd nfs + + # uClibc doesn't provide rpcgen like glibc, so lets steal it from nfs-utils + if ! use elibc_glibc ; then + dobin tools/rpcgen/rpcgen || die "rpcgen" + newdoc tools/rpcgen/README README.rpcgen + fi +} + +pkg_preinst() { + if [[ -s ${ROOT}/etc/exports ]] ; then + rm -f "${IMAGE}"/etc/exports + fi +} + +pkg_postinst() { + # Install default xtab and friends if there's none existing. + # In src_install we put them in /usr/lib/nfs for safe-keeping, but + # the daemons actually use the files in /var/lib/nfs. This fixes + # bug 30486 + local f + for f in "${ROOT}"/usr/lib/nfs/*; do + [[ -f ${ROOT}/var/lib/nfs/${f##*/} ]] && continue + einfo "Copying default ${f##*/} from /usr/lib/nfs to /var/lib/nfs" + cp -pPR ${f} "${ROOT}"/var/lib/nfs/ + done +} -- cgit v1.2.3-65-gdbad