mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
net-libs/libnfsidmap: Bump to version 0.27
Package-Manager: Portage-2.3.24, Repoman-2.3.6
This commit is contained in:
@@ -1,2 +1,3 @@
|
||||
DIST libnfsidmap-0.24.tar.gz 328720 BLAKE2B 4b33a589b9d4b47530d2044a0912481dfda770de86f7aa90e80771f2df4b555857535a7f162a485b68c9b1d48be563d246e128fa3ca1e3c79d9bf0af69b8401d SHA512 1283a4af1bcf3c6f941ab294acc0b2b4bd9ca947f2d3c2e866717478ba2e7a2190a5467b71d7e9136c5c83de564c4892f9e3304323ae17e3988af2e40c43982b
|
||||
DIST libnfsidmap-0.25.tar.gz 346587 BLAKE2B dbf31779371ba29737ed7a5901cf46f17e4a1b2ac444c2959d3ae76f41815e9a15a2ee892e417c5b7f97cf5f8396024071430fed028a8cd583aeed1a95e350df SHA512 8acf30790cdd19341c75cb8a4f7ee4dbc9f688c8514258046e55c8f4245df213709ccb7d5327a11b146b0e3b7266d3d4da018699c6be47fbedcc4cd384b54557
|
||||
DIST libnfsidmap-0.27.tar.bz2 303900 BLAKE2B c6cb8d81042426552fd3cde9dfd26f805d3c92281a65c3ca2d12671477eb697f3cd51a6d8313a658eb70232136e5615e0cb9ad090a92e747e245f49e60cfcf8a SHA512 0698079abb4bb9ebeaccbcabca725b022c1daaa3d287944d9c4c2a2134489b649b44fcbcd9916e91dd6d91cdc67d267adf5741c5404150c66cc8243b9f15970d
|
||||
|
||||
115
net-libs/libnfsidmap/files/libnfsidmap-0.27-getgrouplist.patch
Normal file
115
net-libs/libnfsidmap/files/libnfsidmap-0.27-getgrouplist.patch
Normal file
@@ -0,0 +1,115 @@
|
||||
http://bugs.gentoo.org/169909
|
||||
|
||||
--- libnfsidmap-0.27/configure.ac
|
||||
+++ libnfsidmap-0.27/configure.ac
|
||||
@@ -63,7 +63,7 @@
|
||||
|
||||
# Checks for library functions.
|
||||
AC_FUNC_MALLOC
|
||||
-AC_CHECK_FUNCS([strchr strdup])
|
||||
+AC_CHECK_FUNCS([strchr strdup getgrouplist])
|
||||
|
||||
AC_CONFIG_FILES([Makefile])
|
||||
AC_CONFIG_FILES([libnfsidmap.pc])
|
||||
--- libnfsidmap-0.27/getgrouplist.c
|
||||
+++ libnfsidmap-0.27/getgrouplist.c
|
||||
@@ -0,0 +1,88 @@
|
||||
+/*
|
||||
+ * getgrouplist.c
|
||||
+ *
|
||||
+ * if system does not provide the non-standard getgrouplist, we will emulate
|
||||
+ * it via POSIX standard functions
|
||||
+ *
|
||||
+ * Copyright (c) 1991, 1993
|
||||
+ * The Regents of the University of California. All rights reserved.
|
||||
+ *
|
||||
+ * Redistribution and use in source and binary forms, with or without
|
||||
+ * modification, are permitted provided that the following conditions
|
||||
+ * are met:
|
||||
+ * 1. Redistributions of source code must retain the above copyright
|
||||
+ * notice, this list of conditions and the following disclaimer.
|
||||
+ * 2. Redistributions in binary form must reproduce the above copyright
|
||||
+ * notice, this list of conditions and the following disclaimer in the
|
||||
+ * documentation and/or other materials provided with the distribution.
|
||||
+ * 4. Neither the name of the University nor the names of its contributors
|
||||
+ * may be used to endorse or promote products derived from this software
|
||||
+ * without specific prior written permission.
|
||||
+ *
|
||||
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
+ * SUCH DAMAGE.
|
||||
+ */
|
||||
+
|
||||
+#ifdef HAVE_CONFIG_H
|
||||
+#include "config.h"
|
||||
+#endif
|
||||
+#include <sys/types.h>
|
||||
+#include <grp.h>
|
||||
+#include <string.h>
|
||||
+#include <unistd.h>
|
||||
+
|
||||
+#ifndef HAVE_GETGROUPLIST
|
||||
+static
|
||||
+int
|
||||
+getgrouplist(const char *uname, gid_t agroup, gid_t *groups, int *grpcnt)
|
||||
+{
|
||||
+ const struct group *grp;
|
||||
+ int i, maxgroups, ngroups, ret;
|
||||
+
|
||||
+ ret = 0;
|
||||
+ ngroups = 0;
|
||||
+ maxgroups = *grpcnt;
|
||||
+ /*
|
||||
+ * When installing primary group, duplicate it;
|
||||
+ * the first element of groups is the effective gid
|
||||
+ * and will be overwritten when a setgid file is executed.
|
||||
+ */
|
||||
+ groups[ngroups++] = agroup;
|
||||
+ if (maxgroups > 1)
|
||||
+ groups[ngroups++] = agroup;
|
||||
+ /*
|
||||
+ * Scan the group file to find additional groups.
|
||||
+ */
|
||||
+ setgrent();
|
||||
+ while ((grp = getgrent()) != NULL) {
|
||||
+ for (i = 0; i < ngroups; i++) {
|
||||
+ if (grp->gr_gid == groups[i])
|
||||
+ goto skip;
|
||||
+ }
|
||||
+ for (i = 0; grp->gr_mem[i]; i++) {
|
||||
+ if (!strcmp(grp->gr_mem[i], uname)) {
|
||||
+ if (ngroups >= maxgroups) {
|
||||
+ ret = -1;
|
||||
+ break;
|
||||
+ }
|
||||
+ groups[ngroups++] = grp->gr_gid;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+skip:
|
||||
+ ;
|
||||
+ }
|
||||
+ endgrent();
|
||||
+ *grpcnt = ngroups;
|
||||
+ return (ret);
|
||||
+}
|
||||
+#endif
|
||||
--- libnfsidmap-0.27/nss.c
|
||||
+++ libnfsidmap-0.27/nss.c
|
||||
@@ -51,6 +51,8 @@
|
||||
#include "cfg.h"
|
||||
#include <syslog.h>
|
||||
|
||||
+#include "getgrouplist.c"
|
||||
+
|
||||
/*
|
||||
* NSS Translation Methods
|
||||
*
|
||||
57
net-libs/libnfsidmap/libnfsidmap-0.27.ebuild
Normal file
57
net-libs/libnfsidmap/libnfsidmap-0.27.ebuild
Normal file
@@ -0,0 +1,57 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit autotools multilib
|
||||
|
||||
DESCRIPTION="NFSv4 ID <-> name mapping library"
|
||||
HOMEPAGE="http://www.citi.umich.edu/projects/nfsv4/linux/"
|
||||
#SRC_URI="http://www.citi.umich.edu/projects/nfsv4/linux/libnfsidmap/${P}.tar.gz"
|
||||
SRC_URI="https://fedorapeople.org/~steved/${PN}/${PV}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
|
||||
IUSE="ldap static-libs"
|
||||
|
||||
DEPEND="ldap? ( net-nds/openldap )"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
!<net-fs/nfs-utils-1.2.2
|
||||
!net-fs/idmapd
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0.27-getgrouplist.patch #169909
|
||||
"${FILESDIR}"/${PN}-0.21-headers.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
# Ideally the build would use -DLIBDIR=$(libdir) at build time.
|
||||
sed -i \
|
||||
-e "/PATH_PLUGINS/s:/usr/lib/libnfsidmap:${EPREFIX}/usr/$(get_libdir)/libnfsidmap:" \
|
||||
libnfsidmap.c || die #504666
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
--disable-dependency-tracking
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable ldap)
|
||||
)
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
insinto /etc
|
||||
doins idmapd.conf
|
||||
|
||||
# remove useless files
|
||||
rm -f "${ED%/}"/usr/$(get_libdir)/libnfsidmap/*.{a,la}
|
||||
use static-libs || find "${ED%/}"/usr -name '*.la' -delete || die
|
||||
}
|
||||
Reference in New Issue
Block a user