summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-auth/passwdqc')
-rw-r--r--sys-auth/passwdqc/Manifest1
-rw-r--r--sys-auth/passwdqc/files/passwdqc-1.3.0-build.patch58
-rw-r--r--sys-auth/passwdqc/metadata.xml17
-rw-r--r--sys-auth/passwdqc/passwdqc-1.3.0.ebuild65
4 files changed, 141 insertions, 0 deletions
diff --git a/sys-auth/passwdqc/Manifest b/sys-auth/passwdqc/Manifest
new file mode 100644
index 000000000000..224b4b3dacda
--- /dev/null
+++ b/sys-auth/passwdqc/Manifest
@@ -0,0 +1 @@
+DIST passwdqc-1.3.0.tar.gz 48833 SHA256 23290ac21a055d9039b510bbc0d830a6dbf4295688d4317e0350ed4b6e5e7f50 SHA512 d9c2fd075ed4ff1f1dfa63fe40010d446abf8db306cacc77fd1e429fbd2dd1a6d2e4e91df46beb4c30bc30ff0cdd183ba85cefd362455ead9629d3a1c4eefece WHIRLPOOL c746394a2655b198597b70c29c0f66f6c1186a782da8c1a925fc9b7e838876d991c52469e9d526ecb99d2f1f36c6c5c83289b4ce3c92c269517dd1f507ddd7b3
diff --git a/sys-auth/passwdqc/files/passwdqc-1.3.0-build.patch b/sys-auth/passwdqc/files/passwdqc-1.3.0-build.patch
new file mode 100644
index 000000000000..c8adeb89b4ab
--- /dev/null
+++ b/sys-auth/passwdqc/files/passwdqc-1.3.0-build.patch
@@ -0,0 +1,58 @@
+--- a/Makefile
++++ b/Makefile
+@@ -20,10 +20,11 @@
+ BINMODE = 755
+ CONFDIR = /etc
+ CONFMODE = 644
+-SHARED_LIBDIR = /lib
++LIBDIR = lib
++SHARED_LIBDIR = /$(LIBDIR)
+ SHARED_LIBDIR_SUN = /usr/lib
+ SHARED_LIBDIR_REL = ../..$(SHARED_LIBDIR)
+-DEVEL_LIBDIR = /usr/lib
++DEVEL_LIBDIR = /usr/$(LIBDIR)
+-SECUREDIR = /lib/security
++SECUREDIR = /$(LIBDIR)/security
+ SECUREDIR_SUN = /usr/lib/security
+ SECUREDIR_DARWIN = /usr/lib/pam
+@@ -48,7 +49,7 @@
+ INSTALL_SUN = /usr/ucb/install -c
+ CFLAGS = -Wall -W -O2
+ CFLAGS_lib = $(CFLAGS) -fPIC
+-CFLAGS_bin = $(CFLAGS) -fomit-frame-pointer
++CFLAGS_bin = $(CFLAGS)
+
+ LDFLAGS =
+ LDFLAGS_shared = --shared
+@@ -93,7 +94,7 @@
+
+ default: all
+
+-all pam utils install install_lib install_pam install_utils uninstall remove remove_lib remove_pam remove_utils:
++all lib pam utils install install_lib install_pam install_utils uninstall remove remove_lib remove_pam remove_utils:
+ case "`uname -s`" in \
+ Linux) $(MAKE) CFLAGS_lib="$(CFLAGS_lib) -DHAVE_SHADOW" \
+ LDFLAGS_lib="$(LDFLAGS_lib_LINUX)" \
+@@ -126,18 +127,20 @@
+
+ all_wrapped: pam_wrapped utils_wrapped
+
++lib_wrapped: $(SHARED_LIB) $(DEVEL_LIB)
++
+ pam_wrapped: $(SHARED_PAM)
+
+ utils_wrapped: $(BINS)
+
+ $(SHARED_LIB): $(OBJS_LIB) $(MAP_LIB)
+- $(LD_lib) $(LDFLAGS_lib) $(OBJS_LIB) $(LDLIBS_lib) -o $(SHARED_LIB)
++ $(LD_lib) $(LDFLAGS) $(LDFLAGS_lib) $(OBJS_LIB) $(LDLIBS_lib) -o $(SHARED_LIB)
+
+ $(DEVEL_LIB): $(SHARED_LIB)
+ $(LN_s) $(SHARED_LIB) $(DEVEL_LIB)
+
+ $(SHARED_PAM): $(OBJS_PAM) $(MAP_PAM) $(DEVEL_LIB)
+- $(LD_lib) $(LDFLAGS_pam) $(OBJS_PAM) $(LDLIBS_pam) -L. -lpasswdqc -o $(SHARED_PAM)
++ $(LD_lib) $(LDFLAGS) $(LDFLAGS_pam) $(OBJS_PAM) $(LDLIBS_pam) -L. -lpasswdqc -o $(SHARED_PAM)
+
+ pwqgen: $(OBJS_GEN) $(DEVEL_LIB)
+ $(LD) $(LDFLAGS) $(OBJS_GEN) -L. -lpasswdqc -o $@
diff --git a/sys-auth/passwdqc/metadata.xml b/sys-auth/passwdqc/metadata.xml
new file mode 100644
index 000000000000..501cdc08ac75
--- /dev/null
+++ b/sys-auth/passwdqc/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>pam</herd>
+<maintainer>
+ <email>pam-bugs@gentoo.org</email>
+</maintainer>
+<use>
+ <flag name='utils'>Install pwqcheck and pwqgen helper utilities</flag>
+</use>
+<longdescription>
+ Password strength checking for PAM aware password changing programs. This is an alternative to the default cracklib.
+</longdescription>
+<longdescription lang="ja">
+ パスワード変更プログラムに反応する PAM のパスワード強度検査機能です。これはデフォルトの cracklib の代替です。
+</longdescription>
+</pkgmetadata>
diff --git a/sys-auth/passwdqc/passwdqc-1.3.0.ebuild b/sys-auth/passwdqc/passwdqc-1.3.0.ebuild
new file mode 100644
index 000000000000..c7c1daee1bca
--- /dev/null
+++ b/sys-auth/passwdqc/passwdqc-1.3.0.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit pam eutils toolchain-funcs multilib
+
+DESCRIPTION="Password strength checking library (and PAM module)"
+HOMEPAGE="http://www.openwall.com/passwdqc/"
+SRC_URI="http://www.openwall.com/${PN}/${P}.tar.gz"
+
+LICENSE="Openwall BSD public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux"
+IUSE="pam utils"
+
+RDEPEND="
+ pam? (
+ virtual/pam
+ !<sys-auth/pam_passwdqc-1.3.0
+ )"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.3.0-build.patch
+ sed -i \
+ -e 's:`uname -s`:Linux:' \
+ Makefile || die
+}
+
+_emake() {
+ emake \
+ LIBDIR="$(get_libdir)" \
+ CFLAGS="${CFLAGS} ${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ CC="$(tc-getCC)" \
+ LD="$(tc-getCC)" \
+ "$@"
+}
+
+src_compile() {
+ # The use of wrapped targets defeats the Makefile dep tracking.
+ # Build all the targets explicitly after the library.
+ _emake lib
+ if use pam || use utils ; then
+ _emake $(usev pam) $(usev utils)
+ fi
+}
+
+src_install() {
+ _emake \
+ DESTDIR="${ED}" \
+ install_lib $(usex pam install_pam '') $(usex utils install_utils '')
+ dodoc README PLATFORMS INTERNALS
+}
+
+pkg_postinst() {
+ if use pam ; then
+ elog "To activate pam_passwdqc use pam_passwdqc.so instead"
+ elog "of pam_cracklib.so in /etc/pam.d/system-auth."
+ elog "Also, if you want to change the parameters, read up"
+ elog "on the pam_passwdqc(8) man page."
+ fi
+}