summaryrefslogtreecommitdiff
path: root/sys-auth
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sys-auth
reinit the tree, so we can have metadata
Diffstat (limited to 'sys-auth')
-rw-r--r--sys-auth/bioapi/Manifest12
-rw-r--r--sys-auth/bioapi/bioapi-1.2.3-r2.ebuild78
-rw-r--r--sys-auth/bioapi/bioapi-1.2.4.ebuild76
-rw-r--r--sys-auth/bioapi/files/bioapi-1.2.3-build.patch42
-rw-r--r--sys-auth/bioapi/files/bioapi-1.2.3-enroll-ret.patch16
-rw-r--r--sys-auth/bioapi/files/bioapi-1.2.3-gcc44.patch12
-rw-r--r--sys-auth/bioapi/files/bioapi-1.2.3-no-delete.patch15
-rw-r--r--sys-auth/bioapi/files/bioapi-1.2.4-build.patch42
-rw-r--r--sys-auth/bioapi/metadata.xml12
-rw-r--r--sys-auth/consolekit/Manifest28
-rw-r--r--sys-auth/consolekit/consolekit-0.4.6.ebuild124
-rw-r--r--sys-auth/consolekit/consolekit-1.0.1.ebuild116
-rw-r--r--sys-auth/consolekit/consolekit-1.1.0-r1.ebuild119
-rw-r--r--sys-auth/consolekit/consolekit-1.1.0.ebuild116
-rw-r--r--sys-auth/consolekit/consolekit-1.1.1.ebuild130
-rw-r--r--sys-auth/consolekit/consolekit-1.1.2.ebuild130
-rw-r--r--sys-auth/consolekit/consolekit-1.2.0.ebuild131
-rw-r--r--sys-auth/consolekit/consolekit-9999.ebuild127
-rw-r--r--sys-auth/consolekit/files/90-consolekit-332
-rw-r--r--sys-auth/consolekit/files/consolekit-0.2.rc25
-rw-r--r--sys-auth/consolekit/files/consolekit-0.4.5-polkit-automagic.patch30
-rw-r--r--sys-auth/consolekit/files/consolekit-1.0.0.initd16
-rw-r--r--sys-auth/consolekit/files/consolekit-1.1.0-Remove-the-root-restriction-for-runtime-dirs.patch57
-rw-r--r--sys-auth/consolekit/files/consolekit-1.1.1-0001-Fix-enable-libudev-configure-flag.patch41
-rw-r--r--sys-auth/consolekit/files/consolekit-cleanup_console_tags.patch67
-rw-r--r--sys-auth/consolekit/files/consolekit-shutdown-reboot-without-policies.patch26
-rw-r--r--sys-auth/consolekit/files/consolekit-udev-acl-install_to_usr.patch28
-rw-r--r--sys-auth/consolekit/files/pam-foreground-compat.ck17
-rw-r--r--sys-auth/consolekit/metadata.xml22
-rw-r--r--sys-auth/docker_auth/Manifest39
-rw-r--r--sys-auth/docker_auth/docker_auth-1.3-r1.ebuild88
-rw-r--r--sys-auth/docker_auth/docker_auth-1.3.ebuild87
-rw-r--r--sys-auth/docker_auth/files/docker_auth-ldap-cacert.patch67
-rw-r--r--sys-auth/docker_auth/files/docker_auth-ldap-group-support-1.patch394
-rw-r--r--sys-auth/docker_auth/files/docker_auth-ldap-group-support.patch363
-rw-r--r--sys-auth/docker_auth/files/docker_auth.confd2
-rw-r--r--sys-auth/docker_auth/files/docker_auth.initd19
-rw-r--r--sys-auth/docker_auth/files/docker_auth.logrotated8
-rw-r--r--sys-auth/docker_auth/files/version.go6
-rw-r--r--sys-auth/docker_auth/metadata.xml11
-rw-r--r--sys-auth/elogind/Manifest25
-rw-r--r--sys-auth/elogind/elogind-229.6.ebuild85
-rw-r--r--sys-auth/elogind/elogind-229.8.ebuild105
-rw-r--r--sys-auth/elogind/elogind-231.4.ebuild85
-rw-r--r--sys-auth/elogind/elogind-231.6.ebuild105
-rw-r--r--sys-auth/elogind/elogind-232.3.ebuild85
-rw-r--r--sys-auth/elogind/elogind-232.5.ebuild105
-rw-r--r--sys-auth/elogind/elogind-233.6.ebuild105
-rw-r--r--sys-auth/elogind/elogind-233.7.ebuild105
-rw-r--r--sys-auth/elogind/elogind-234.3.ebuild105
-rw-r--r--sys-auth/elogind/elogind-234.4.ebuild105
-rw-r--r--sys-auth/elogind/files/elogind-226.4-docs.patch15
-rw-r--r--sys-auth/elogind/files/elogind.conf7
-rw-r--r--sys-auth/elogind/files/elogind.conf.in7
-rw-r--r--sys-auth/elogind/files/elogind.init25
-rw-r--r--sys-auth/elogind/metadata.xml13
-rw-r--r--sys-auth/fingerprint-gui/Manifest5
-rw-r--r--sys-auth/fingerprint-gui/fingerprint-gui-1.07.ebuild93
-rw-r--r--sys-auth/fingerprint-gui/metadata.xml11
-rw-r--r--sys-auth/fprint_demo/Manifest5
-rw-r--r--sys-auth/fprint_demo/fprint_demo-0.4.ebuild22
-rw-r--r--sys-auth/fprint_demo/metadata.xml11
-rw-r--r--sys-auth/fprintd/Manifest13
-rw-r--r--sys-auth/fprintd/fprintd-0.2.0-r1.ebuild67
-rw-r--r--sys-auth/fprintd/fprintd-0.4.1.ebuild67
-rw-r--r--sys-auth/fprintd/fprintd-0.5.0.ebuild63
-rw-r--r--sys-auth/fprintd/fprintd-0.5.1.ebuild63
-rw-r--r--sys-auth/fprintd/fprintd-0.6.0.ebuild63
-rw-r--r--sys-auth/fprintd/metadata.xml8
-rw-r--r--sys-auth/google-authenticator/Manifest7
-rw-r--r--sys-auth/google-authenticator/google-authenticator-1.01_pre20160307231538.ebuild70
-rw-r--r--sys-auth/google-authenticator/google-authenticator-1.04-r1.ebuild50
-rw-r--r--sys-auth/google-authenticator/google-authenticator-9999.ebuild50
-rw-r--r--sys-auth/google-authenticator/metadata.xml10
-rw-r--r--sys-auth/icmpdn/Manifest7
-rw-r--r--sys-auth/icmpdn/files/conf.d-icmpdnd14
-rw-r--r--sys-auth/icmpdn/files/init.d-icmpdnd26
-rw-r--r--sys-auth/icmpdn/icmpdn-0.4.ebuild38
-rw-r--r--sys-auth/icmpdn/metadata.xml7
-rw-r--r--sys-auth/keystone/Manifest12
-rw-r--r--sys-auth/keystone/keystone-10.0.3.ebuild164
-rw-r--r--sys-auth/keystone/keystone-11.0.3.ebuild158
-rw-r--r--sys-auth/keystone/keystone-12.0.0.ebuild173
-rw-r--r--sys-auth/keystone/keystone-2016.2.9999.ebuild165
-rw-r--r--sys-auth/keystone/keystone-2017.1.9999.ebuild159
-rw-r--r--sys-auth/keystone/keystone-2017.2.9999.ebuild174
-rw-r--r--sys-auth/keystone/metadata.xml23
-rw-r--r--sys-auth/libfprint/Manifest16
-rw-r--r--sys-auth/libfprint/files/libfprint-0.5.0-automake-1.13.patch24
-rw-r--r--sys-auth/libfprint/files/libfprint-0.5.0-support-147e_2020.patch48
-rw-r--r--sys-auth/libfprint/files/libfprint-0.6.0-fix-udev-rules.patch23
-rw-r--r--sys-auth/libfprint/libfprint-0.4.0-r1.ebuild51
-rw-r--r--sys-auth/libfprint/libfprint-0.5.0-r2.ebuild47
-rw-r--r--sys-auth/libfprint/libfprint-0.5.1-r2.ebuild48
-rw-r--r--sys-auth/libfprint/libfprint-0.6.0-r2.ebuild59
-rw-r--r--sys-auth/libfprint/metadata.xml11
-rw-r--r--sys-auth/libnss-cache/Manifest7
-rw-r--r--sys-auth/libnss-cache/files/libnss-cache-0.10-fix-shadow-test.patch12
-rw-r--r--sys-auth/libnss-cache/files/libnss-cache-0.10.1-make.patch49
-rw-r--r--sys-auth/libnss-cache/libnss-cache-0.10.2.ebuild34
-rw-r--r--sys-auth/libnss-cache/metadata.xml12
-rw-r--r--sys-auth/libnss-mysql/Manifest7
-rw-r--r--sys-auth/libnss-mysql/files/libnss-mysql-1.5_p20060915-no-automagic-debug.diff14
-rw-r--r--sys-auth/libnss-mysql/libnss-mysql-1.5_p20060915-r2.ebuild49
-rw-r--r--sys-auth/libnss-mysql/libnss-mysql-1.5_p20060915-r3.ebuild51
-rw-r--r--sys-auth/libnss-mysql/metadata.xml14
-rw-r--r--sys-auth/libnss-pgsql/Manifest10
-rw-r--r--sys-auth/libnss-pgsql/files/libnss-pgsql-1.4.0-gentoo.patch12
-rw-r--r--sys-auth/libnss-pgsql/files/libnss-pgsql-1.4.0-schema.patch22
-rw-r--r--sys-auth/libnss-pgsql/files/libnss-pgsql-1.5.0_beta-gentoo.patch44
-rw-r--r--sys-auth/libnss-pgsql/libnss-pgsql-1.4.0.ebuild54
-rw-r--r--sys-auth/libnss-pgsql/libnss-pgsql-1.5.0_beta.ebuild53
-rw-r--r--sys-auth/libnss-pgsql/metadata.xml8
-rw-r--r--sys-auth/libyubikey/Manifest7
-rw-r--r--sys-auth/libyubikey/libyubikey-1.12.ebuild18
-rw-r--r--sys-auth/libyubikey/libyubikey-1.13.ebuild18
-rw-r--r--sys-auth/libyubikey/metadata.xml12
-rw-r--r--sys-auth/metadata.xml44
-rw-r--r--sys-auth/munge/Manifest12
-rw-r--r--sys-auth/munge/files/fixed-recursive-use-of-make-in-makefiles.patch134
-rw-r--r--sys-auth/munge/files/munged.confd13
-rw-r--r--sys-auth/munge/files/munged.initd47
-rw-r--r--sys-auth/munge/metadata.xml23
-rw-r--r--sys-auth/munge/munge-0.5.10-r2.ebuild60
-rw-r--r--sys-auth/munge/munge-0.5.11-r1.ebuild63
-rw-r--r--sys-auth/munge/munge-0.5.12.ebuild63
-rw-r--r--sys-auth/nss-mdns/Manifest9
-rw-r--r--sys-auth/nss-mdns/files/mdns.allow3
-rw-r--r--sys-auth/nss-mdns/files/nss-mdns-0.10-avahi-socket.patch14
-rw-r--r--sys-auth/nss-mdns/files/nss-mdns-0.10-ipv6.patch528
-rw-r--r--sys-auth/nss-mdns/metadata.xml24
-rw-r--r--sys-auth/nss-mdns/nss-mdns-0.10-r3.ebuild62
-rw-r--r--sys-auth/nss-mdns/nss-mdns-9999.ebuild58
-rw-r--r--sys-auth/nss-myhostname/Manifest5
-rw-r--r--sys-auth/nss-myhostname/metadata.xml22
-rw-r--r--sys-auth/nss-myhostname/nss-myhostname-0.3.ebuild38
-rw-r--r--sys-auth/nss-pam-ldapd/Manifest18
-rw-r--r--sys-auth/nss-pam-ldapd/files/nslcd-init-r136
-rw-r--r--sys-auth/nss-pam-ldapd/files/nslcd-init-r228
-rw-r--r--sys-auth/nss-pam-ldapd/files/nslcd-run-s63
-rw-r--r--sys-auth/nss-pam-ldapd/files/nslcd-tmpfiles.conf1
-rw-r--r--sys-auth/nss-pam-ldapd/files/nslcd.service14
-rw-r--r--sys-auth/nss-pam-ldapd/files/nss-pam-ldapd-0.9.4-disable-py3-only-linters.patch13
-rw-r--r--sys-auth/nss-pam-ldapd/files/nss-pam-ldapd-0.9.8-pynslcd-module-paths.patch25
-rw-r--r--sys-auth/nss-pam-ldapd/files/pynslcd.initd28
-rw-r--r--sys-auth/nss-pam-ldapd/metadata.xml27
-rw-r--r--sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.8.14-r2.ebuild86
-rw-r--r--sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.7.ebuild127
-rw-r--r--sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.8-r2.ebuild163
-rw-r--r--sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.8.ebuild128
-rw-r--r--sys-auth/nss_ldap/Manifest34
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-239-tls-security-bug.patch42
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-249-sasl-compile.patch11
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-252-reconnect-timeouts.patch65
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-254-nss_getgrent_skipmembers.patch226
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-254-soname.patch12
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-257-nss_max_group_depth.patch92
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-257.2-gssapi-headers.patch65
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-264-disable-automagic.patch109
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-265-fbsd.patch432
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-265-installdir.patch35
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-265-missing-entries-oneshot.patch101
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-265-pthread.patch481
-rw-r--r--sys-auth/nss_ldap/files/nss_ldap-265-reconnect-timeouts.patch57
-rw-r--r--sys-auth/nss_ldap/files/nsswitch.ldap.diff15
-rw-r--r--sys-auth/nss_ldap/metadata.xml15
-rw-r--r--sys-auth/nss_ldap/nss_ldap-258.ebuild79
-rw-r--r--sys-auth/nss_ldap/nss_ldap-259.ebuild79
-rw-r--r--sys-auth/nss_ldap/nss_ldap-261.ebuild83
-rw-r--r--sys-auth/nss_ldap/nss_ldap-262.ebuild83
-rw-r--r--sys-auth/nss_ldap/nss_ldap-264-r1.ebuild101
-rw-r--r--sys-auth/nss_ldap/nss_ldap-264.ebuild98
-rw-r--r--sys-auth/nss_ldap/nss_ldap-265-r1.ebuild113
-rw-r--r--sys-auth/nss_ldap/nss_ldap-265-r2.ebuild121
-rw-r--r--sys-auth/nss_ldap/nss_ldap-265-r4.ebuild140
-rw-r--r--sys-auth/nss_ldap/nss_ldap-265-r5.ebuild148
-rw-r--r--sys-auth/nss_ldap/nss_ldap-265.ebuild105
-rw-r--r--sys-auth/oath-toolkit/Manifest7
-rw-r--r--sys-auth/oath-toolkit/metadata.xml15
-rw-r--r--sys-auth/oath-toolkit/oath-toolkit-2.6.1.ebuild58
-rw-r--r--sys-auth/oath-toolkit/oath-toolkit-2.6.2.ebuild58
-rw-r--r--sys-auth/openpam/Manifest8
-rw-r--r--sys-auth/openpam/files/openpam-20130907-gentoo.patch149
-rw-r--r--sys-auth/openpam/files/openpam-20130907-module-dir.patch15
-rw-r--r--sys-auth/openpam/files/openpam-20130907-nbsd.patch12
-rw-r--r--sys-auth/openpam/metadata.xml11
-rw-r--r--sys-auth/openpam/openpam-20140912.ebuild49
-rw-r--r--sys-auth/otpcalc/Manifest7
-rw-r--r--sys-auth/otpcalc/files/otpcalc.desktop8
-rw-r--r--sys-auth/otpcalc/metadata.xml11
-rw-r--r--sys-auth/otpcalc/otpcalc-0.97-r8.ebuild49
-rw-r--r--sys-auth/pam-afs-session/Manifest9
-rw-r--r--sys-auth/pam-afs-session/metadata.xml8
-rw-r--r--sys-auth/pam-afs-session/pam-afs-session-1.3.ebuild27
-rw-r--r--sys-auth/pam-afs-session/pam-afs-session-1.5.ebuild27
-rw-r--r--sys-auth/pam-afs-session/pam-afs-session-1.6.ebuild27
-rw-r--r--sys-auth/pam-csync/Manifest7
-rw-r--r--sys-auth/pam-csync/files/pam-csync-0.42.0-cmake.patch25
-rw-r--r--sys-auth/pam-csync/files/pam-csync-0.42.0-ocsync.patch33
-rw-r--r--sys-auth/pam-csync/metadata.xml5
-rw-r--r--sys-auth/pam-csync/pam-csync-0.42.0-r1.ebuild31
-rw-r--r--sys-auth/pam-pgsql/Manifest5
-rw-r--r--sys-auth/pam-pgsql/metadata.xml10
-rw-r--r--sys-auth/pam-pgsql/pam-pgsql-0.7.3.2.ebuild51
-rw-r--r--sys-auth/pam-script/Manifest9
-rw-r--r--sys-auth/pam-script/metadata.xml12
-rw-r--r--sys-auth/pam-script/pam-script-1.1.6.ebuild36
-rw-r--r--sys-auth/pam-script/pam-script-1.1.7.ebuild36
-rw-r--r--sys-auth/pam-script/pam-script-1.1.8.ebuild46
-rw-r--r--sys-auth/pam_abl/Manifest5
-rw-r--r--sys-auth/pam_abl/metadata.xml21
-rw-r--r--sys-auth/pam_abl/pam_abl-0.6.0.ebuild50
-rw-r--r--sys-auth/pam_bioapi/Manifest7
-rw-r--r--sys-auth/pam_bioapi/files/pam_bioapi-0.4.0-headers.patch27
-rw-r--r--sys-auth/pam_bioapi/metadata.xml11
-rw-r--r--sys-auth/pam_bioapi/pam_bioapi-0.4.0-r1.ebuild46
-rw-r--r--sys-auth/pam_bioapi/pam_bioapi-0.4.0.ebuild40
-rw-r--r--sys-auth/pam_blue/Manifest8
-rw-r--r--sys-auth/pam_blue/files/pam_blue-0.9.0-bad-log.patch11
-rw-r--r--sys-auth/pam_blue/files/pam_blue-0.9.0-char-locales.patch17
-rw-r--r--sys-auth/pam_blue/metadata.xml16
-rw-r--r--sys-auth/pam_blue/pam_blue-0.9.0-r1.ebuild47
-rw-r--r--sys-auth/pam_blue/pam_blue-0.9.0.ebuild45
-rw-r--r--sys-auth/pam_chroot/Manifest5
-rw-r--r--sys-auth/pam_chroot/metadata.xml11
-rw-r--r--sys-auth/pam_chroot/pam_chroot-0.9.2.ebuild35
-rw-r--r--sys-auth/pam_dotfile/Manifest8
-rw-r--r--sys-auth/pam_dotfile/files/pam_dotfile-0.7-gentoo.patch157
-rw-r--r--sys-auth/pam_dotfile/metadata.xml10
-rw-r--r--sys-auth/pam_dotfile/pam_dotfile-0.7-r1.ebuild52
-rw-r--r--sys-auth/pam_dotfile/pam_dotfile-0.7-r2.ebuild45
-rw-r--r--sys-auth/pam_fprint/Manifest6
-rw-r--r--sys-auth/pam_fprint/files/pam_fprint-0.2-headers.patch12
-rw-r--r--sys-auth/pam_fprint/metadata.xml11
-rw-r--r--sys-auth/pam_fprint/pam_fprint-0.2-r1.ebuild30
-rw-r--r--sys-auth/pam_krb5/Manifest7
-rw-r--r--sys-auth/pam_krb5/metadata.xml15
-rw-r--r--sys-auth/pam_krb5/pam_krb5-4.6.ebuild34
-rw-r--r--sys-auth/pam_krb5/pam_krb5-4.7.ebuild35
-rw-r--r--sys-auth/pam_ldap/Manifest10
-rw-r--r--sys-auth/pam_ldap/metadata.xml7
-rw-r--r--sys-auth/pam_ldap/pam_ldap-183.ebuild41
-rw-r--r--sys-auth/pam_ldap/pam_ldap-184.ebuild41
-rw-r--r--sys-auth/pam_ldap/pam_ldap-186-r1.ebuild53
-rw-r--r--sys-auth/pam_ldap/pam_ldap-186.ebuild39
-rw-r--r--sys-auth/pam_mktemp/Manifest6
-rw-r--r--sys-auth/pam_mktemp/files/pam_mktemp-1.1.1-e2fsprogs-libs.patch49
-rw-r--r--sys-auth/pam_mktemp/metadata.xml14
-rw-r--r--sys-auth/pam_mktemp/pam_mktemp-1.1.1.ebuild46
-rw-r--r--sys-auth/pam_mount/Manifest9
-rw-r--r--sys-auth/pam_mount/metadata.xml14
-rw-r--r--sys-auth/pam_mount/pam_mount-2.14.ebuild41
-rw-r--r--sys-auth/pam_mount/pam_mount-2.15.ebuild40
-rw-r--r--sys-auth/pam_mount/pam_mount-2.16.ebuild40
-rw-r--r--sys-auth/pam_mysql/Manifest8
-rw-r--r--sys-auth/pam_mysql/files/pam_mysql-0.7_rc1-link-to-pam.diff9
-rw-r--r--sys-auth/pam_mysql/files/pam_mysql-0.7_rc1-memleak.diff10
-rw-r--r--sys-auth/pam_mysql/metadata.xml14
-rw-r--r--sys-auth/pam_mysql/pam_mysql-0.7_rc1-r4.ebuild38
-rw-r--r--sys-auth/pam_mysql/pam_mysql-0.7_rc1-r5.ebuild45
-rw-r--r--sys-auth/pam_p11/Manifest5
-rw-r--r--sys-auth/pam_p11/metadata.xml16
-rw-r--r--sys-auth/pam_p11/pam_p11-0.1.6.ebuild26
-rw-r--r--sys-auth/pam_passwdqc/Manifest10
-rw-r--r--sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.4-makefile.patch44
-rw-r--r--sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.5-makefile.patch35
-rw-r--r--sys-auth/pam_passwdqc/metadata.xml13
-rw-r--r--sys-auth/pam_passwdqc/pam_passwdqc-1.0.4.ebuild46
-rw-r--r--sys-auth/pam_passwdqc/pam_passwdqc-1.0.5.ebuild46
-rw-r--r--sys-auth/pam_passwdqc/pam_passwdqc-1.3.0.ebuild14
-rw-r--r--sys-auth/pam_radius/Manifest7
-rw-r--r--sys-auth/pam_radius/files/pam_radius-1.3.17-gentoo.patch27
-rw-r--r--sys-auth/pam_radius/files/server23
-rw-r--r--sys-auth/pam_radius/metadata.xml13
-rw-r--r--sys-auth/pam_radius/pam_radius-1.3.17-r1.ebuild50
-rw-r--r--sys-auth/pam_require/Manifest5
-rw-r--r--sys-auth/pam_require/metadata.xml5
-rw-r--r--sys-auth/pam_require/pam_require-0.7.ebuild27
-rw-r--r--sys-auth/pam_skey/Manifest6
-rw-r--r--sys-auth/pam_skey/metadata.xml14
-rw-r--r--sys-auth/pam_skey/pam_skey-1.1.5-r5.ebuild57
-rw-r--r--sys-auth/pam_smb/Manifest8
-rw-r--r--sys-auth/pam_smb/files/10-pam_smb-bash-3.1.patch12
-rw-r--r--sys-auth/pam_smb/files/pamsmbd-init19
-rw-r--r--sys-auth/pam_smb/metadata.xml14
-rw-r--r--sys-auth/pam_smb/pam_smb-2.0.0_rc6-r1.ebuild51
-rw-r--r--sys-auth/pam_smb/pam_smb-2.0.0_rc6-r2.ebuild50
-rw-r--r--sys-auth/pam_ssh/Manifest15
-rw-r--r--sys-auth/pam_ssh/files/pam_ssh-1.97-EOF.patch11
-rw-r--r--sys-auth/pam_ssh/files/pam_ssh-1.97-doublefree.patch20
-rw-r--r--sys-auth/pam_ssh/files/pam_ssh-2.1-dot-ssh-check.patch22
-rw-r--r--sys-auth/pam_ssh/files/pam_symbols.ver4
-rw-r--r--sys-auth/pam_ssh/metadata.xml10
-rw-r--r--sys-auth/pam_ssh/pam_ssh-1.97-r1.ebuild45
-rw-r--r--sys-auth/pam_ssh/pam_ssh-1.97-r2.ebuild51
-rw-r--r--sys-auth/pam_ssh/pam_ssh-1.97-r3.ebuild52
-rw-r--r--sys-auth/pam_ssh/pam_ssh-1.98.ebuild45
-rw-r--r--sys-auth/pam_ssh/pam_ssh-2.1.ebuild60
-rw-r--r--sys-auth/pam_ssh_agent_auth/Manifest12
-rw-r--r--sys-auth/pam_ssh_agent_auth/files/pam_ssh_agent_auth-0.9.2-libs.patch24
-rw-r--r--sys-auth/pam_ssh_agent_auth/metadata.xml10
-rw-r--r--sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.10.2.ebuild41
-rw-r--r--sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.2.ebuild46
-rw-r--r--sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.3.ebuild47
-rw-r--r--sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.4.ebuild43
-rw-r--r--sys-auth/pam_u2f/Manifest5
-rw-r--r--sys-auth/pam_u2f/files/pam_u2f-1.0.2-fix-Makefile.patch13
-rw-r--r--sys-auth/pam_u2f/metadata.xml22
-rw-r--r--sys-auth/pam_u2f/pam_u2f-1.0.4.ebuild35
-rw-r--r--sys-auth/pam_yubico/Manifest7
-rw-r--r--sys-auth/pam_yubico/metadata.xml11
-rw-r--r--sys-auth/pam_yubico/pam_yubico-2.23.ebuild40
-rw-r--r--sys-auth/pam_yubico/pam_yubico-2.24.ebuild40
-rw-r--r--sys-auth/pambase/Manifest17
-rw-r--r--sys-auth/pambase/files/pambase-20120417-lastlog-silent.patch20
-rw-r--r--sys-auth/pambase/files/pambase-20120417-systemd-auth.patch26
-rw-r--r--sys-auth/pambase/files/pambase-20120417-systemd.patch29
-rw-r--r--sys-auth/pambase/files/pambase-20150213-elogind.patch23
-rw-r--r--sys-auth/pambase/files/pambase-20150213-selinux-note.patch11
-rw-r--r--sys-auth/pambase/metadata.xml95
-rw-r--r--sys-auth/pambase/pambase-20101024-r2.ebuild96
-rw-r--r--sys-auth/pambase/pambase-20120417-r3.ebuild112
-rw-r--r--sys-auth/pambase/pambase-20140313.ebuild93
-rw-r--r--sys-auth/pambase/pambase-20150213-r1.ebuild107
-rw-r--r--sys-auth/pambase/pambase-20150213.ebuild99
-rw-r--r--sys-auth/passwdqc/Manifest6
-rw-r--r--sys-auth/passwdqc/files/passwdqc-1.3.0-build.patch58
-rw-r--r--sys-auth/passwdqc/metadata.xml16
-rw-r--r--sys-auth/passwdqc/passwdqc-1.3.0.ebuild69
-rw-r--r--sys-auth/polkit-pkla-compat/Manifest5
-rw-r--r--sys-auth/polkit-pkla-compat/metadata.xml7
-rw-r--r--sys-auth/polkit-pkla-compat/polkit-pkla-compat-0.1.ebuild31
-rw-r--r--sys-auth/polkit-qt/Manifest7
-rw-r--r--sys-auth/polkit-qt/metadata.xml8
-rw-r--r--sys-auth/polkit-qt/polkit-qt-0.112.0-r1.ebuild78
-rw-r--r--sys-auth/polkit-qt/polkit-qt-0.112.0_p20160416-r1.ebuild73
-rw-r--r--sys-auth/polkit/Manifest7
-rw-r--r--sys-auth/polkit/files/polkit-0.113-elogind.patch178
-rw-r--r--sys-auth/polkit/metadata.xml11
-rw-r--r--sys-auth/polkit/polkit-0.113-r4.ebuild136
-rw-r--r--sys-auth/polkit/polkit-0.113.ebuild114
-rw-r--r--sys-auth/realtime-base/Manifest4
-rw-r--r--sys-auth/realtime-base/metadata.xml8
-rw-r--r--sys-auth/realtime-base/realtime-base-0.1.ebuild49
-rw-r--r--sys-auth/rtkit/Manifest9
-rw-r--r--sys-auth/rtkit/files/rtkit-0.11-controlgroup.patch14
-rw-r--r--sys-auth/rtkit/files/rtkit-0.11-gettime.patch21
-rw-r--r--sys-auth/rtkit/files/rtkit-0.11-polkit.patch36
-rw-r--r--sys-auth/rtkit/metadata.xml13
-rw-r--r--sys-auth/rtkit/rtkit-0.11-r1.ebuild46
-rw-r--r--sys-auth/rtkit/rtkit-0.11-r2.ebuild61
-rw-r--r--sys-auth/skey/Manifest6
-rw-r--r--sys-auth/skey/metadata.xml29
-rw-r--r--sys-auth/skey/skey-1.1.5-r11.ebuild82
-rw-r--r--sys-auth/sssd/Manifest17
-rw-r--r--sys-auth/sssd/files/sssd21
-rw-r--r--sys-auth/sssd/files/sssd-1.13.0-fix-init.patch28
-rw-r--r--sys-auth/sssd/files/sssd.conf4
-rw-r--r--sys-auth/sssd/files/sssd.service15
-rw-r--r--sys-auth/sssd/metadata.xml19
-rw-r--r--sys-auth/sssd/sssd-1.12.1.ebuild134
-rw-r--r--sys-auth/sssd/sssd-1.12.4.ebuild202
-rw-r--r--sys-auth/sssd/sssd-1.12.5.ebuild202
-rw-r--r--sys-auth/sssd/sssd-1.13.0.ebuild211
-rw-r--r--sys-auth/sssd/sssd-1.13.1.ebuild208
-rw-r--r--sys-auth/tfm-fingerprint/Manifest6
-rw-r--r--sys-auth/tfm-fingerprint/files/tfmessbsp.cfg4
-rw-r--r--sys-auth/tfm-fingerprint/metadata.xml8
-rw-r--r--sys-auth/tfm-fingerprint/tfm-fingerprint-1.0.ebuild46
-rw-r--r--sys-auth/thinkfinger/Manifest11
-rw-r--r--sys-auth/thinkfinger/files/0.3-carriagereturn.patch10
-rw-r--r--sys-auth/thinkfinger/files/0.3-direct_set_config_usb_hello.patch31
-rw-r--r--sys-auth/thinkfinger/files/0.3-send-sync-event.patch50
-rw-r--r--sys-auth/thinkfinger/files/0.3-strip-strip.patch24
-rw-r--r--sys-auth/thinkfinger/files/0.3-tftoolgroup.patch64
-rw-r--r--sys-auth/thinkfinger/files/60-thinkfinger.rules5
-rw-r--r--sys-auth/thinkfinger/metadata.xml20
-rw-r--r--sys-auth/thinkfinger/thinkfinger-0.3-r3.ebuild79
-rw-r--r--sys-auth/ykclient/Manifest7
-rw-r--r--sys-auth/ykclient/metadata.xml9
-rw-r--r--sys-auth/ykclient/ykclient-2.14.ebuild21
-rw-r--r--sys-auth/ykclient/ykclient-2.15.ebuild19
-rw-r--r--sys-auth/ykneo-ccid-tools/Manifest6
-rw-r--r--sys-auth/ykneo-ccid-tools/files/ykneo-ccid-tools-0.0.0-string.patch11
-rw-r--r--sys-auth/ykneo-ccid-tools/metadata.xml12
-rw-r--r--sys-auth/ykneo-ccid-tools/ykneo-ccid-tools-0.0.0.ebuild26
-rw-r--r--sys-auth/ykpers/Manifest5
-rw-r--r--sys-auth/ykpers/metadata.xml18
-rw-r--r--sys-auth/ykpers/ykpers-1.18.0.ebuild45
-rw-r--r--sys-auth/yubico-piv-tool/Manifest4
-rw-r--r--sys-auth/yubico-piv-tool/metadata.xml11
-rw-r--r--sys-auth/yubico-piv-tool/yubico-piv-tool-1.4.3.ebuild29
-rw-r--r--sys-auth/yubikey-personalization-gui/Manifest7
-rw-r--r--sys-auth/yubikey-personalization-gui/metadata.xml12
-rw-r--r--sys-auth/yubikey-personalization-gui/yubikey-personalization-gui-3.1.23.ebuild40
-rw-r--r--sys-auth/yubikey-personalization-gui/yubikey-personalization-gui-3.1.24.ebuild40
396 files changed, 18630 insertions, 0 deletions
diff --git a/sys-auth/bioapi/Manifest b/sys-auth/bioapi/Manifest
new file mode 100644
index 000000000000..4874b2eff9e9
--- /dev/null
+++ b/sys-auth/bioapi/Manifest
@@ -0,0 +1,12 @@
+AUX bioapi-1.2.3-build.patch 1310 SHA256 e1718e55a99ee8ba27b8807ead8ffe5cf7ddda9766a62f83542bf7f9f8b43509 SHA512 5cb3b656ff472ff648473dc04e89a7df0ac034642653d87e416f631260a4afbb8888b0de5b9c25cc1b0e4807e194ef462ba8ecb5ea1b5b3f9a4505a3778ab6d4 WHIRLPOOL 0bcc6f9209c8f316ebc2ab2b4ef8cdb5047e0097f40d511b680d713281e7e34b2a730cdfd72b4dc3651a836a396be998ca0e7c0bd5d53347411512189346574a
+AUX bioapi-1.2.3-enroll-ret.patch 278 SHA256 b98227cef30d4573728985758b9cd548b5fb1ac66cdb07b5c415ec7aadee7460 SHA512 adb60b540800d750ddfbee7932dd8ca5646b37853e692ed851abd010bf0c195b4cbf07e7c710073c30fc7a581c9f733914cd633d1628d8c7ddccdaeec6065710 WHIRLPOOL 643a6f8bb096902f6d0ca739ab44992cfc03983e03fd15ef7af5b86611b002a89fc4f4d3fcf01eaeccb4d0476894b31437f4ac0468b2fbe81f35d38466f90d71
+AUX bioapi-1.2.3-gcc44.patch 545 SHA256 b5bb84aa1c4e62df9a81a044fa12841941ae7a7697f38e77cfa73be559db7814 SHA512 88a0b0849c5ec3d028eb96f23f64218b9b794edfc929e2e163fb675709e29f0a46e2fdfec9e4e97a83033422468ec27c1fd937a5d3d690e75dd2684eb2a35dff WHIRLPOOL 74778ecf27f6028539e19ce75e46a4c98f27005cb0c106c3d12e915540a0420facc940d418e7c57024b18c09c7d3c5c6b17aa141eb6a9c7a9551b5f849ace25e
+AUX bioapi-1.2.3-no-delete.patch 504 SHA256 344304ebf2cd13e2cfff8d9ed526419e1adb6edb7da80007f9c05b5fea128a3d SHA512 790b9c674b3d42f4a03d3e0a4545932d29f45be29f1a66a83226639067a26efdce4b40279ee6178da850f01cf1747b89e37798bb45555e6644508bb0b86817d4 WHIRLPOOL d72f3be8e201cedf481f64486ad3ad4ad57b662861c49f69f41bfa27f0c3910ee0d82f67f7137929ce77807534f643107c9d3b8075c9c8868762d43c8d17b279
+AUX bioapi-1.2.4-build.patch 1258 SHA256 8b997c49188aed4640f768af07e2b68bfaa8985b09bfad602bca4b4d287aec0f SHA512 1211812ab6d78a863d9bb4497f29a83fbdb7bd74428c34a4499d0e453dbb3a27ff15f3e436b0dd4b12e0d39bfffbefd40e2a55d27c0123975f450c112a163043 WHIRLPOOL 404117787212c3d61e160463985dfffef6d532b3e3cb4180f8c0fcbea289bf391d4fbf7e4397071093b2dc0a1e4a1ee866b6440e0a9e1a50389a263a253bdc99
+DIST bioapi_1.2.3.tar.gz 1634237 SHA256 c780c0d2e0c676be50de8ff537653580dd5b27fe1478846d22a017e52c6b6c2e SHA512 683da884a5cf6d72b577f7c1f642930c152c43c7acad3c678a3571acf3f66e0a7e112fccde06d9a7535a186bcb56a96acfb5e1c405b1d931be9f252be1b01649 WHIRLPOOL 9162097a90ce089ab9864034dae434fc55c593c33f8d618c6f1e62f3202a7e3294680df992b684df507705c26e7fb897e85a95552c12fc545ab6ba06df445970
+DIST bioapi_1.2.4.tar.gz 953136 SHA256 ec39d82deaacdd3dea676bdfcce69d34cbb745580735b59b44c542a6de35008d SHA512 99c67fea34b73291dcaeb1590fac88b3196d3ca65f788b92d0afd6ba85036b2d85397e3faa66b872a68bffaeb7c2bf5c731306bf02a25a435ef06cea18da746f WHIRLPOOL 08526484cb6240f45e48ca894602c4706319d4ac7297592740836e48ff4794a2f12fee165eb358732b0d31d1619d7f3743aa55d32ba6d79b405a553e0992b517
+EBUILD bioapi-1.2.3-r2.ebuild 1893 SHA256 6cda3bc9b2eabaebd9a05fd5d9ed4bc73e0cb51a2c5763f2f48479cf26920341 SHA512 b5115f2b946535216c107348c66145b25c358df87630a9477c5a483cec1b783ee6617a6afdd1ddf9bba919a6aa88814324aa926b858a2535c096430ee85f5d04 WHIRLPOOL bb55e5c22f86fce8fbdcec3f394d73d1675dd4638124ea777f3ee2fe9a51afd83b6a00ab68bcb0f6b458573d2ffe31bb01fe19783fcdb605d805e7489b57cd53
+EBUILD bioapi-1.2.4.ebuild 1825 SHA256 8440121a3878c49499637bc2220cd4ee397df638e3c0006bf2599b3d1c893261 SHA512 20d305d39b54917187e35543915b55bb5105395c448e6f519197d2c51c8480ef5ac09bfbb897ba10acfbd7f28c343e49055c28a349a9465af089dd9a309e8585 WHIRLPOOL 5b799ff7e4e3b10338c14fa6ce541403af19d7d21222e608c7289c2653627b6665a1cfbd5433e3ba2c34745ac97f9b302853ef6ef00ebd3545b9717276a8ffd7
+MISC ChangeLog 3115 SHA256 0251e7742745878aeba3e18fa7918396aa7b10ff9b6cefa6cedabdbc4c3d31a3 SHA512 80eff68bb3780ed5edc733761cafb84d22f4e3735243268ee50732e87f7b83baf305011610fc7775e479f93beda7b4183dad3c845cbd8a2b2982717e1537c859 WHIRLPOOL 1b67cbbb088a8f5acdc3391e8f4779c650d9c107b72cd2ab44fba5ba269343d7531b728be275319713f9677ef30c921e0950b9d115b51700dbd3817e15fa5e34
+MISC ChangeLog-2015 2941 SHA256 a734eeed9ec7fa10a0de97563aa14686cb461fe7415402733067bb92192c4374 SHA512 a9d88b42c9d519d36b6538fa9e26b1cc626ef6a9c0ca209fd803bc52c74dd1eedecfbee5534f57e92a34b2c2b6a38947621ec988fa62aba42a6e193d8db288f1 WHIRLPOOL bcd4ab966fc8c24e3833159534ca2bb87354c653ac14382cb31392cfd2012cb57ad010d5f40a4b2f984a7364f027ccd39567c6b08196eeb593c5d068b8c33681
+MISC metadata.xml 386 SHA256 86b328cd91efa112eba505f3abfe063dfb0fcabe6d1d9d56e88087b206857323 SHA512 add6b6b7fb084bcb987cfc89332322878e631a411dd770b88bfc21f085e6ee85a25a1eecdc6203b904ba4834e9ca339d5bf53f567915b0cb1540189ff298993d WHIRLPOOL c9a22cd120c6e6da2f508e1ca4838534804b2e2371891db0e2bb071fcd96c623fda161a0e7f8f84a07059e70cfeaf504a6dac572336acb861f8ececa29aed999
diff --git a/sys-auth/bioapi/bioapi-1.2.3-r2.ebuild b/sys-auth/bioapi/bioapi-1.2.3-r2.ebuild
new file mode 100644
index 000000000000..2d83ab6ad7c0
--- /dev/null
+++ b/sys-auth/bioapi/bioapi-1.2.3-r2.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="2"
+
+inherit eutils multilib user
+
+DESCRIPTION="Framework for biometric-based authentication"
+HOMEPAGE="https://github.com/mr-c/bioapi-linux"
+SRC_URI="https://bioapi-linux.googlecode.com/files/${PN}_${PV}.tar.gz"
+
+LICENSE="bioapi"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+S=${WORKDIR}/bioapi-linux
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-enroll-ret.patch #236654
+ epatch "${FILESDIR}"/${P}-no-delete.patch
+ epatch "${FILESDIR}"/${P}-gcc44.patch
+ epatch "${FILESDIR}"/${P}-build.patch #336107
+ rm -f config.{guess,sub} #337805
+ touch config.{guess,sub}
+}
+
+src_configure() {
+ econf --without-Qt-dir
+}
+
+src_install() {
+ emake SKIPCONFIG=true DESTDIR="${D}" install || die
+ dodoc README
+ dohtml *.htm
+
+ # rename generic binaries
+ mv "${D}"/usr/bin/{,BioAPI}Sample || die
+}
+
+pkg_config() {
+ mds_install -s /usr/$(get_libdir)
+ mod_install -fi /usr/$(get_libdir)/libbioapi100.so
+ mod_install -fi /usr/$(get_libdir)/libbioapi_dummy100.so
+ mod_install -fi /usr/$(get_libdir)/libpwbsp.so
+}
+
+pkg_preinst() {
+ if [[ -e ${ROOT}/var/bioapi ]] && [[ ! -e ${ROOT}/var/lib/bioapi ]] ; then
+ einfo "Moving /var/bioapi to /var/lib/bioapi"
+ dodir /var/lib
+ mv "${ROOT}"/var/bioapi "${ROOT}"/var/lib/bioapi
+ fi
+}
+
+pkg_postinst() {
+ einfo "Some generic-named programs have been renamed:"
+ einfo " Sample -> BioAPISample"
+
+ if [[ ${ROOT} == "/" ]] ; then
+ pkg_config
+ else
+ ewarn "You will need to run 'emerge --config bioapi' before"
+ ewarn " you can use bioapi properly."
+ fi
+
+ # XXX: this can't be correct ...
+ enewgroup bioapi
+ chgrp bioapi "${ROOT}"/var/lib/bioapi -R
+ chmod g+w,o= "${ROOT}"/var/lib/bioapi -R
+ einfo "Note: users using bioapi must be in group bioapi."
+}
+
+pkg_prerm() {
+ mod_install -fu libbioapi100.so
+ mod_install -fu libbioapi_dummy100.so
+ mod_install -fu libpwbsp.so
+}
diff --git a/sys-auth/bioapi/bioapi-1.2.4.ebuild b/sys-auth/bioapi/bioapi-1.2.4.ebuild
new file mode 100644
index 000000000000..01ed2ada33d9
--- /dev/null
+++ b/sys-auth/bioapi/bioapi-1.2.4.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+
+inherit eutils multilib user
+
+DESCRIPTION="Framework for biometric-based authentication"
+HOMEPAGE="https://github.com/mr-c/bioapi-linux"
+SRC_URI="https://bioapi-linux.googlecode.com/files/${PN}_${PV}.tar.gz"
+
+LICENSE="bioapi"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="static-libs"
+
+S=${WORKDIR}/bioapi-linux
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.2.3-no-delete.patch
+ epatch "${FILESDIR}"/${PN}-1.2.4-build.patch #336107
+}
+
+src_configure() {
+ econf \
+ $(use_enable static-libs static) \
+ --without-Qt-dir
+}
+
+src_install() {
+ SKIPCONFIG=true default
+ use static-libs || find "${ED}" -name '*.la' -delete
+ dohtml *.htm
+
+ # rename generic binaries
+ mv "${D}"/usr/bin/{,BioAPI}Sample || die
+}
+
+pkg_config() {
+ mds_install -s /usr/$(get_libdir)
+ mod_install -fi /usr/$(get_libdir)/libbioapi100.so
+ mod_install -fi /usr/$(get_libdir)/libbioapi_dummy100.so
+ mod_install -fi /usr/$(get_libdir)/libpwbsp.so
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/var/bioapi ]] && [[ ! -e ${EROOT}/var/lib/bioapi ]] ; then
+ einfo "Moving /var/bioapi to /var/lib/bioapi"
+ dodir /var/lib
+ mv "${ROOT}"/var/bioapi "${ROOT}"/var/lib/bioapi
+ fi
+}
+
+pkg_postinst() {
+ einfo "Some generic-named programs have been renamed:"
+ einfo " Sample -> BioAPISample"
+
+ if [[ ${EROOT} == "/" ]] ; then
+ pkg_config
+ else
+ ewarn "You will need to run 'emerge --config bioapi' before"
+ ewarn " you can use bioapi properly."
+ fi
+
+ # XXX: this can't be correct ...
+ enewgroup bioapi
+ chgrp bioapi "${EROOT}"/var/lib/bioapi -R
+ chmod g+w,o= "${EROOT}"/var/lib/bioapi -R
+ einfo "Note: users using bioapi must be in group bioapi."
+}
+
+pkg_prerm() {
+ mod_install -fu libbioapi100.so
+ mod_install -fu libbioapi_dummy100.so
+ mod_install -fu libpwbsp.so
+}
diff --git a/sys-auth/bioapi/files/bioapi-1.2.3-build.patch b/sys-auth/bioapi/files/bioapi-1.2.3-build.patch
new file mode 100644
index 000000000000..9d679fe8c892
--- /dev/null
+++ b/sys-auth/bioapi/files/bioapi-1.2.3-build.patch
@@ -0,0 +1,42 @@
+http://code.google.com/p/bioapi-linux/issues/detail?id=4
+
+--- a/addins/pwbsp/Makefile.in
++++ b/addins/pwbsp/Makefile.in
+@@ -87,7 +87,7 @@ CC = @CC@
+ CCDEPMODE = @CCDEPMODE@
+ CFLAGS = @CFLAGS@
+ CPP = @CPP@
+-CPPFLAGS = -I${top_srcdir}/include/ \
++AM_CPPFLAGS = -I${top_srcdir}/include/ \
+ -I${top_srcdir}/imports/cdsa/v2_0/inc/
+
+ CXX = @CXX@
+@@ -111,7 +111,7 @@ INSTALL_DATA = @INSTALL_DATA@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
+ INSTALL_SCRIPT = @INSTALL_SCRIPT@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+-LDFLAGS = -Wl,--version-script=${srcdir}/libpwbsp.ver
++AM_LDFLAGS = -Wl,--version-script=${srcdir}/libpwbsp.ver
+ LEX = @LEX@
+ LEXLIB = @LEXLIB@
+ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+--- a/addins/qtpwbsp/Makefile.in
++++ b/addins/qtpwbsp/Makefile.in
+@@ -96,7 +96,7 @@ CC = @CC@
+ CCDEPMODE = @CCDEPMODE@
+ CFLAGS = @CFLAGS@
+ CPP = @CPP@
+-CPPFLAGS = -I${top_srcdir}/include \
++AM_CPPFLAGS = -I${top_srcdir}/include \
+ -I${top_srcdir}/imports/cdsa/v2_0/inc \
+ ${QT_CXXFLAGS}
+
+@@ -121,7 +121,7 @@ INSTALL_DATA = @INSTALL_DATA@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
+ INSTALL_SCRIPT = @INSTALL_SCRIPT@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+-LDFLAGS = -Wl,--version-script=${srcdir}/libqtpwbsp.ver \
++AM_LDFLAGS = -Wl,--version-script=${srcdir}/libqtpwbsp.ver \
+ ${QT_LIBS}
+
+ LEX = @LEX@
diff --git a/sys-auth/bioapi/files/bioapi-1.2.3-enroll-ret.patch b/sys-auth/bioapi/files/bioapi-1.2.3-enroll-ret.patch
new file mode 100644
index 000000000000..e077c135d63f
--- /dev/null
+++ b/sys-auth/bioapi/files/bioapi-1.2.3-enroll-ret.patch
@@ -0,0 +1,16 @@
+http://bugs.gentoo.org/236654
+
+make sure we return 0 when things work
+
+patch by kouyu
+
+--- bioapi-linux/apps/NonGUI_Sample/main.c
++++ bioapi-linux/apps/NonGUI_Sample/main.c
+@@ -234,6 +234,7 @@
+ }
+
+ OutputToFile(userName, EnrolledTemplate);
++ return 0;
+ }
+ }
+
diff --git a/sys-auth/bioapi/files/bioapi-1.2.3-gcc44.patch b/sys-auth/bioapi/files/bioapi-1.2.3-gcc44.patch
new file mode 100644
index 000000000000..1f81298066dc
--- /dev/null
+++ b/sys-auth/bioapi/files/bioapi-1.2.3-gcc44.patch
@@ -0,0 +1,12 @@
+diff -ur bioapi-linux.orig/framework/mds_util_api/mds_app_util.c bioapi-linux/framework/mds_util_api/mds_app_util.c
+--- bioapi-linux.orig/framework/mds_util_api/mds_app_util.c 2007-07-14 08:06:14.000000000 +0300
++++ bioapi-linux/framework/mds_util_api/mds_app_util.c 2009-07-25 23:26:55.000000000 +0300
+@@ -28,7 +28,7 @@
+ /* Linux-Port: added "const" keyword for Linux version */
+ #if defined (UNIX)
+ const BioAPI_UUID MDSUTIL_Uuid = ref_h_layer_uuid_init;
+-#elif
++#else
+ BioAPI_UUID MDSUTIL_Uuid = ref_h_layer_uuid_init;
+ #endif
+
diff --git a/sys-auth/bioapi/files/bioapi-1.2.3-no-delete.patch b/sys-auth/bioapi/files/bioapi-1.2.3-no-delete.patch
new file mode 100644
index 000000000000..b5664d11ec3a
--- /dev/null
+++ b/sys-auth/bioapi/files/bioapi-1.2.3-no-delete.patch
@@ -0,0 +1,15 @@
+do not delete the installed symlink -- let the package manager handle that
+
+--- bioapi-linux/apps/mod_install/install.c
++++ bioapi-linux/apps/mod_install/install.c
+@@ -496,10 +496,6 @@
+ }
+ else if ( Action == INSTALL_ACTION_UNINSTALL )
+ {
+-/* Linux-Port: Added the Linux branch */
+-#if defined (LINUX) || defined (SOLARIS)
+- DeleteFile(szDstPath);
+-#endif
+ printf( "Module uninstalled successfully.\n" );
+ }
+ else if ( Action == INSTALL_ACTION_REFRESH )
diff --git a/sys-auth/bioapi/files/bioapi-1.2.4-build.patch b/sys-auth/bioapi/files/bioapi-1.2.4-build.patch
new file mode 100644
index 000000000000..d7a70afd4d0d
--- /dev/null
+++ b/sys-auth/bioapi/files/bioapi-1.2.4-build.patch
@@ -0,0 +1,42 @@
+http://code.google.com/p/bioapi-linux/issues/detail?id=4
+
+--- a/addins/pwbsp/Makefile.in
++++ b/addins/pwbsp/Makefile.in
+@@ -87,7 +87,7 @@ CC = @CC@
+ CCDEPMODE = @CCDEPMODE@
+ CFLAGS = @CFLAGS@
+ CPP = @CPP@
+-CPPFLAGS = -I${top_srcdir}/include/ \
++AM_CPPFLAGS = -I${top_srcdir}/include/ \
+ -I${top_srcdir}/imports/cdsa/v2_0/inc/
+
+ CXX = @CXX@
+@@ -111,7 +111,7 @@ INSTALL_DATA = @INSTALL_DATA@
+ INSTALL_SCRIPT = @INSTALL_SCRIPT@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+ LD = @LD@
+-LDFLAGS = -Wl,--version-script=${srcdir}/libpwbsp.ver
++AM_LDFLAGS = -Wl,--version-script=${srcdir}/libpwbsp.ver
+ LEX = @LEX@
+ LEXLIB = @LEXLIB@
+ LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+--- a/addins/qtpwbsp/Makefile.in
++++ b/addins/qtpwbsp/Makefile.in
+@@ -96,7 +96,7 @@ CC = @CC@
+ CCDEPMODE = @CCDEPMODE@
+ CFLAGS = @CFLAGS@
+ CPP = @CPP@
+-CPPFLAGS = -I${top_srcdir}/include \
++AM_CPPFLAGS = -I${top_srcdir}/include \
+ -I${top_srcdir}/imports/cdsa/v2_0/inc \
+ ${QT_CXXFLAGS}
+
+@@ -121,7 +121,7 @@ INSTALL_DATA = @INSTALL_DATA@
+ INSTALL_SCRIPT = @INSTALL_SCRIPT@
+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+ LD = @LD@
+-LDFLAGS = -Wl,--version-script=${srcdir}/libqtpwbsp.ver \
++AM_LDFLAGS = -Wl,--version-script=${srcdir}/libqtpwbsp.ver \
+ ${QT_LIBS}
+
+ LEX = @LEX@
diff --git a/sys-auth/bioapi/metadata.xml b/sys-auth/bioapi/metadata.xml
new file mode 100644
index 000000000000..313b88162827
--- /dev/null
+++ b/sys-auth/bioapi/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>vapier@gentoo.org</email>
+ <name>Mike Frysinger</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="google-code">bioapi-linux</remote-id>
+ <remote-id type="github">mr-c/bioapi-linux</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/consolekit/Manifest b/sys-auth/consolekit/Manifest
new file mode 100644
index 000000000000..aa212cd312db
--- /dev/null
+++ b/sys-auth/consolekit/Manifest
@@ -0,0 +1,28 @@
+AUX 90-consolekit-3 1027 SHA256 91e0900995f7db536220065959d236fb75ec2c77096981a142e2e948518d9761 SHA512 2a1273d775aeb69a3e0873d6a82868d909cdbc3d5003b7625ab12e76ef44f115b464514e7890f7e562c44a92383475e698c3679f6c9f1bf42b5199d03d8c604a WHIRLPOOL 85fd88509ab68a8cdc069e078f4f944c87688fc26b9414ca5556057c90c9ef96382e88f4df3ad1415547cb1abd1f2b4b50518984a314fe1430d4de5d3d63dbd2
+AUX consolekit-0.2.rc 513 SHA256 3843cf3025c974b4cff5923c1e6cce7d41265357090172e0296a8d44971305cc SHA512 09263369d9769d34305c716ab107a01227b615d2cca4ff067fbc629d15fa5b478dcb70f505b8b981eaf9baef41ba2de7f09a356efd2ce9cb0924de5154c8fdc7 WHIRLPOOL 8f42e7dbd7d79a1087e9b5c61700f3a7005864c03edb14538f01eee5cdacc6189007a81ea75137b471e4319588b55a74a97a617b319f0ecd554b441cff606d28
+AUX consolekit-0.4.5-polkit-automagic.patch 870 SHA256 7cd8e4ecc868b0d2566cc0d0b7b3d13a006fe55ff425314d15ecff83e550d184 SHA512 50c2bafe2bf995bd5ef863557a1783211e172d77d819c8001c9007b4833b4e6b3ccfa7c04bf6811086dff6371be488411fdd23a49cecec3f545c388a0bbd61ab WHIRLPOOL 5611fdb8f17afd662ce0f745334dcbbb606fb8247ae18f914ae233cb7c024f418b94b4e353d6513c67c4346475af98d02d5551b4cb88e511df21eb765cbd1cb7
+AUX consolekit-1.0.0.initd 360 SHA256 08d4123fc501ccf7087ea439ba6109b46daf1cd4bfb03138b0d18dfd09bfc43e SHA512 68cbc15ea711c8cfbd810627912a1fa050b076804013e35a370ded64affe7458db6f89e9f4436a685fa8ccd4840f299790e9e2641ecf474bd029254f7198067b WHIRLPOOL 6fe49d6fd89788fd4e119f1ec87894522c5a7040303348f4b411444004d3b032225200b721a81f8c42a1ab726f15fd713898953c089b62cc28f3ab92586b3dfe
+AUX consolekit-1.1.0-Remove-the-root-restriction-for-runtime-dirs.patch 1640 SHA256 a7f273efeef9270a991563ca86c9925643d054daebdd794ad59d30008b883942 SHA512 a56ff368c1a674d4088a68db972bcb15c0107339704063839cf6b024eee000cff36dc9e39886f59ace3f5aefc4807de126225960e90b49b1d53bcd1674fc5d71 WHIRLPOOL a03574b6a2bd48a281e1e2e9454ffbc6b9790c6fd067f1b15306326f3a15a197d269209b10c8f512801842d5305ce7c7224646352c5bd979f57a3d88d0ec7050
+AUX consolekit-1.1.1-0001-Fix-enable-libudev-configure-flag.patch 1610 SHA256 9ee9a380fa038bf52e52858bfe8864cedfa687bae1296a1b3a32cb765603d944 SHA512 ee418e6fef34b42995aeb92e4b2e22751110887833ec5d6703bb9b84b4bde94e5eea1c2f4a781575a92413cd48426132cb21c4974434065a56e2b4ddfc706a77 WHIRLPOOL 7ee88ccc77e2bf387cc2ddc260d54b50c686f79f7fdd43e45535dca6c365ccf6711f182a6b9e96052f87b54fb6eed169c96a26f2788edac27d2baba79f6d5f22
+AUX consolekit-cleanup_console_tags.patch 1596 SHA256 178d25a93bc04b070840650b6f847b018796186d2a54a3be7b0a6df75e8f501c SHA512 8639c45baefc5fa4751654345225029b455e9a5ee5be5835c69ff0d6bf3532fc1ccf606fdb0cd29849071a26ab3defff8f7e31d19e83117dfe467b6209a37a77 WHIRLPOOL 2bf35176a05687402b333d74497dd3d2340ede2d55fe068926d3267d921adeef7f5333435f34d9eec1813c1fc0f8fcdc0b0ee979439f6f27ef86aeae620e96fb
+AUX consolekit-shutdown-reboot-without-policies.patch 924 SHA256 cd9a2aa582644ad50fb98e4580b9cf889c71a40f637eb0beb0eaab96d3ad9a47 SHA512 7bca0a448329cabbaa42028e212edc4ae242dcef9947cc2d49e66280cfae1193aedcac9921be90b9dd24265c17c3c53876bbea1ca223906a20252d94c4d65a9c WHIRLPOOL 56aa6327a226255ae01cc2c0298b658daf1f21dc8d54269b105aa6b490f815df0aac02604a82c01c2c4fd3d3f7899482df1596dffa10b6aa7b13b136fa3fcb3c
+AUX consolekit-udev-acl-install_to_usr.patch 750 SHA256 823316f6898eaab0744e42fa11b1631f64187aebca35baa5aeab09279820bedd SHA512 d2d6fcedea5e72f5a1b387f411ac62a59fd3c9e90a318bd85c35d210b89b18f01511f6b05352c1a4a9508622f0b9242c1b9c15d5ae4f8adf2819b6c3a0ff5ac9 WHIRLPOOL a9b8f48c5dddabfa28c2a65ac99c10dd7cba41d8bdcdc1fac4a0932391a81d9ed87f34115d7a43611d2cd126d10a5378edb8e734c888d529eca4b0d20dd15ac1
+AUX pam-foreground-compat.ck 389 SHA256 0b5b22641e2b138f4e9dfff9790df9fedaf2f760cc3d878ee1e94c2fd52edea9 SHA512 3cabd23ff7dc5de0a86284c3a3d3ff923228969cc954a1036290d4f7f6d58646ea6ea1445f472476b6f319df4dcd22f71e5e0f5cc8c845cd7e0b148af689ce5a WHIRLPOOL a8e36292dc094e107492e65efd147b35e217c652c8bcc52c768942b15660ff7d251e55ee038ce326905f5dc8f17857b62725768d60c3d5c93927550c8ff47db2
+DIST ConsoleKit-0.4.6.tar.xz 366572 SHA256 b41d17e06f80059589fbeefe96ad07bcc564c49e65516da1caf975146475565c SHA512 54955e3e83778a9216846104da8762fd50a37190e209127dd5d211e2227da617e14f6f5c1359905396d299656e526d14e1187b28eaff7d0ae1d7563dc8d9b46d WHIRLPOOL ebf36b109b4c646d0b874f6b8e2ae9e2d190022ee9b6feff6cbb6b9203c80401c538cc3ca674fa7bde4f07e658d5460864e9784c1e0249d49b4784725a4e05c7
+DIST ConsoleKit2-1.0.1.tar.bz2 1192681 SHA256 741c53321a0792b165f386c73c668af25615accab6d15983290103348a3ff00c SHA512 028e7347ff7293ebf3d08541d801e987cbc82fb31d98b67aa23e6dc28d00a422db9591c716c568320b6dde3fa01eb0b77b43c06d230f4bedd1085e078848a202 WHIRLPOOL c555281cd177ed243b1beb3d07d2988d029d8d89cac5242d12dcc37270d2d7adb1d503eaeba2f466964b589c4d10b8f2f014fef7067b535a7be9a360612d0485
+DIST ConsoleKit2-1.1.0.tar.bz2 630178 SHA256 a40d92358aca9f627a224dca674090e310423b00ed63fc06482997611661b69b SHA512 14ded07d4140e7a31132de21e84c2878475676b8c98f72b42340708972ed384abb9ba9380d74719718fc220c001387c788cf709cd15f8b19d598467dfe8a57df WHIRLPOOL 8f08d81576b5121b2da6cd94b3b5675ea55dce17997b035d0ba451c011b101f9e315e983b20610ee022ee286b50a7b13e2508584b9c08dba0c6cda20b8801a63
+DIST ConsoleKit2-1.1.1.tar.bz2 1372801 SHA256 795b2cfb766bdffb9187ef7f8beb8d8298e4c38df4a69377115297a0dee3b0d0 SHA512 168af9760e10914dff5e693d2c3b2e2a35b1662fc2769e2954eec0238f7f313ff154add650fa6f0f59e73e4e0aec2fe63ff62446a3c73c2d4437408e69aa97b6 WHIRLPOOL cef8ac778923671f9bffe87ecd8045b30630578e2599d0ccf37ad8d8070b7c0ca6936e9837abc5fc1f7af5f119edfeae68d9a14199485936677a5faba09b0958
+DIST ConsoleKit2-1.1.2.tar.bz2 1125567 SHA256 f4b26b45edf7416ed76052b8f85ea05b7b560c744edee8042575667528bc1f24 SHA512 fadca85e05c176b06ead40fba5c068d497bf69bcc322287363d0c27cdd6627b758295db1ef534b908c0e6240486430d8cb36660b4d71216a60d19a52d6d0db39 WHIRLPOOL b9655418498cb2b63a30d6d1a56f6afe0adf8f6ae3a6aa97fc55da8288fae588deea04ab868f0ef524e185696ad87a35aca6de8eb4e6cb32bc4ba729040e0cbb
+DIST ConsoleKit2-1.2.0.tar.bz2 1125402 SHA256 d6ea13b306557a76519388de39bf7f1a1ea9010af147fad4fb3131ce634bd8b3 SHA512 c0f6e629b7229c2ffaafe8da899970b48c8372402447af18560fffd8804d9ab91a4ad2eb82c8f648a14807f8ccc5fb1ab4366de14faa8a2d5fb3767a6a4253f7 WHIRLPOOL 46c463fbfafd188dcaecc61f3ce83599a746e18b4c3ea129a205fec24927cc80958decf95913de679ddded0120e15fb631dcdeb08fd09a0029350b70b8b8ecd9
+DIST consolekit_0.4.6-4.debian.tar.gz 12192 SHA256 6d4dd5e13a76454b4bab27ab6b407718cd77616afd2b1af7cb8d947c1323b802 SHA512 f7fc5965b1f495d16a8ca167940431bc2569e9bde9e4a356b9c9ed00c2825db61da7b6db3d434d977fff72b3aaef30c455a365b9eba282a887a523753613b58f WHIRLPOOL 961a918c21259e24c68c7a5bf93964825b891ea207c088fecab61f81434012dc8925fca83b74518cfc9cf42f2c4a87eba7518c0829f663716ca0e11e38c856c9
+EBUILD consolekit-0.4.6.ebuild 3396 SHA256 69aee2e526d17e7be61d82199e0b9ae1d6d52431ec0c97bcb06b842966d3d69c SHA512 2a0acd029eb9db8d3035d0fbdc52e5c0cf6a84779dfd41d7175970b8c4ff8600292302740d375eacf8fa0939714d82c3c602f285abf811fa36e29c3e41eb7e3a WHIRLPOOL 1789b31faffc8d565650562fa2e1f0ab7e07b49c689a45bf1b5d54447f890161dc97d08da6662644b1affc0b6eb4fe61d915c766465644d8001226d7093efb13
+EBUILD consolekit-1.0.1.ebuild 3104 SHA256 8f4b8990ba7d781aa6d881fae13e943a3e072b55f19ac3d4bed004f751dd92a0 SHA512 4bf6bd62eba5e480d710235cef658516afb119b53157eee51ef6ec20f28ca91fdddb290c34201e598a46aeb82d4f9fcb42da224c8bed0446a818b857a121a31c WHIRLPOOL 07dc530b15bf56776811f3810fc0fd99953619f41d80539573e42c554d6c08a7772cf5b80fbbd20fbea43a608a6625d9c8646e5ae95705c492e4e98304ede4ee
+EBUILD consolekit-1.1.0-r1.ebuild 3238 SHA256 bb02ece53c8df44c4e9231c69858668ee1c62bcbd0cfe9ef8d67921ac1d806f7 SHA512 d124ec42562ab4bb87e34344dd165a70f5fb0116f016d901dd6f2cfa3123540f72ec1466c0c40406f9b1a7629c4a2854c8905ba24984851cf4acfdcd1a3226b8 WHIRLPOOL 85796ca9fc312ee227ab6b47eb71d861354030f7621feab62d723335df034b02da369acc1b40cfe8661981120733d68abf5e3d195a861576583062c8228b8212
+EBUILD consolekit-1.1.0.ebuild 3099 SHA256 57f61a91d8df4e82e8725f71326b05246d55025fade6de68ec63ee054e73a8ef SHA512 dd4750b57e2cc646cf5ca7ea541a94a35f4be52aa89efa6e805df80532573b044e3a4236aa4b95b40455f991e3dc6c18f2fc71f9711c193108ad4179be014984 WHIRLPOOL b566a0056a4bdf8fda5225e6d3cc63582301eac726a062c816c45b845765554ccba9d522f23d62548ff0449bd75749214bff8161ac72f19693b5afc2fe0e6ef3
+EBUILD consolekit-1.1.1.ebuild 3545 SHA256 1deee9c0995c6440c8e6cc612c29d27ba08dfcc915f5dd0126dbe018cd7dcf51 SHA512 a77a489d2ed4696e4ac883607ea421490c1713fbc8865a36edb90f8a07c171c80522cdff194ff342c72be88328ed9085b40fabf1679203bce5d175efddde432d WHIRLPOOL e7f537d3af33a0c68ee0657f7747afa96fe0d912fe91775956e902d6e83847504ad028aa303a7f628682286e2dac4996599b70a3b46cc645340e2dcbfec24ebd
+EBUILD consolekit-1.1.2.ebuild 3509 SHA256 f42736643f4508f986a03cd897200768b795c7cea5ed2f7c4c418be305e467a4 SHA512 adc57d3ba67df9f06cd6b8facdb6f98ca97f1a1ee5e949809adc5d0fe29b70067194fc207cd81b3f432152c5af0c89a30327f0bff1fa3ee8c4eeabb1da03cbea WHIRLPOOL aa80d6143a1b90e5c463b3a206a800d35e908d675f37bae7cd7df845cd9678cdac293d18b061055d1a38bd0d14e2447e803d2f39388eab191c038442f446222c
+EBUILD consolekit-1.2.0.ebuild 3544 SHA256 e77561272e9d7441d1a1285d7699b569b1e36a3cf295a97edaea77b273d8d960 SHA512 03019491f7e0972f11e0af0f8430bd78537145b52f6ab23e8461fe620fc27d62cebce6781d1f11d0c85246945c71dbe21c86a4c78772eb8057cbbde454f42cda WHIRLPOOL dd83e65f62970ddd72606a00cdd618fdd18ad74e7b6c0a4d8fb7750294a792873fc2667653ed6044c2d1996174679326440c1efbd5423f3b488040a15c285938
+EBUILD consolekit-9999.ebuild 3311 SHA256 2197dd7144686db2715b99f7b718f5089629c8dbe7757d355eea3fc5446e7a77 SHA512 d28c3a5da5ece93cf7e9f22746ffcbd53beee19b9106258c210b4ff937713cff650771cdfd4d2919d4122517f2e534d5e7861d3a8392d4fc4e691e92a25e4b69 WHIRLPOOL 605e200b25ccc2a93b16339d861e9c860708c216f64d1dfd98218ae952d6be4d1e9c768cffe438d3838f42cf4fa2429976493a2fba9d37b5680d1c0b475efe3f
+MISC ChangeLog 11611 SHA256 f404a21305473e08a34ed4cf11635b310df9225f7371b32a614df4d6b78e3ead SHA512 d5ec5fa0ac8691acd134e4bbce34b3ffa762a5a78f6b9354c9388a892277984a986585fea415691437beec2f1bc4f004420cbab5a94c0f4111a3766dcb56bc38 WHIRLPOOL 6d205c944d8926186ce6e1c1824474d79ea8251b25a9dfd3ea8825259c10cd2e8f08fe062dfbe44f95ad0176c175fbb092a0549f5499f75f52821e64c518da6b
+MISC ChangeLog-2015 27717 SHA256 bb12cd6e6784f6f87a420e8cf1dea2e5000c0f87f9ca652702492eb14f116b34 SHA512 e01c42a85818919e57aeb58c7713f3fae740094a743f83f41b6b70cc9b3b537add09b0b7ab3f935bdd033f65efc084113db3f510c69c9009f31f308ce26795b5 WHIRLPOOL 802c7719cb7361cc6c3b9e8640371a389ed3cc250cd3868cf26d078e0022065408c5b3ac69de5f6a71a63ac3e4fee1a39e626eb55df5b3e2412d35bc11335ef5
+MISC metadata.xml 1053 SHA256 d4b913761bdc0507f055edc02d6f0d8b04f5350cfe81a271ebc8086c42ca813c SHA512 866958aa11b4410414886c8de76948212e356bb9784f241238aae0bb1b5cccc39731b660ec7affe88aff1095470c37ff076bd09a7546d202aa7a95acc5748014 WHIRLPOOL 0d52198beac98157581fd20934273fe92cb5efea9c0b2ea9f4b2d9921a073687ae2a2c7063c11f8846423b9733078d0a50913a9949e1cc722bd159e59f05fc75
diff --git a/sys-auth/consolekit/consolekit-0.4.6.ebuild b/sys-auth/consolekit/consolekit-0.4.6.ebuild
new file mode 100644
index 000000000000..3d373c6e8797
--- /dev/null
+++ b/sys-auth/consolekit/consolekit-0.4.6.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit autotools eutils linux-info pam systemd
+
+MY_PN=ConsoleKit
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Framework for defining and tracking users, login sessions and seats"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/ConsoleKit"
+SRC_URI="https://www.freedesktop.org/software/${MY_PN}/dist/${MY_P}.tar.xz
+ https://launchpad.net/debian/+archive/primary/+files/${PN}_${PV}-4.debian.tar.gz" # for logrotate file
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="acl debug doc kernel_linux pam policykit selinux systemd-units test"
+
+COMMON_DEPEND=">=dev-libs/dbus-glib-0.100:=
+ >=dev-libs/glib-2.38.2-r1:2=
+ sys-libs/zlib:=
+ x11-libs/libX11:=
+ acl? (
+ sys-apps/acl:=
+ >=virtual/udev-200
+ )
+ pam? ( virtual/pam )
+ policykit? ( >=sys-auth/polkit-0.110 )"
+RDEPEND="${COMMON_DEPEND}
+ kernel_linux? ( sys-apps/coreutils[acl?] )
+ selinux? ( sec-policy/selinux-consolekit )"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ virtual/pkgconfig
+ doc? ( app-text/xmlto )
+ test? (
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ )"
+
+S=${WORKDIR}/${MY_P}
+
+QA_MULTILIB_PATHS="usr/lib/ConsoleKit/.*"
+
+pkg_setup() {
+ if use kernel_linux; then
+ # This is from https://bugs.gentoo.org/376939
+ use acl && CONFIG_CHECK="~TMPFS_POSIX_ACL"
+ # This is required to get login-session-id string with pam_ck_connector.so
+ use pam && CONFIG_CHECK+=" ~AUDITSYSCALL"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-cleanup_console_tags.patch \
+ "${FILESDIR}"/${PN}-shutdown-reboot-without-policies.patch \
+ "${FILESDIR}"/${PN}-udev-acl-install_to_usr.patch \
+ "${FILESDIR}"/${PN}-0.4.5-polkit-automagic.patch
+
+ if ! use systemd-units; then
+ sed -i -e '/SystemdService/d' data/org.freedesktop.ConsoleKit.service.in || die
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf
+ if use systemd-units; then
+ myconf="$(systemd_with_unitdir)"
+ else
+ myconf="--with-systemdsystemunitdir=/tmp"
+ fi
+
+ econf \
+ XMLTO_FLAGS='--skip-validation' \
+ --libexecdir="${EPREFIX}"/usr/lib/${MY_PN} \
+ --localstatedir="${EPREFIX}"/var \
+ $(use_enable pam pam-module) \
+ $(use_enable doc docbook-docs) \
+ $(use_enable test docbook-docs) \
+ $(use_enable debug) \
+ $(use_enable policykit polkit) \
+ $(use_enable acl udev-acl) \
+ --with-dbus-services="${EPREFIX}"/usr/share/dbus-1/services \
+ --with-pam-module-dir="$(getpam_mod_dir)" \
+ ${myconf}
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ htmldocdir="${EPREFIX}"/usr/share/doc/${PF}/html \
+ install
+
+ dosym /usr/lib/${MY_PN} /usr/lib/${PN}
+
+ dodoc AUTHORS HACKING NEWS README TODO
+
+ newinitd "${FILESDIR}"/${PN}-0.2.rc consolekit
+
+ keepdir /usr/lib/ConsoleKit/run-seat.d
+ keepdir /usr/lib/ConsoleKit/run-session.d
+ keepdir /etc/ConsoleKit/run-session.d
+ keepdir /var/log/ConsoleKit
+
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/90-consolekit-3 90-consolekit
+
+ exeinto /usr/lib/ConsoleKit/run-session.d
+ doexe "${FILESDIR}"/pam-foreground-compat.ck
+
+ prune_libtool_files --all # --all for pam_ck_connector.la
+
+ use systemd-units || rm -rf "${ED}"/tmp
+
+ rm -rf "${ED}"/var/run # let the init script create the directory
+
+ insinto /etc/logrotate.d
+ newins "${WORKDIR}"/debian/${PN}.logrotate ${PN} #374513
+}
diff --git a/sys-auth/consolekit/consolekit-1.0.1.ebuild b/sys-auth/consolekit/consolekit-1.0.1.ebuild
new file mode 100644
index 000000000000..9f12159869a1
--- /dev/null
+++ b/sys-auth/consolekit/consolekit-1.0.1.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils linux-info pam
+
+MY_PN=ConsoleKit2
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Framework for defining and tracking users, login sessions and seats"
+HOMEPAGE="https://github.com/ConsoleKit2/ConsoleKit2 https://www.freedesktop.org/wiki/Software/ConsoleKit"
+SRC_URI="https://github.com/${MY_PN}/${MY_PN}/releases/download/${PV}/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="acl cgroups debug doc kernel_linux pam pm-utils policykit selinux test"
+
+COMMON_DEPEND=">=dev-libs/glib-2.40:2=[dbus]
+ >=sys-devel/gettext-0.19
+ sys-apps/dbus
+ sys-libs/zlib:=
+ x11-libs/libX11:=
+ acl? (
+ sys-apps/acl:=
+ >=virtual/udev-200
+ )
+ cgroups? (
+ app-admin/cgmanager
+ >=sys-libs/libnih-1.0.2[dbus]
+ )
+ pam? ( virtual/pam )
+ policykit? ( >=sys-auth/polkit-0.110 )"
+# pm-utils: bug 557432
+RDEPEND="${COMMON_DEPEND}
+ kernel_linux? ( sys-apps/coreutils[acl?] )
+ pm-utils? ( sys-power/pm-utils )
+ selinux? ( sec-policy/selinux-consolekit )"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ virtual/pkgconfig
+ doc? ( app-text/xmlto )
+ test? (
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ )"
+
+S=${WORKDIR}/${MY_P}
+
+QA_MULTILIB_PATHS="usr/lib/ConsoleKit/.*"
+
+pkg_setup() {
+ if use kernel_linux; then
+ # This is from https://bugs.gentoo.org/376939
+ use acl && CONFIG_CHECK="~TMPFS_POSIX_ACL"
+ # This is required to get login-session-id string with pam_ck_connector.so
+ use pam && CONFIG_CHECK+=" ~AUDITSYSCALL"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ sed -i -e '/SystemdService/d' data/org.freedesktop.ConsoleKit.service.in || die
+
+ epatch_user
+}
+
+src_configure() {
+ econf \
+ XMLTO_FLAGS='--skip-validation' \
+ --libexecdir="${EPREFIX}"/usr/lib/ConsoleKit \
+ --localstatedir="${EPREFIX}"/var \
+ $(use_enable pam pam-module) \
+ $(use_enable doc docbook-docs) \
+ $(use_enable test docbook-docs) \
+ $(use_enable debug) \
+ $(use_enable policykit polkit) \
+ $(use_enable acl udev-acl) \
+ $(use_enable cgroups) \
+ $(use_enable test tests) \
+ --with-dbus-services="${EPREFIX}"/usr/share/dbus-1/services \
+ --with-pam-module-dir="$(getpam_mod_dir)" \
+ --with-xinitrc-dir=/etc/X11/xinit/xinitrc.d \
+ --without-systemdsystemunitdir
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ htmldocdir="${EPREFIX}"/usr/share/doc/${PF}/html \
+ install
+
+ dosym /usr/lib/ConsoleKit /usr/lib/${PN}
+
+ dodoc AUTHORS HACKING NEWS README TODO
+
+ newinitd "${FILESDIR}"/${PN}-1.0.0.initd consolekit
+
+ keepdir /usr/lib/ConsoleKit/run-seat.d
+ keepdir /usr/lib/ConsoleKit/run-session.d
+ keepdir /etc/ConsoleKit/run-session.d
+ keepdir /var/log/ConsoleKit
+
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/90-consolekit-3 90-consolekit
+
+ if use kernel_linux; then
+ # bug 571524
+ exeinto /usr/lib/ConsoleKit/run-session.d
+ doexe "${FILESDIR}"/pam-foreground-compat.ck
+ fi
+
+ prune_libtool_files --all # --all for pam_ck_connector.la
+
+ rm -rf "${ED}"/var/run || die # let the init script create the directory
+}
diff --git a/sys-auth/consolekit/consolekit-1.1.0-r1.ebuild b/sys-auth/consolekit/consolekit-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..58786383c9cf
--- /dev/null
+++ b/sys-auth/consolekit/consolekit-1.1.0-r1.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit libtool linux-info pam
+
+MY_PN=ConsoleKit2
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Framework for defining and tracking users, login sessions and seats"
+HOMEPAGE="https://github.com/ConsoleKit2/ConsoleKit2 https://www.freedesktop.org/wiki/Software/ConsoleKit"
+SRC_URI="https://github.com/${MY_PN}/${MY_PN}/releases/download/${PV}/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="acl cgroups debug doc kernel_linux pam pm-utils policykit selinux test"
+
+COMMON_DEPEND=">=dev-libs/glib-2.40:2=[dbus]
+ >=sys-devel/gettext-0.19
+ sys-apps/dbus
+ sys-libs/zlib:=
+ x11-libs/libX11:=
+ acl? (
+ sys-apps/acl:=
+ >=virtual/udev-200
+ )
+ cgroups? (
+ app-admin/cgmanager
+ >=sys-libs/libnih-1.0.2[dbus]
+ )
+ pam? ( virtual/pam )
+ policykit? ( >=sys-auth/polkit-0.110 )"
+# pm-utils: bug 557432
+RDEPEND="${COMMON_DEPEND}
+ kernel_linux? ( sys-apps/coreutils[acl?] )
+ pm-utils? ( sys-power/pm-utils )
+ selinux? ( sec-policy/selinux-consolekit )"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ virtual/pkgconfig
+ doc? ( app-text/xmlto )
+ test? (
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ )"
+
+S=${WORKDIR}/${MY_P}
+
+QA_MULTILIB_PATHS="usr/lib/ConsoleKit/.*"
+
+PATCHES=( "${FILESDIR}/${P}-Remove-the-root-restriction-for-runtime-dirs.patch" )
+
+pkg_setup() {
+ if use kernel_linux; then
+ # This is from https://bugs.gentoo.org/376939
+ use acl && CONFIG_CHECK="~TMPFS_POSIX_ACL"
+ # This is required to get login-session-id string with pam_ck_connector.so
+ use pam && CONFIG_CHECK+=" ~AUDITSYSCALL"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ sed -i -e '/SystemdService/d' data/org.freedesktop.ConsoleKit.service.in || die
+
+ default
+ elibtoolize # bug 593314
+}
+
+src_configure() {
+ econf \
+ XMLTO_FLAGS='--skip-validation' \
+ --libexecdir="${EPREFIX}"/usr/lib/ConsoleKit \
+ --localstatedir="${EPREFIX}"/var \
+ $(use_enable pam pam-module) \
+ $(use_enable doc docbook-docs) \
+ $(use_enable test docbook-docs) \
+ $(use_enable debug) \
+ $(use_enable policykit polkit) \
+ $(use_enable acl udev-acl) \
+ $(use_enable cgroups) \
+ $(use_enable test tests) \
+ --with-dbus-services="${EPREFIX}"/usr/share/dbus-1/services \
+ --with-pam-module-dir="$(getpam_mod_dir)" \
+ --with-xinitrc-dir="${EPREFIX}"/etc/X11/xinit/xinitrc.d \
+ --without-systemdsystemunitdir
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ htmldocdir="${EPREFIX}"/usr/share/doc/${PF}/html \
+ install
+
+ dosym /usr/lib/ConsoleKit /usr/lib/${PN}
+
+ dodoc AUTHORS HACKING NEWS README TODO
+
+ newinitd "${FILESDIR}"/${PN}-1.0.0.initd consolekit
+
+ keepdir /usr/lib/ConsoleKit/run-seat.d
+ keepdir /usr/lib/ConsoleKit/run-session.d
+ keepdir /etc/ConsoleKit/run-session.d
+ keepdir /var/log/ConsoleKit
+
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/90-consolekit-3 90-consolekit
+
+ if use kernel_linux; then
+ # bug 571524
+ exeinto /usr/lib/ConsoleKit/run-session.d
+ doexe "${FILESDIR}"/pam-foreground-compat.ck
+ fi
+
+ prune_libtool_files --all # --all for pam_ck_connector.la
+
+ rm -rf "${ED}"/var/run || die # let the init script create the directory
+}
diff --git a/sys-auth/consolekit/consolekit-1.1.0.ebuild b/sys-auth/consolekit/consolekit-1.1.0.ebuild
new file mode 100644
index 000000000000..f33886b94e61
--- /dev/null
+++ b/sys-auth/consolekit/consolekit-1.1.0.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit eutils linux-info pam
+
+MY_PN=ConsoleKit2
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Framework for defining and tracking users, login sessions and seats"
+HOMEPAGE="https://github.com/ConsoleKit2/ConsoleKit2 https://www.freedesktop.org/wiki/Software/ConsoleKit"
+SRC_URI="https://github.com/${MY_PN}/${MY_PN}/releases/download/${PV}/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ~ppc ppc64 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="acl cgroups debug doc kernel_linux pam pm-utils policykit selinux test"
+
+COMMON_DEPEND=">=dev-libs/glib-2.40:2=[dbus]
+ >=sys-devel/gettext-0.19
+ sys-apps/dbus
+ sys-libs/zlib:=
+ x11-libs/libX11:=
+ acl? (
+ sys-apps/acl:=
+ >=virtual/udev-200
+ )
+ cgroups? (
+ app-admin/cgmanager
+ >=sys-libs/libnih-1.0.2[dbus]
+ )
+ pam? ( virtual/pam )
+ policykit? ( >=sys-auth/polkit-0.110 )"
+# pm-utils: bug 557432
+RDEPEND="${COMMON_DEPEND}
+ kernel_linux? ( sys-apps/coreutils[acl?] )
+ pm-utils? ( sys-power/pm-utils )
+ selinux? ( sec-policy/selinux-consolekit )"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ virtual/pkgconfig
+ doc? ( app-text/xmlto )
+ test? (
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ )"
+
+S=${WORKDIR}/${MY_P}
+
+QA_MULTILIB_PATHS="usr/lib/ConsoleKit/.*"
+
+pkg_setup() {
+ if use kernel_linux; then
+ # This is from https://bugs.gentoo.org/376939
+ use acl && CONFIG_CHECK="~TMPFS_POSIX_ACL"
+ # This is required to get login-session-id string with pam_ck_connector.so
+ use pam && CONFIG_CHECK+=" ~AUDITSYSCALL"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ sed -i -e '/SystemdService/d' data/org.freedesktop.ConsoleKit.service.in || die
+
+ default
+}
+
+src_configure() {
+ econf \
+ XMLTO_FLAGS='--skip-validation' \
+ --libexecdir="${EPREFIX}"/usr/lib/ConsoleKit \
+ --localstatedir="${EPREFIX}"/var \
+ $(use_enable pam pam-module) \
+ $(use_enable doc docbook-docs) \
+ $(use_enable test docbook-docs) \
+ $(use_enable debug) \
+ $(use_enable policykit polkit) \
+ $(use_enable acl udev-acl) \
+ $(use_enable cgroups) \
+ $(use_enable test tests) \
+ --with-dbus-services="${EPREFIX}"/usr/share/dbus-1/services \
+ --with-pam-module-dir="$(getpam_mod_dir)" \
+ --with-xinitrc-dir=/etc/X11/xinit/xinitrc.d \
+ --without-systemdsystemunitdir
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ htmldocdir="${EPREFIX}"/usr/share/doc/${PF}/html \
+ install
+
+ dosym /usr/lib/ConsoleKit /usr/lib/${PN}
+
+ dodoc AUTHORS HACKING NEWS README TODO
+
+ newinitd "${FILESDIR}"/${PN}-1.0.0.initd consolekit
+
+ keepdir /usr/lib/ConsoleKit/run-seat.d
+ keepdir /usr/lib/ConsoleKit/run-session.d
+ keepdir /etc/ConsoleKit/run-session.d
+ keepdir /var/log/ConsoleKit
+
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/90-consolekit-3 90-consolekit
+
+ if use kernel_linux; then
+ # bug 571524
+ exeinto /usr/lib/ConsoleKit/run-session.d
+ doexe "${FILESDIR}"/pam-foreground-compat.ck
+ fi
+
+ prune_libtool_files --all # --all for pam_ck_connector.la
+
+ rm -rf "${ED}"/var/run || die # let the init script create the directory
+}
diff --git a/sys-auth/consolekit/consolekit-1.1.1.ebuild b/sys-auth/consolekit/consolekit-1.1.1.ebuild
new file mode 100644
index 000000000000..bac2ded4fb84
--- /dev/null
+++ b/sys-auth/consolekit/consolekit-1.1.1.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools libtool linux-info pam
+
+MY_PN=ConsoleKit2
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Framework for defining and tracking users, login sessions and seats"
+HOMEPAGE="https://github.com/ConsoleKit2/ConsoleKit2 https://www.freedesktop.org/wiki/Software/ConsoleKit"
+SRC_URI="https://github.com/${MY_PN}/${MY_PN}/releases/download/${PV}/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="acl cgroups debug doc evdev kernel_linux pam pm-utils policykit selinux test udev"
+
+COMMON_DEPEND=">=dev-libs/glib-2.40:2=[dbus]
+ >=sys-devel/gettext-0.19
+ sys-apps/dbus
+ sys-libs/zlib:=
+ x11-libs/libX11:=
+ acl? (
+ sys-apps/acl:=
+ >=virtual/udev-200
+ )
+ cgroups? (
+ app-admin/cgmanager
+ >=sys-libs/libnih-1.0.2[dbus]
+ )
+ evdev? ( dev-libs/libevdev:= )
+ udev? (
+ virtual/libudev
+ x11-libs/libdrm:=
+ )
+ pam? ( virtual/pam )
+ policykit? ( >=sys-auth/polkit-0.110 )
+ selinux? ( sys-libs/libselinux )"
+# pm-utils: bug 557432
+RDEPEND="${COMMON_DEPEND}
+ kernel_linux? ( sys-apps/coreutils[acl?] )
+ pm-utils? ( sys-power/pm-utils )
+ selinux? ( sec-policy/selinux-consolekit )"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ virtual/pkgconfig
+ doc? ( app-text/xmlto )
+ test? (
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ )"
+
+S=${WORKDIR}/${MY_P}
+
+QA_MULTILIB_PATHS="usr/lib/ConsoleKit/.*"
+
+PATCHES=( "${FILESDIR}/consolekit-1.1.1-0001-Fix-enable-libudev-configure-flag.patch" )
+
+pkg_setup() {
+ if use kernel_linux; then
+ # This is from https://bugs.gentoo.org/376939
+ use acl && CONFIG_CHECK="~TMPFS_POSIX_ACL"
+ # This is required to get login-session-id string with pam_ck_connector.so
+ use pam && CONFIG_CHECK+=" ~AUDITSYSCALL"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ sed -i -e '/SystemdService/d' data/org.freedesktop.ConsoleKit.service.in || die
+
+ default
+ # patch needs autoreconf, so dont need libtoolize
+ eautoreconf
+ #elibtoolize # bug 593314
+}
+
+src_configure() {
+ econf \
+ XMLTO_FLAGS='--skip-validation' \
+ --libexecdir="${EPREFIX}"/usr/lib/ConsoleKit \
+ --localstatedir="${EPREFIX}"/var \
+ $(use_enable pam pam-module) \
+ $(use_enable doc docbook-docs) \
+ $(use_enable test docbook-docs) \
+ $(use_enable debug) \
+ $(use_enable policykit polkit) \
+ $(use_enable evdev libevdev) \
+ $(use_enable acl udev-acl) \
+ $(use_enable cgroups) \
+ $(use_enable selinux) \
+ $(use_enable udev libudev) \
+ $(use_enable test tests) \
+ --with-dbus-services="${EPREFIX}"/usr/share/dbus-1/services \
+ --with-pam-module-dir="$(getpam_mod_dir)" \
+ --with-xinitrc-dir="${EPREFIX}"/etc/X11/xinit/xinitrc.d \
+ --without-systemdsystemunitdir
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ htmldocdir="${EPREFIX}"/usr/share/doc/${PF}/html \
+ install
+
+ dosym /usr/lib/ConsoleKit /usr/lib/${PN}
+
+ dodoc AUTHORS HACKING NEWS README TODO
+
+ newinitd "${FILESDIR}"/${PN}-1.0.0.initd consolekit
+
+ keepdir /usr/lib/ConsoleKit/run-seat.d
+ keepdir /usr/lib/ConsoleKit/run-session.d
+ keepdir /etc/ConsoleKit/run-session.d
+ keepdir /var/log/ConsoleKit
+
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/90-consolekit-3 90-consolekit
+
+ if use kernel_linux; then
+ # bug 571524
+ exeinto /usr/lib/ConsoleKit/run-session.d
+ doexe "${FILESDIR}"/pam-foreground-compat.ck
+ fi
+
+ prune_libtool_files --all # --all for pam_ck_connector.la
+
+ rm -rf "${ED}"/var/run || die # let the init script create the directory
+}
diff --git a/sys-auth/consolekit/consolekit-1.1.2.ebuild b/sys-auth/consolekit/consolekit-1.1.2.ebuild
new file mode 100644
index 000000000000..55ce2ac00131
--- /dev/null
+++ b/sys-auth/consolekit/consolekit-1.1.2.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools libtool linux-info pam xdg-utils
+
+MY_PN=ConsoleKit2
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Framework for defining and tracking users, login sessions and seats"
+HOMEPAGE="https://github.com/ConsoleKit2/ConsoleKit2 https://www.freedesktop.org/wiki/Software/ConsoleKit"
+SRC_URI="https://github.com/${MY_PN}/${MY_PN}/releases/download/${PV}/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="acl cgroups debug doc evdev kernel_linux pam pm-utils policykit selinux test udev"
+
+COMMON_DEPEND=">=dev-libs/glib-2.40:2=[dbus]
+ >=sys-devel/gettext-0.19
+ sys-apps/dbus
+ sys-libs/zlib:=
+ x11-libs/libX11:=
+ acl? (
+ sys-apps/acl:=
+ >=virtual/udev-200
+ )
+ cgroups? (
+ app-admin/cgmanager
+ >=sys-libs/libnih-1.0.2[dbus]
+ )
+ evdev? ( dev-libs/libevdev:= )
+ udev? (
+ virtual/libudev
+ x11-libs/libdrm:=
+ )
+ pam? ( virtual/pam )
+ policykit? ( >=sys-auth/polkit-0.110 )
+ selinux? ( sys-libs/libselinux )"
+# pm-utils: bug 557432
+RDEPEND="${COMMON_DEPEND}
+ kernel_linux? ( sys-apps/coreutils[acl?] )
+ pm-utils? ( sys-power/pm-utils )
+ selinux? ( sec-policy/selinux-consolekit )"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ virtual/pkgconfig
+ doc? ( app-text/xmlto )
+ test? (
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ )"
+
+S=${WORKDIR}/${MY_P}
+
+QA_MULTILIB_PATHS="usr/lib/ConsoleKit/.*"
+
+pkg_setup() {
+ if use kernel_linux; then
+ # This is from https://bugs.gentoo.org/376939
+ use acl && CONFIG_CHECK="~TMPFS_POSIX_ACL"
+ # This is required to get login-session-id string with pam_ck_connector.so
+ use pam && CONFIG_CHECK+=" ~AUDITSYSCALL"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ xdg_environment_reset
+
+ sed -i -e '/SystemdService/d' data/org.freedesktop.ConsoleKit.service.in || die
+
+ default
+ # patch needs autoreconf, so dont need libtoolize
+ eautoreconf
+ #elibtoolize # bug 593314
+}
+
+src_configure() {
+ econf \
+ XMLTO_FLAGS='--skip-validation' \
+ --libexecdir="${EPREFIX}"/usr/lib/ConsoleKit \
+ --localstatedir="${EPREFIX}"/var \
+ $(use_enable pam pam-module) \
+ $(use_enable doc docbook-docs) \
+ $(use_enable test docbook-docs) \
+ $(use_enable debug) \
+ $(use_enable policykit polkit) \
+ $(use_enable evdev libevdev) \
+ $(use_enable acl udev-acl) \
+ $(use_enable cgroups libcgmanager) \
+ $(use_enable selinux libselinux) \
+ $(use_enable udev libudev) \
+ $(use_enable test tests) \
+ --with-dbus-services="${EPREFIX}"/usr/share/dbus-1/services \
+ --with-pam-module-dir="$(getpam_mod_dir)" \
+ --with-xinitrc-dir="${EPREFIX}"/etc/X11/xinit/xinitrc.d \
+ --without-systemdsystemunitdir
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ htmldocdir="${EPREFIX}"/usr/share/doc/${PF}/html \
+ install
+
+ dosym /usr/lib/ConsoleKit /usr/lib/${PN}
+
+ dodoc AUTHORS HACKING NEWS README TODO
+
+ newinitd "${FILESDIR}"/${PN}-1.0.0.initd consolekit
+
+ keepdir /usr/lib/ConsoleKit/run-seat.d
+ keepdir /usr/lib/ConsoleKit/run-session.d
+ keepdir /etc/ConsoleKit/run-session.d
+ keepdir /var/log/ConsoleKit
+
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/90-consolekit-3 90-consolekit
+
+ if use kernel_linux; then
+ # bug 571524
+ exeinto /usr/lib/ConsoleKit/run-session.d
+ doexe "${FILESDIR}"/pam-foreground-compat.ck
+ fi
+
+ prune_libtool_files --all # --all for pam_ck_connector.la
+
+ rm -rf "${ED}"/var/run || die # let the init script create the directory
+}
diff --git a/sys-auth/consolekit/consolekit-1.2.0.ebuild b/sys-auth/consolekit/consolekit-1.2.0.ebuild
new file mode 100644
index 000000000000..ad224d1d9a6a
--- /dev/null
+++ b/sys-auth/consolekit/consolekit-1.2.0.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools libtool linux-info pam xdg-utils
+
+MY_PN=ConsoleKit2
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Framework for defining and tracking users, login sessions and seats"
+HOMEPAGE="https://github.com/ConsoleKit2/ConsoleKit2 https://www.freedesktop.org/wiki/Software/ConsoleKit"
+SRC_URI="https://github.com/${MY_PN}/${MY_PN}/releases/download/${PV}/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="acl cgroups debug doc evdev kernel_linux pam pm-utils policykit selinux test udev"
+
+COMMON_DEPEND=">=dev-libs/glib-2.40:2=[dbus]
+ >=sys-devel/gettext-0.19
+ sys-apps/dbus
+ sys-libs/zlib:=
+ x11-libs/libX11:=
+ acl? (
+ sys-apps/acl:=
+ >=virtual/udev-200
+ )
+ cgroups? (
+ app-admin/cgmanager
+ >=sys-libs/libnih-1.0.2[dbus]
+ )
+ evdev? ( dev-libs/libevdev:= )
+ udev? (
+ virtual/libudev
+ x11-libs/libdrm:=
+ )
+ pam? ( virtual/pam )
+ policykit? ( >=sys-auth/polkit-0.110 )
+ selinux? ( sys-libs/libselinux )"
+# pm-utils: bug 557432
+RDEPEND="${COMMON_DEPEND}
+ kernel_linux? ( sys-apps/coreutils[acl?] )
+ pm-utils? ( sys-power/pm-utils )
+ selinux? ( sec-policy/selinux-consolekit )"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ virtual/pkgconfig
+ doc? ( app-text/xmlto )
+ test? (
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ )"
+
+S=${WORKDIR}/${MY_P}
+
+QA_MULTILIB_PATHS="usr/lib/ConsoleKit/.*"
+
+pkg_setup() {
+ if use kernel_linux; then
+ # This is from https://bugs.gentoo.org/376939
+ use acl && CONFIG_CHECK="~TMPFS_POSIX_ACL"
+ # This is required to get login-session-id string with pam_ck_connector.so
+ use pam && CONFIG_CHECK+=" ~AUDITSYSCALL"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ xdg_environment_reset
+
+ sed -i -e '/SystemdService/d' data/org.freedesktop.ConsoleKit.service.in || die
+
+ default
+ # patch needs autoreconf, so dont need libtoolize
+ eautoreconf
+ #elibtoolize # bug 593314
+}
+
+src_configure() {
+ econf \
+ XMLTO_FLAGS='--skip-validation' \
+ --libexecdir="${EPREFIX}"/usr/lib/ConsoleKit \
+ --localstatedir="${EPREFIX}"/var \
+ $(use_enable pam pam-module) \
+ $(use_enable doc docbook-docs) \
+ $(use_enable test docbook-docs) \
+ $(use_enable debug) \
+ $(use_enable policykit polkit) \
+ $(use_enable evdev libevdev) \
+ $(use_enable acl udev-acl) \
+ $(use_enable cgroups libcgmanager) \
+ $(use_enable selinux libselinux) \
+ $(use_enable udev libdrm) \
+ $(use_enable udev libudev) \
+ $(use_enable test tests) \
+ --with-dbus-services="${EPREFIX}"/usr/share/dbus-1/services \
+ --with-pam-module-dir="$(getpam_mod_dir)" \
+ --with-xinitrc-dir="${EPREFIX}"/etc/X11/xinit/xinitrc.d \
+ --without-systemdsystemunitdir
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ htmldocdir="${EPREFIX}"/usr/share/doc/${PF}/html \
+ install
+
+ dosym /usr/lib/ConsoleKit /usr/lib/${PN}
+
+ dodoc AUTHORS HACKING NEWS README TODO
+
+ newinitd "${FILESDIR}"/${PN}-1.0.0.initd consolekit
+
+ keepdir /usr/lib/ConsoleKit/run-seat.d
+ keepdir /usr/lib/ConsoleKit/run-session.d
+ keepdir /etc/ConsoleKit/run-session.d
+ keepdir /var/log/ConsoleKit
+
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/90-consolekit-3 90-consolekit
+
+ if use kernel_linux; then
+ # bug 571524
+ exeinto /usr/lib/ConsoleKit/run-session.d
+ doexe "${FILESDIR}"/pam-foreground-compat.ck
+ fi
+
+ prune_libtool_files --all # --all for pam_ck_connector.la
+
+ rm -rf "${ED}"/var/run || die # let the init script create the directory
+}
diff --git a/sys-auth/consolekit/consolekit-9999.ebuild b/sys-auth/consolekit/consolekit-9999.ebuild
new file mode 100644
index 000000000000..a87eea41cc33
--- /dev/null
+++ b/sys-auth/consolekit/consolekit-9999.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools libtool git-r3 linux-info pam xdg-utils
+
+MY_PN=ConsoleKit2
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Framework for defining and tracking users, login sessions and seats"
+HOMEPAGE="https://github.com/ConsoleKit2/ConsoleKit2 https://www.freedesktop.org/wiki/Software/ConsoleKit"
+EGIT_REPO_URI="https://github.com/${MY_PN}/${MY_PN}.git"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="acl cgroups debug doc evdev kernel_linux pam pm-utils policykit selinux test udev"
+
+COMMON_DEPEND=">=dev-libs/glib-2.40:2=[dbus]
+ >=sys-devel/gettext-0.19
+ sys-apps/dbus
+ sys-libs/zlib:=
+ x11-libs/libX11:=
+ acl? (
+ sys-apps/acl:=
+ >=virtual/udev-200
+ )
+ cgroups? (
+ app-admin/cgmanager
+ >=sys-libs/libnih-1.0.2[dbus]
+ )
+ evdev? ( dev-libs/libevdev:= )
+ udev? (
+ virtual/libudev
+ x11-libs/libdrm:=
+ )
+ pam? ( virtual/pam )
+ policykit? ( >=sys-auth/polkit-0.110 )
+ selinux? ( sys-libs/libselinux )"
+# pm-utils: bug 557432
+RDEPEND="${COMMON_DEPEND}
+ kernel_linux? ( sys-apps/coreutils[acl?] )
+ pm-utils? ( sys-power/pm-utils )
+ selinux? ( sec-policy/selinux-consolekit )"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ virtual/pkgconfig
+ doc? ( app-text/xmlto )
+ test? (
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ )"
+
+QA_MULTILIB_PATHS="usr/lib/ConsoleKit/.*"
+
+pkg_setup() {
+ if use kernel_linux; then
+ # This is from https://bugs.gentoo.org/376939
+ use acl && CONFIG_CHECK="~TMPFS_POSIX_ACL"
+ # This is required to get login-session-id string with pam_ck_connector.so
+ use pam && CONFIG_CHECK+=" ~AUDITSYSCALL"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ xdg_environment_reset
+
+ sed -i -e '/SystemdService/d' data/org.freedesktop.ConsoleKit.service.in || die
+
+ default
+ eautoreconf
+ #elibtoolize # bug 593314
+}
+
+src_configure() {
+ econf \
+ XMLTO_FLAGS='--skip-validation' \
+ --libexecdir="${EPREFIX}"/usr/lib/ConsoleKit \
+ --localstatedir="${EPREFIX}"/var \
+ $(use_enable pam pam-module) \
+ $(use_enable doc docbook-docs) \
+ $(use_enable test docbook-docs) \
+ $(use_enable debug) \
+ $(use_enable policykit polkit) \
+ $(use_enable evdev libevdev) \
+ $(use_enable acl udev-acl) \
+ $(use_enable cgroups libcgmanager) \
+ $(use_enable selinux libselinux) \
+ $(use_enable udev libudev) \
+ $(use_enable test tests) \
+ --with-dbus-services="${EPREFIX}"/usr/share/dbus-1/services \
+ --with-pam-module-dir="$(getpam_mod_dir)" \
+ --with-xinitrc-dir="${EPREFIX}"/etc/X11/xinit/xinitrc.d \
+ --without-systemdsystemunitdir
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ htmldocdir="${EPREFIX}"/usr/share/doc/${PF}/html \
+ install
+
+ dosym /usr/lib/ConsoleKit /usr/lib/${PN}
+
+ dodoc AUTHORS HACKING NEWS README TODO
+
+ newinitd "${FILESDIR}"/${PN}-1.0.0.initd consolekit
+
+ keepdir /usr/lib/ConsoleKit/run-seat.d
+ keepdir /usr/lib/ConsoleKit/run-session.d
+ keepdir /etc/ConsoleKit/run-session.d
+ keepdir /var/log/ConsoleKit
+
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/90-consolekit-3 90-consolekit
+
+ if use kernel_linux; then
+ # bug 571524
+ exeinto /usr/lib/ConsoleKit/run-session.d
+ doexe "${FILESDIR}"/pam-foreground-compat.ck
+ fi
+
+ prune_libtool_files --all # --all for pam_ck_connector.la
+
+ rm -rf "${ED}"/var/run || die # let the init script create the directory
+}
diff --git a/sys-auth/consolekit/files/90-consolekit-3 b/sys-auth/consolekit/files/90-consolekit-3
new file mode 100644
index 000000000000..358fc24f1a72
--- /dev/null
+++ b/sys-auth/consolekit/files/90-consolekit-3
@@ -0,0 +1,32 @@
+# -*- sh -*-
+# Xsession.d script for ck-launch-session.
+#
+#
+# This file is sourced by Xsession(5), not executed.
+
+CK_LAUNCH_SESSION=/usr/bin/ck-launch-session
+
+is_on_console() {
+ session=$(dbus-send --system --dest=org.freedesktop.ConsoleKit \
+ --type=method_call --print-reply --reply-timeout=2000 \
+ /org/freedesktop/ConsoleKit/Manager \
+ org.freedesktop.ConsoleKit.Manager.GetCurrentSession \
+ | grep path | awk '{print $3}' | sed s/\"//g)
+ x11_display=$(dbus-send --system --dest=org.freedesktop.ConsoleKit \
+ --type=method_call --print-reply --reply-timeout=2000 \
+ $session org.freedesktop.ConsoleKit.Session.GetX11Display \
+ | grep string | awk '{print $2}' | sed s/\"//g)
+
+ if [ -z "$x11_display" ] ; then
+ return 0
+ else
+ return 1
+ fi
+}
+
+# gdm already creates a CK session for us, so do not run the expensive D-Bus
+# calls if we have $GDMSESSION
+if [ -z "$GDMSESSION" ] && [ -x "$CK_LAUNCH_SESSION" ] && \
+ ( [ -z "$XDG_SESSION_COOKIE" ] || is_on_console ) ; then
+ command="$CK_LAUNCH_SESSION $command"
+fi
diff --git a/sys-auth/consolekit/files/consolekit-0.2.rc b/sys-auth/consolekit/files/consolekit-0.2.rc
new file mode 100644
index 000000000000..e2be0de6e1aa
--- /dev/null
+++ b/sys-auth/consolekit/files/consolekit-0.2.rc
@@ -0,0 +1,25 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+
+depend() {
+ need dbus
+ use logger
+}
+
+start() {
+ ebegin "Starting ConsoleKit daemon"
+
+ checkpath -q -d -m 0755 /var/run/ConsoleKit
+
+ start-stop-daemon --start -q \
+ --pidfile /var/run/ConsoleKit/pid \
+ --exec /usr/sbin/console-kit-daemon --
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ConsoleKit daemon"
+ start-stop-daemon --stop -q --pidfile /var/run/ConsoleKit/pid
+ eend $?
+}
diff --git a/sys-auth/consolekit/files/consolekit-0.4.5-polkit-automagic.patch b/sys-auth/consolekit/files/consolekit-0.4.5-polkit-automagic.patch
new file mode 100644
index 000000000000..b896089d4485
--- /dev/null
+++ b/sys-auth/consolekit/files/consolekit-0.4.5-polkit-automagic.patch
@@ -0,0 +1,30 @@
+http://bugs.freedesktop.org/show_bug.cgi?id=47587
+
+--- configure.ac
++++ configure.ac
+@@ -56,10 +56,21 @@
+ gthread-2.0 >= $GLIB_REQUIRED_VERSION
+ )
+
+-PKG_CHECK_MODULES(POLKIT,
+- polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION,
+- have_polkit=yes,
+- have_polkit=no)
++AC_ARG_ENABLE([polkit],
++ AC_HELP_STRING([--enable-polkit], [Enable PolicyKit support (default auto)]),
++ enable_polkit=$enableval,
++ enable_polkit=auto)
++
++if test "x$enable_polkit" != "xno"; then
++ PKG_CHECK_MODULES(POLKIT,
++ polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION,
++ have_polkit=yes,
++ have_polkit=no)
++ if test "x$enable_polkit" = "xyes" -a "x$have_polkit" = "xno"; then
++ AC_MSG_ERROR([PolicyKit support explicitly requested but dependencies not found])
++ fi
++fi
++
+ if test "x$have_polkit" = "xyes" ; then
+ AC_DEFINE(HAVE_POLKIT, [], [Define if we have polkit])
+ fi
diff --git a/sys-auth/consolekit/files/consolekit-1.0.0.initd b/sys-auth/consolekit/files/consolekit-1.0.0.initd
new file mode 100644
index 000000000000..4fd1140fe209
--- /dev/null
+++ b/sys-auth/consolekit/files/consolekit-1.0.0.initd
@@ -0,0 +1,16 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+
+description="consolekit - tracks login sessions and seats"
+pidfile="/run/ConsoleKit/pid"
+command="/usr/sbin/console-kit-daemon"
+
+depend() {
+ need dbus
+ use logger
+}
+
+start_pre() {
+ checkpath -q -d -m 0755 /run/ConsoleKit
+}
diff --git a/sys-auth/consolekit/files/consolekit-1.1.0-Remove-the-root-restriction-for-runtime-dirs.patch b/sys-auth/consolekit/files/consolekit-1.1.0-Remove-the-root-restriction-for-runtime-dirs.patch
new file mode 100644
index 000000000000..301c68f5d904
--- /dev/null
+++ b/sys-auth/consolekit/files/consolekit-1.1.0-Remove-the-root-restriction-for-runtime-dirs.patch
@@ -0,0 +1,57 @@
+From 664d2fdbd966764836b1f4da2dbc5750c7f01f0f Mon Sep 17 00:00:00 2001
+From: Eric Koegel <eric.koegel@gmail.com>
+Date: Sun, 10 Apr 2016 11:20:24 +0300
+Subject: [PATCH] Remove the root restriction for runtime dirs
+
+---
+ src/ck-sysdeps-unix.c | 5 -----
+ tools/ck-remove-directory.c | 10 ----------
+ 2 files changed, 15 deletions(-)
+
+diff --git a/src/ck-sysdeps-unix.c b/src/ck-sysdeps-unix.c
+index 67d8eac..ecd176a 100644
+--- a/src/ck-sysdeps-unix.c
++++ b/src/ck-sysdeps-unix.c
+@@ -409,11 +409,6 @@ ck_generate_runtime_dir_for_user (guint uid)
+
+ TRACE ();
+
+- if (uid < 1) {
+- g_debug ("We do not create runtime dirs for root");
+- return NULL;
+- }
+-
+ errno = 0;
+ pwent = getpwuid (uid);
+ if (pwent == NULL) {
+diff --git a/tools/ck-remove-directory.c b/tools/ck-remove-directory.c
+index cf44fd6..b1a5722 100644
+--- a/tools/ck-remove-directory.c
++++ b/tools/ck-remove-directory.c
+@@ -51,11 +51,6 @@ become_user (uid_t uid, const gchar* dest)
+ int res;
+ struct passwd *pwent;
+
+- if (uid < 1) {
+- g_critical ("invalid UID");
+- exit (1);
+- }
+-
+ if (dest == NULL) {
+ g_critical ("invalid dest");
+ exit (1);
+@@ -148,11 +143,6 @@ main (int argc,
+ exit (1);
+ }
+
+- if (user_id < 1) {
+- g_warning ("Invalid UID");
+- exit (1);
+- }
+-
+ /* Ensure we have a dest and that it starts with the correct prefix
+ * so we don't remove something important.
+ */
+--
+2.7.3
+
diff --git a/sys-auth/consolekit/files/consolekit-1.1.1-0001-Fix-enable-libudev-configure-flag.patch b/sys-auth/consolekit/files/consolekit-1.1.1-0001-Fix-enable-libudev-configure-flag.patch
new file mode 100644
index 000000000000..c6cc61d47843
--- /dev/null
+++ b/sys-auth/consolekit/files/consolekit-1.1.1-0001-Fix-enable-libudev-configure-flag.patch
@@ -0,0 +1,41 @@
+From 91f517bb6e19315c3a9971b2449f2b2e049e785b Mon Sep 17 00:00:00 2001
+From: Eric Koegel <eric.koegel@gmail.com>
+Date: Wed, 10 May 2017 07:13:23 +0300
+Subject: [PATCH] Fix --enable-libudev configure flag
+
+Thanks for perfinion to pointing this out.
+---
+ configure.ac | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 2d927fe..b17801a 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -364,10 +364,10 @@ AM_CONDITIONAL([ENABLE_UDEV_ACL], [test "x$enable_udev_acl" = "xyes"])
+ # libudev - use udev as a device manager for ck-device-udev.c
+ have_libudev=no
+ AC_ARG_ENABLE([libudev],
+- AS_HELP_STRING([--enable-udev], [Enable udev support @<:@default=auto@:>@]),
+- [enable_udev=$enableval],
+- [enable_udev=auto])
+-AS_IF([test "x$enable_udev" != "xno"], [
++ AS_HELP_STRING([--enable-libudev], [Enable udev support @<:@default=auto@:>@]),
++ [enable_libudev=$enableval],
++ [enable_libudev=auto])
++AS_IF([test "x$enable_libudev" != "xno"], [
+ PKG_CHECK_MODULES([LIBUDEV], [libudev], [have_libudev=yes], [have_libudev=no])
+ PKG_CHECK_MODULES([LIBDRM], [libdrm], [have_libdrm=yes], [have_libdrm=no])
+ AC_CHECK_LIB([prop], [prop_dictionary_get_cstring], [have_libprop=yes], [have_libprop=no])
+@@ -384,7 +384,7 @@ AS_IF([test "x$enable_udev" != "xno"], [
+ LIBUDEV_LIBS="$LIBUDEV_LIBS -lprop"
+ fi
+
+- if test "x$enable_udev" = "xyes" -a "x$have_udev" = "xno"; then
++ if test "x$enable_libudev" = "xyes" -a "x$have_libudev" = "xno"; then
+ AC_MSG_ERROR([udev support explicitly requested but dependencies not found])
+ fi
+ ])
+--
+2.10.2
+
diff --git a/sys-auth/consolekit/files/consolekit-cleanup_console_tags.patch b/sys-auth/consolekit/files/consolekit-cleanup_console_tags.patch
new file mode 100644
index 000000000000..c02411ebded5
--- /dev/null
+++ b/sys-auth/consolekit/files/consolekit-cleanup_console_tags.patch
@@ -0,0 +1,67 @@
+http://bugs.gentoo.org/257761
+http://patches.ubuntu.com/by-release/extracted/ubuntu/c/consolekit/
+
+--- src/main.c
++++ src/main.c
+@@ -148,6 +148,43 @@
+ unlink (CONSOLE_KIT_PID_FILE);
+ }
+
++#define CONSOLE_TAGS_DIR "/var/run/console"
++
++static void
++delete_console_tags (void)
++{
++ GDir *dir;
++ GError *error = NULL;
++ const gchar *name;
++
++ g_debug ("Cleaning up %s", CONSOLE_TAGS_DIR);
++
++ dir = g_dir_open (CONSOLE_TAGS_DIR, 0, &error);
++ if (dir == NULL) {
++ g_debug ("Couldn't open directory %s: %s", CONSOLE_TAGS_DIR,
++ error->message);
++ g_error_free (error);
++ return;
++ }
++ while ((name = g_dir_read_name (dir)) != NULL) {
++ gchar *file;
++ file = g_build_filename (CONSOLE_TAGS_DIR, name, NULL);
++
++ g_debug ("Removing tag file: %s", file);
++ if (unlink (file) == -1) {
++ g_warning ("Couldn't delete tag file: %s", file);
++ }
++ g_free (file);
++ }
++}
++
++static void
++cleanup (void)
++{
++ delete_console_tags ();
++ delete_pid ();
++}
++
+ /* copied from nautilus */
+ static int debug_log_pipes[2];
+
+@@ -228,7 +265,7 @@
+ snprintf (pid, sizeof (pid), "%lu\n", (long unsigned) getpid ());
+ written = write (pf, pid, strlen (pid));
+ close (pf);
+- g_atexit (delete_pid);
++ g_atexit (cleanup);
+ } else {
+ g_warning ("Unable to write pid file %s: %s",
+ CONSOLE_KIT_PID_FILE,
+@@ -317,6 +354,8 @@
+ goto out;
+ }
+
++ delete_console_tags ();
++
+ create_pid_file ();
+
+ loop = g_main_loop_new (NULL, FALSE);
diff --git a/sys-auth/consolekit/files/consolekit-shutdown-reboot-without-policies.patch b/sys-auth/consolekit/files/consolekit-shutdown-reboot-without-policies.patch
new file mode 100644
index 000000000000..6a46649f7587
--- /dev/null
+++ b/sys-auth/consolekit/files/consolekit-shutdown-reboot-without-policies.patch
@@ -0,0 +1,26 @@
+From: Romain Perier <mrpouet@gentoo.org>
+Date: Sat, 24 Oct 2009 18:43:43 +0200
+Subject: [PATCH] Be able to shutdown or reboot even without polkit or RBAC supports
+
+Ck does NOTHING at the origin if its built without polkit or RBAC supports, except
+display a warning using g_warning() (which does not make sense).
+The trick is to to call do_stop()/do_restart() in the #else directive :)
+
+--- src/ck-manager.c
++++ src/ck-manager.c
+@@ -1131,6 +1131,7 @@
+ check_rbac_permissions (manager, context, RBAC_SHUTDOWN_KEY, do_restart);
+ #else
+ g_warning ("Compiled without PolicyKit or RBAC support!");
++ do_restart(manager, context);
+ #endif
+
+ return TRUE;
+@@ -1207,6 +1208,7 @@
+ check_rbac_permissions (manager, context, RBAC_SHUTDOWN_KEY, do_stop);
+ #else
+ g_warning ("Compiled without PolicyKit or RBAC support!");
++ do_stop(manager, context);
+ #endif
+
+ return TRUE;
diff --git a/sys-auth/consolekit/files/consolekit-udev-acl-install_to_usr.patch b/sys-auth/consolekit/files/consolekit-udev-acl-install_to_usr.patch
new file mode 100644
index 000000000000..3ef39873dbd6
--- /dev/null
+++ b/sys-auth/consolekit/files/consolekit-udev-acl-install_to_usr.patch
@@ -0,0 +1,28 @@
+http://bugs.gentoo.org/398049
+
+--- tools/Makefile.am
++++ tools/Makefile.am
+@@ -144,11 +144,10 @@
+ $(NULL)
+
+ if ENABLE_UDEV_ACL
+-udevdir = $(UDEVDIR)
+ udevrulesdir = $(UDEVDIR)/rules.d
+
+ dist_udevrules_DATA = 70-udev-acl.rules
+-udev_PROGRAMS = udev-acl
++libexec_PROGRAMS = udev-acl
+
+ udev_acl_SOURCES = udev-acl.c
+ udev_acl_LDADD = $(UDEV_ACL_LIBS)
+@@ -156,7 +155,9 @@
+
+ install-exec-hook:
+ mkdir -p $(DESTDIR)$(prefix)/lib/ConsoleKit/run-seat.d
+- ln -sf $(UDEVDIR)/udev-acl $(DESTDIR)$(prefix)/lib/ConsoleKit/run-seat.d/udev-acl.ck
++ mkdir -p $(DESTDIR)$(UDEVDIR)
++ ln -sf $(libexecdir)/udev-acl $(DESTDIR)$(prefix)/lib/ConsoleKit/run-seat.d/udev-acl.ck
++ ln -sf $(libexecdir)/udev-acl $(DESTDIR)$(UDEVDIR)/udev-acl
+ endif
+
+ EXTRA_DIST = \
diff --git a/sys-auth/consolekit/files/pam-foreground-compat.ck b/sys-auth/consolekit/files/pam-foreground-compat.ck
new file mode 100644
index 000000000000..0697ca81ba45
--- /dev/null
+++ b/sys-auth/consolekit/files/pam-foreground-compat.ck
@@ -0,0 +1,17 @@
+#!/bin/sh
+TAGDIR=/var/run/console
+
+[ -n "$CK_SESSION_USER_UID" ] || exit 1
+
+TAGFILE="$TAGDIR/`getent passwd $CK_SESSION_USER_UID | cut -f 1 -d:`"
+
+if [ "$1" = "session_added" ]; then
+ mkdir -p "$TAGDIR"
+ echo "$CK_SESSION_ID" >> "$TAGFILE"
+fi
+
+if [ "$1" = "session_removed" ] && [ -e "$TAGFILE" ]; then
+ sed -i "\%^$CK_SESSION_ID\$%d" "$TAGFILE"
+ [ -s "$TAGFILE" ] || rm -f "$TAGFILE"
+fi
+
diff --git a/sys-auth/consolekit/metadata.xml b/sys-auth/consolekit/metadata.xml
new file mode 100644
index 000000000000..3aa5069e61cb
--- /dev/null
+++ b/sys-auth/consolekit/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>perfinion@gentoo.org</email>
+ <name>Jason Zaman</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>freedesktop-bugs@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="cgroups">Use the kernel to track processes instead of the session cookie.</flag>
+ <flag name="evdev">For handling VT switching with a session controller.</flag>
+ <flag name="pm-utils">Adds support for suspend/resume using <pkg>sys-power/pm-utils</pkg></flag>
+ <flag name="policykit">Use the PolicyKit framework (<pkg>sys-auth/polkit</pkg>) to get authorization for suspend/shutdown.</flag>
+ <flag name="systemd-units">Install systemd unit files to replace the modern functionality of logind in <pkg>sys-apps/systemd</pkg>. Not recommended.</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">ConsoleKit2/ConsoleKit2</remote-id>
+ <remote-id type="launchpad">debian</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/docker_auth/Manifest b/sys-auth/docker_auth/Manifest
new file mode 100644
index 000000000000..29aecdb15624
--- /dev/null
+++ b/sys-auth/docker_auth/Manifest
@@ -0,0 +1,39 @@
+AUX docker_auth-ldap-cacert.patch 2806 SHA256 127856a7fcf291bb601fcdab614c9cca798c27c63d7720860a0663246376bb56 SHA512 ae86f8d2adae073fae30753c054627a737ddbd05dd94107a65abe2935043a14a9eaf5987a83f06a5b7f827862a8df3510554f34f34693d5e97d77008d7da3b97 WHIRLPOOL 15c2e26d8c820dfc2a3b8ecd3401941b90aec0e07e8d9a94f5f5dc4e94d02acaf5e3010c9c441b6c28535e19a87f12d735c8f702305d26c6b13aba318bf13d28
+AUX docker_auth-ldap-group-support-1.patch 13612 SHA256 dd31f20fc0399b55051dcef092e48ca4f8893f49e27ad39a126be5cafaefecad SHA512 3479435540fd371ef2b294261e2d7196f4ee92e5621178e25c8ee240c066c49a2a846abae860b3baba5bac4e8787e0795b33a7bd1fb6689aa9961acdbd728a16 WHIRLPOOL 04e09fa8b89bbb4cc688b72bd68a3d7aa96812f912ca964729511b6703addd5c526dfdbebc40139bf65a33150a5151151dfe6f6213515568ffa5613df9c2f6d3
+AUX docker_auth-ldap-group-support.patch 12531 SHA256 7fafbb573b90f83dbbf4cf46e0fc122091b47152ac911b9893ac043e91aca876 SHA512 d6a8b77879ba27ca9adb7e9e3ae4adae87c2e08353df37c9638a1103104ff901c8051453df1474e42afe9f12907a40baf67c76e8d57f359fadfe3cbb3a0a6fda WHIRLPOOL 6b2ec797d670117156f4908fef6975c388ed7ed854abb55b818d819442e7517589a2e4501edfd1d6979d71efc0f8f333d827ae5aa01a7e9818e9c566b91f2a2d
+AUX docker_auth.confd 71 SHA256 da3c02eb19987d5625da03cb7f204fe4417841d60e8ee8db9ad4e2003c617f3f SHA512 b089b5ea299b701c3e0ed682e59e87e3f1fe1af4f097f21be80ed2e33c8dd021b9dca0c4310ab453518310306af3c7f2c084a4d17db1504cf1f392dcc993d337 WHIRLPOOL 08d053a2bd228d12013e4cae278de09db55232d1ce5ffbd50115b8d5037989ba0f577e12e89a098b2d23864a85d7a7c8d8be13c204321eeef6d3d1fd1a15048a
+AUX docker_auth.initd 596 SHA256 522673b1d321d5132bca3a41fc45861a6406f66b782eb88c44a88161817a68e2 SHA512 11dd3d6c3a947571a719b3fcb76a4fe75af4ee1d1b8957f4b0b3b7ee14cefec7acca9fb52e438b185651c38519e820ab0016d439405652f419399c823e74579c WHIRLPOOL 9e80bd4cb72b72eaac7471d40715431efb4f6a131ddf9c73b51edf68fcdd0f40182afb6fb76c297e8ad025afae4728d34ea42416160e51fa4f1cbecec1bc1f24
+AUX docker_auth.logrotated 109 SHA256 17771449221de7e126ab6141527d77fd6760114ad6aae6321cabe6e984e6796b SHA512 b2b93aa327b4023481b9524649fe2be4b1ccf97f88b76969b8ab23b9a852627db92426fd0286a875c06555f51c0a61e50b789646acffdbd7916b7be3580d8751 WHIRLPOOL a75271f4e045ef990efd0bf76114a48fdc7fd0481433a53dc5d821194e954168d7ea630cc0a0cc15ed39f972cc4b6fdce6f8de5bdbc1aaf89c6ff70fb790fa8f
+AUX version.go 71 SHA256 c80ddddeaec08f04b669e28fcc4d206f9bfa834243166e4f7c2a73e5e00227b7 SHA512 48f7727bda3a0e59f33235d8e343beca581f153ceaa227eaa65bd783d05c06f1c598c764743ef41910fd72a2309e7069bddc5f57f89700f2f88536bfe3100d79 WHIRLPOOL acf5d8e154510277b097c73401be5da3bbb7e3f70d120150f479775fdcc852e8bd89e249fb7fb1d9069a159f9650a72d20fcd878710d313fb841f4a3f0c99b4b
+DIST docker_auth-1.3.tar.gz 48970 SHA256 6279ca7c4428b46117f96c303114562b17bbe2337b5da82e5c2fc894d411fe86 SHA512 c0964a643d0269b2c7c4a1a747b421dfea8d8c42e3812a6b0dc2fa989e9e81fd6d6fd34672b19ea4472bf05be53bdd4d1c343fd241eab55d9b3496b47b3fa0c8 WHIRLPOOL 58793aef915358e7e4084745553d8b83ad53d87a20689358407d43a6e4150aa4a41d0aa19586e35b72523885aabedd416ad532633dd920b21d74345c38f3c35e
+DIST github.com-GoogleCloudPlatform-gcloud-golang-bbf380d59635bf267fc8a8df03d6d261c448ee3c.tar.gz 1082782 SHA256 5aa3ca04f524b22b9970a91a575d2e31d501dcceee56b7577a2615eaff1918e3 SHA512 d4b8f145a5007668d7b67ea63ffc221d4b56b76bfabfc7ba7b8182ca579edeca707638b4d81746ea1d7ae30915358028d026e17524e1e49a14d3f70c0efb85c2 WHIRLPOOL d3b366fceb3a1c52a7512691c4789e0c380e73843495487b8adb9708d5fe2c21480d7488cf6d3d3a46bbcac931f55853a546cafb76b78f60177e0a099e1dfb9f
+DIST github.com-cesanta-glog-22eb27a0ae192b290b25537b8e876556fc25129c.tar.gz 20273 SHA256 9960f3d916d6dba8e745cccc6fdef3982f57b6034321cb29d2df8c7ddb2d41d0 SHA512 3c4b757fc0d0e45382b1ef0180eea2f0429e8c7ecac0089fca79bc717f6c0a04918b91a144ca78331178cc914b808b40596c6a6e214157d2f812858be31c13d6 WHIRLPOOL f4d4abff55e1704d53efb52072405199e6d10b72aaf4abe5b9fe0b2255014da311f3f5d95ba69d1e4faed74511d0641658562eb46ae6279a417b4ac40dc92971
+DIST github.com-dchest-uniuri-8902c56451e9b58ff940bbe5fec35d5f9c04584a.tar.gz 2471 SHA256 f0e76f66c27b485fb8fd76ed0da635bf34751714487a16931f07bf1b1986b30f SHA512 70421b526e3040a49e63be6c892de2953b4f9ecdb01b148eb2bab3814f610a8c39bd98aad858cbaf9dcf621b52ee9ef952f0cdcdc6eca77da8ebf80dbbf1c04c WHIRLPOOL 63b97e4c3aa3b0275d3e2cd8f4fcdc523da62abba89b177c4f2a228bd7237fe719804e24616c082a41a2fef421ec3ed86be399cc207265675931a1e4cb73e050
+DIST github.com-deckarep-golang-set-fc8930a5e645572ee00bf66358ed3414f3c13b90.tar.gz 11814 SHA256 3d7de16db3e4f53349fc35fa538f14ef6f9a1286b8eeb39b95cc1050d43eee3d SHA512 4ac5a5a8985e7bda13d272854f68ad41feb435ab2fb835ca47a63db49211311f502273355f2d9e0c4bd264d8cd6438d077f0eae7b0c6aecadde93c766bd69513 WHIRLPOOL efe7302aa62737b55376760296055e6befc058565841d95fdee99469c4a3d2a3ffe2a8daf564780b4652c9a828ecc81bf7b45473792ad1aa39e2fc80d5626d43
+DIST github.com-docker-distribution-0700fa570d7bcc1b3e46ee127c4489fd25f4daa3.tar.gz 1609656 SHA256 c295f3bf74b0d6c4ab241f2e7ba38c0f95a03ca062319f54cd7870dbd09f9d14 SHA512 b155225d711c5bdca3246ad2a5cfd41a3cee9144cd30d90dde0407d3cc8c1aa20e6957016959424bd55e21b2a9332629a62294d09799ccb2626eb5136455e1b8 WHIRLPOOL 498df040f58e5f3218eaf67acfc7c15850c2fff93a154117e9d01b1b5203648bccf1690deb91eb68ffeb466bc4ed7962e80a4e46c9599e9381d16a4e8718c3a7
+DIST github.com-docker-libtrust-aabc10ec26b754e797f9028f4589c5b7bd90dc20.tar.gz 39352 SHA256 a3cb5fd53b4eb0ef259f039d0d10e237c8fff86993f9335959cf233956f0c065 SHA512 31d5a613807764c03d3356ee134bf384eca7953d4113e35d8fcce322611c25b444dd07904eb34c86c7e951529040c33fa821a56a687260e9298f900c7907e83b WHIRLPOOL 0b1cd73ba1ca2858324d6bc7f862bb794480d908250b8e05b3b28ff06837420e3b71107d040d3dfdda031cbcb72d0d0a3e934406a06d0e21c9a69708363b8f92
+DIST github.com-facebookgo-clock-600d898af40aa09a7a93ecb9265d87b0504b6f03.tar.gz 6382 SHA256 363140ddedf035ef012e0b17a35d32210f51b7f160c3fb0e89d08aa83d1870e0 SHA512 023741d93573d53471d1ec10a47c2a0034ecd0e0db35440b50bc7085ddd94e9cd5d0388586a25b060b50a1b9e442d4974a931b3f5d14aa1710629f19ad4acf8f WHIRLPOOL 2dd3fce28c58fb16998449d47433b3e0f726ef74323b116d60c4cfffeb9dac57320602883ab1b620b4ae9099e88f398dc34463f389008e8cfeff457db9b22c5d
+DIST github.com-facebookgo-httpdown-a3b1354551a26449fbe05f5d855937f6e7acbd71.tar.gz 9729 SHA256 c34330738c168a17a7720bd32fb00311005bd8c0d6bb5d6690bb2e73a81386ca SHA512 1958e337e1fd896227dd4a2eb551ffe92ffe12a25acdc422ad14c6234eb5e080a6f537f73175c2246768978803edf5fd9425925880546746e996e51a232bc7bd WHIRLPOOL 2234ea870430e3e35771550add39542f84522f656193f14b794dedca0a4c3a537513d8a6b686265e814d528e3c9139fc125f3584531a24bc3862f724e36b43ce
+DIST github.com-facebookgo-stats-1b76add642e42c6ffba7211ad7b3939ce654526e.tar.gz 5658 SHA256 9b22019e41b13c2e84dbe887689897ecc0b5a1b2410bca0454eebc83166cadc6 SHA512 12a0b172c956592c7ea1db3a8a0bda5ba80b215d938ecee1c0fa492bd04f3f896efeadeac192c5d1d57031e10d5c95578e441cbba0df080f4c4a1852de7d36fe WHIRLPOOL 211e6238c0ee34dd7d41e7b812a927f3d88e073bfde1e922795adcaf87032287913c8e59571ca412baea1a5818cbd49c2d4825c4db24244f6d3ee4e54a908430
+DIST github.com-fsnotify-fsnotify-629574ca2a5df945712d3079857300b5e4da0236.tar.gz 29588 SHA256 efa6568b01943ef1bcb3311c2371d300925fdde8fa4746673fefb703b572da2f SHA512 eaadede8a6fe231ea1f66755899891e288b5a69c2f74c1f11854b5060f471591f291a5394490a80864fc8d24181ada8a454c9b91ad04988021b5029298dd411b WHIRLPOOL 6727fe1af62b01f0f7c4b2dd38d4c0598d0e6da6df4cd63a7638377685840d640538d814f5a02ee56d16819c24e74e84dd6680af0eb47d158fbaa7eedc0e3a7f
+DIST github.com-go-asn1-ber-asn1-ber-4e86f4367175e39f69d9358a5f17b4dda270378d.tar.gz 12329 SHA256 f6462804a4336e9ba814c9d6bd8b4caf632abc4e3a966a0201847a780c06076e SHA512 fbba36ee6fd0d33558d4f13b6327a1385bde914c1c40954da19039bb55dc10d0166a1dd7a8650cb9776f2aad6f03ad110fd550a49e9c934446d23cd8eb3279fb WHIRLPOOL 54c5af35f9bd79c6b553a516526ceb928c97bfcdcf037d737c9f5ffa39c3cd2d4667e28f0af0d4a44e003432a575ad79a51827949d33cc1d8154badbae4888b3
+DIST github.com-go-ldap-ldap-13cedcf58a1ea124045dea529a66c849d3444c8e.tar.gz 36378 SHA256 624fa69738c3b768fc39fe68dfc84aee19ec969340396e85ca70ab717d1285d2 SHA512 3d4265b36e77b77357dd4f3f757bcdcb2dd4fc677ec83a33ee125d48ca19431075b0ab8087a4cb7d0a5027b1c2ea6ca516003c81b4d7df55de9c54ec6dc248fa WHIRLPOOL 448cb863e7888dc509e9b7d530b79f65fdd084b1f8c3673deb69fedeaf24e785786d0c7bb0b02816c62bd8b2faa85b7026701aa5de74c241b1fe889909d0b216
+DIST github.com-go-mgo-mgo-3f83fa5005286a7fe593b055f0d7771a7dce4655.tar.gz 376880 SHA256 6c97700204a9078a08bb0e67e8519c5f3a8c892b0401244a17bc2c0838410b9f SHA512 f0e7948d4672d29d3d0a741961ff8a75d30c556e157698118a32de10e2af8eb2ae6a61feea1c93aff313596d285a048a70dae7339c66760ebb91a1aecfb05845 WHIRLPOOL b95f88c8c023434b058426d8c8e5e230a1a4b6ba2bd701a0a078bfd774f861fcbff24fd08af6ed067fd3ea168854eec8c15708baf5275cb5c1e9ccce61d738c6
+DIST github.com-go-yaml-yaml-a3f3340b5840cee44f372bddb5880fcbc419b46a.tar.gz 60814 SHA256 0904953c06aa32c6691cec2390437f7d4d62c71f37d72f50d110a6577c87963b SHA512 184a0e658a4eac3b867533cd0e494bd84db94fbe10e8df0d0b755c7ffc95bc99e2f84c0157183ca74cdc79289a85dcf7f1dea8a4c89a253565baf473b3627eae WHIRLPOOL c9113048502f65a4036bbfbd4f072b27b41f68547e682d1e1496ae73c65c30b1470061d1f99d17e6b4a373e59e07568b460ad5396eb4b1f16079da077aa8382f
+DIST github.com-golang-crypto-e1a4589e7d3ea14a3352255d04b6f1a418845e5e.tar.gz 1336856 SHA256 28950420102f0dc290b84a52f06bc5b12a0a2b411b1b4fe216ba4ffe3ec3754e SHA512 c22fc86fbc22d6ec8157f89c075f07db8b72bf63ff97e06c907f555bf865cb77414c4fa2b9974407e43fa4f74b77710d3be9d2646f929fcfd5269b0ffc379914 WHIRLPOOL c85d338f87f5c418009497308ba28bd805769cb5350835dca35f77cce7ce456afe9cbcd66d9db3aea77e3eab0ed228260f7ec2e6825632624d9c80556ed15fbf
+DIST github.com-golang-net-859d1a86bb617c0c20d154590c3c5d3fcb670b07.tar.gz 920336 SHA256 6ca476b72c2b53b181fc32015651b385f565079d8395a28176bf8be168e8a1d2 SHA512 49ccb64c9b675460d12ea6d0456bb1124a92d56e70b04398d14b33dd5879c4e188dcc3e6c79c1aa6f491507f854911a9298fbc61aed60cbdab0205b6995bb4a3 WHIRLPOOL 6995b918f17d4930c246c6796febf09eab7c2777f649565cc4cfc03b770577dbd6a01a8824ba3dde555001cf814e27dd8b886de466e7f5fec1cdbd1791dbc225
+DIST github.com-golang-oauth2-13449ad91cb26cb47661c1b080790392170385fd.tar.gz 38610 SHA256 37eb1785d9f7ed65cf65440f539212afd79542557e87210d6dac0ab1a3bf6dc4 SHA512 9301e42d43ff421f85949b1fd7e60baa183842b0d128c0f4895708c30a91e4e614032a08dda03c2564b41251037c453f95aa21fe1876672e033c83890a96d660 WHIRLPOOL 26cb7db13df1acad3f1e3bd06e0cbac01af3f24c094bd3105179ee3d949a52ccd5666d6860434ae97ed2f1111e8c23f37adfb4d1d5463e5ac94fed6162cb7cfa
+DIST github.com-golang-protobuf-11b8df160996e00fd4b55cbaafb3d84ec6d50fa8.tar.gz 267933 SHA256 327b39ec814a097e18944d161a115990d0bcedd76a4c28d5aad236425278acd5 SHA512 7b6ac268d15fc5e2c07a22784565466abca6257deef90183bab45e1935c915dbebe5560e6583d76b2ba8b58fa22b0c07f5f512c188b6503ebbf47937f844afe9 WHIRLPOOL 8691fdcb7d99993fce6eae79a0bb127161d74c5dfe3d98a4f1b9559e605365bf8753ab506d2b7c691e88ec1bb56d30f31e1ac169e65cb0489b80e70f12b2e1ee
+DIST github.com-golang-snappy-553a641470496b2327abcac10b36396bd98e45c9.tar.gz 62076 SHA256 2ddf0f394a8b5a83942ac351cff5c04f936e6bd6e6cecc73ce6145b9bfd4c6e7 SHA512 a324c8a7687e820f6b322930a054d1e7fc4c37bb66a95d473ef2a67fed703de90e8cc3072273ad2f9c681b1cf7ec1acc0ee9dc735ab593e23eea5cde96eea8a6 WHIRLPOOL cd942c31b7b6d084190030383c0342fbb64baada50f93f07d0cb36c412515f3f528301336d6b0f310b34181acc1f2532bad2b6eddfca245ae0d02e1cffee0656
+DIST github.com-golang-sys-493114f68206f85e7e333beccfabc11e98cba8dd.tar.gz 677040 SHA256 c1f049684c7f44d3542393bcc4f9b51ba5317d324b35fe32cce36f5a39bf2280 SHA512 efebe04d03a37e06ddacc0bbb1c7c35ac6590dd1e2e4d8c3da38f36ecab53a2e488a8e042e7d39a14c1163bf033ebb42e72c4760a0d0acf3aae0ae3fb3355dbc WHIRLPOOL 6e5e3eb016dbf6eb98e730be4642f2cbb82b25d192e0b32558f14caa0598afdb919c821532e23a6ca7d95b94f0ae83754588c79db37fee52c36ea47e36ebb0d5
+DIST github.com-golang-text-ab5ac5f9a8deb4855a60fab02bc61a4ec770bd49.tar.gz 4618514 SHA256 23ff39aa309dcc1062af4f3f341634cca73a46915ef0c7b326546ce44764ab0b SHA512 d3231ceb80f5bb379bd6e9a717c1f16451dfd58f32de221020df5a92d3a686ca85b56120db88a93ac49e9a93aff472658c251de91c5fa6b5fe8d1d4b614dd615 WHIRLPOOL 4dfaeb243e22b316f7b6f25832d5b6f9d578c1c1035345adc6cc44fd07f45a530b9d4c6d7e101509081e81b15b3f8a082c5d49ad527400f6bb3d9c8173d9ceee
+DIST github.com-google-go-genproto-595979c8a7bf586b2d293fb42246bf91a0b893d9.tar.gz 988349 SHA256 e75295c57cc5f8b2be1f13a496bf9aa4bb223fcbf81415eb48240f0bd2e3516e SHA512 1cfcc16d9eb8d6414e943d7a62ea6606527b34135e8baa905f92e1e4f438f245d9cc4db9711c9b191b979bab6eef404adb84c2c85fd2af2c91bc0d8e89a7b1cf WHIRLPOOL 5c5b0019d4cede329a940bb413b14f414634cfe722bb69c49ef84bd203ec70d45e8efef21d065fc4aefb48a792d9bcbae8179c03ab704a7ffe980b859dbe413e
+DIST github.com-google-google-api-go-client-39c3dd417c5a443607650f18e829ad308da08dd2.tar.gz 6388385 SHA256 33a6f85f6a4b2bef1f9c33ddd6f285181200b43f13eba4a191fce2d39efff448 SHA512 5d5d66abff2bad1a758e0a9cd9b12b9d9d2f02df8b9eb6ff0b38ae505808c1a6e78eb46ee0516b92ab04e1241aac827287b2dc050adf84c867168e0b441864ba WHIRLPOOL 0bdc487c8540cdb3615e8e4500602af650acb217b4706eb82efe35a32f674d09da2504b2f864a4eb4849b4e320c7185eb47616dac796b8d767a896d72efd6274
+DIST github.com-googleapis-gax-go-8c160ca1523d8eea3932fbaa494c8964b7724aa8.tar.gz 10165 SHA256 99f92860387ee6b28a4822ac8b67cec6018956850ab3fc325801e85aaf56af3b SHA512 94f00cef5d586dc6b1893bcd1f6ccee22c13888859e4e2e87c9a0dd30ace0011be4e172a5346d22165f1a4b6e637070ad1da808dcc89103a0323094c09d76aa3 WHIRLPOOL 5b2b7977fcf73d3605929a02ab0d9c63a3025d5f6f43928339a3da49372bcf1b84712cf364b49738696a10bf69ee69e086853d24f232d63ab0260b12d770f54d
+DIST github.com-grpc-grpc-go-35170916ff58e89ae03f52e778228e18207e0e02.tar.gz 315740 SHA256 8077270001a7583e3d4eb886d6e9aad8f99729e845110ad524bfc290ac0f70fe SHA512 8c30f7641cb2cbbf274af90579b5e60370e85b1052b6206d02a395d69aa9a545d66fdb732e7636e3b326451be0f88bbf180c690835b39adb4c63d1dd67fc8c6a WHIRLPOOL bfa1c3cda2108c9227edbd8a34cb979f9fd16fcf2207a7484cab428f9c6a41e8117a513f22b3f0ba7f1133736dc72fb45512c74de3c54247fa63935eb566bc1e
+DIST github.com-schwarmco-go-cartesian-product-c2c0aca869a6cbf51e017ce148b949d9dee09bc3.tar.gz 2433 SHA256 1ffd1dd3254758b78020c1cc035a8ba97f9984192911b9101ac8d4f1a3644c45 SHA512 a1767b2c5c6340cb2649d63beac11571ec3c9b2c98011234d5a51eb337d221ea411e517660ae966fd4f582ffef18b088d7125d29ba271bece8b51254dcac940b WHIRLPOOL 2ddcbfab394c646b268cd699bb1adcebb502e4b63f60a76a8ac289b4f82db8090ce46a3fdfd75108931f59ddaea564410b5b6df27f969a4f9c536962df71fd0a
+DIST github.com-syndtr-goleveldb-3c5717caf1475fd25964109a0fc640bd150fce43.tar.gz 137276 SHA256 ca10398b8db38de682325b8af51a9013380d42c4a66809c7a32eb2c26943453a SHA512 bac364a68737f5faed9ec052d47db01dc4aa0eca4ef786a43766b844ff27d8d9f87a94159a17c58745dd4ba002a9a83cd091ab2561a61d01b0a672a82002c1d4 WHIRLPOOL 7a72edccbfaed15dd7ffef987024e27cd292e62feb03318999088d9343368726d597e373203896e6eda68a1bd4d6501b44c3a9cf2705768e14e9462814f588ca
+EBUILD docker_auth-1.3-r1.ebuild 3746 SHA256 4965d3430b9d32ce7559045e7a4d713cd8060897327f403a7deb5fbd58cd96ab SHA512 2cea02068ed914d28a131393eedc26ffed49c90985bcaa3c43d14080413f52f818fb91091b9571ae7e8c2a3337c216fbf1fc2fa0e70a0da22bd3d91b9c7ea25b WHIRLPOOL 7c019c58e480846b9a0bb83fcba078c523f19ebb60f9fce4cc4c9178c286a0568ba65f76f31900a9cce5d496e797082b21879728a6bf751671cb5cc5ebcee1e8
+EBUILD docker_auth-1.3.ebuild 3698 SHA256 e41a406a9100b274df9ee420db9aa9a7116da9e8631f4073afed7628866c20f2 SHA512 9282483ebb49b51dd4ca22a1090b4a41147c016c5423442d70787167de9845e5ab58e919ab217f838f364c97c6c411dd1dd0bc7e1e451b006037f3b9001e309a WHIRLPOOL 7e1f700566097bb24cc6a634ed613e58dd8f9a7ecd9adb312f271b8f600ed22a058396ec7e452d029ac6f9fd847da394c10d35fb3ab99547e1a90ce9c8df6aa6
+MISC ChangeLog 787 SHA256 780953bd3e21b7ee9dc54fb274932a5a5792d6e7533cf53f53af10959d6444c9 SHA512 848faf97f797abff43904b0322e713373d983e25bff0f8c986e345a429c1ced8889de2b4478475bbdb7f7e3a878db1ff98545c9c1a896f06d8f650eea1fa0126 WHIRLPOOL 56646e2d79c6f9c3059aeea7cde431577082f9a2b0c129fb292c6ab26ba4f50cd23f8548db8d3b129bec6d5f019a920a35bd13b6916e8aca6692f1c461a1b0c5
+MISC metadata.xml 329 SHA256 260246368fd36ceaf0d76b12ba5b59de6c1096bc81c00a89f0debfa8100a6ff9 SHA512 83a99677c1de5a527b72abdb632ea1ea0b0be3fedac28b6c20efb7b76999b0024e6d0a072e9b28b5458b79be14df1293b4f6a314448f5e41965ce4f2e9c65904 WHIRLPOOL a5abf828e8c1ae0723e1187948255e4773c0b10f1d4ba956196209e60b16d96f6acbd44179a5fcef2ea1caed8dd192ba5374340a6f4fbeda1559f0713c3743e6
diff --git a/sys-auth/docker_auth/docker_auth-1.3-r1.ebuild b/sys-auth/docker_auth/docker_auth-1.3-r1.ebuild
new file mode 100644
index 000000000000..ebeaf7fa15ef
--- /dev/null
+++ b/sys-auth/docker_auth/docker_auth-1.3-r1.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+EGO_PN="github.com/cesanta/docker_auth"
+
+EGO_VENDOR=(
+ "github.com/dchest/uniuri 8902c56451e9b58ff940bbe5fec35d5f9c04584a"
+ "github.com/deckarep/golang-set fc8930a5e645572ee00bf66358ed3414f3c13b90"
+ "github.com/docker/distribution 0700fa570d7bcc1b3e46ee127c4489fd25f4daa3"
+ "github.com/docker/libtrust aabc10ec26b754e797f9028f4589c5b7bd90dc20"
+ "github.com/facebookgo/httpdown a3b1354551a26449fbe05f5d855937f6e7acbd71"
+ "github.com/facebookgo/clock 600d898af40aa09a7a93ecb9265d87b0504b6f03"
+ "github.com/facebookgo/stats 1b76add642e42c6ffba7211ad7b3939ce654526e"
+ "github.com/go-ldap/ldap 13cedcf58a1ea124045dea529a66c849d3444c8e"
+ "github.com/cesanta/glog 22eb27a0ae192b290b25537b8e876556fc25129c"
+ "github.com/schwarmco/go-cartesian-product c2c0aca869a6cbf51e017ce148b949d9dee09bc3"
+ "github.com/syndtr/goleveldb 3c5717caf1475fd25964109a0fc640bd150fce43"
+ "github.com/golang/snappy 553a641470496b2327abcac10b36396bd98e45c9"
+ "gopkg.in/asn1-ber.v1 4e86f4367175e39f69d9358a5f17b4dda270378d github.com/go-asn1-ber/asn1-ber"
+ "gopkg.in/fsnotify.v1 629574ca2a5df945712d3079857300b5e4da0236 github.com/fsnotify/fsnotify"
+ "gopkg.in/mgo.v2 3f83fa5005286a7fe593b055f0d7771a7dce4655 github.com/go-mgo/mgo"
+ "gopkg.in/yaml.v2 a3f3340b5840cee44f372bddb5880fcbc419b46a github.com/go-yaml/yaml"
+ "golang.org/x/crypto e1a4589e7d3ea14a3352255d04b6f1a418845e5e github.com/golang/crypto"
+ "golang.org/x/sys 493114f68206f85e7e333beccfabc11e98cba8dd github.com/golang/sys"
+ "golang.org/x/net 859d1a86bb617c0c20d154590c3c5d3fcb670b07 github.com/golang/net"
+ "google.golang.org/api 39c3dd417c5a443607650f18e829ad308da08dd2 github.com/google/google-api-go-client"
+ "google.golang.org/grpc 35170916ff58e89ae03f52e778228e18207e0e02 github.com/grpc/grpc-go"
+ "github.com/golang/protobuf 11b8df160996e00fd4b55cbaafb3d84ec6d50fa8"
+ "golang.org/x/oauth2 13449ad91cb26cb47661c1b080790392170385fd github.com/golang/oauth2"
+ "cloud.google.com/go bbf380d59635bf267fc8a8df03d6d261c448ee3c github.com/GoogleCloudPlatform/gcloud-golang"
+ "golang.org/x/text ab5ac5f9a8deb4855a60fab02bc61a4ec770bd49 github.com/golang/text"
+ "github.com/googleapis/gax-go 8c160ca1523d8eea3932fbaa494c8964b7724aa8"
+ "google.golang.org/genproto 595979c8a7bf586b2d293fb42246bf91a0b893d9 github.com/google/go-genproto"
+ )
+
+inherit user golang-build golang-vcs-snapshot
+EGIT_COMMIT="2cd3699dab4e44a239db136a52734dab25897bee"
+SHORT_COMMIT=${EGIT_COMMIT:0:7}
+SRC_URI="https://${EGO_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+ ${EGO_VENDOR_URI}"
+KEYWORDS="~amd64"
+
+DESCRIPTION="Docker Registry 2 authentication server"
+HOMEPAGE="https://github.com/cesanta/docker_auth"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+RESTRICT="test"
+
+pkg_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 /dev/null ${PN}
+}
+
+src_prepare() {
+ default
+ pushd src/${EGO_PN}
+ eapply "${FILESDIR}/${PN}-ldap-group-support-1.patch"
+ eapply "${FILESDIR}/${PN}-ldap-cacert.patch"
+ cp "${FILESDIR}/version.go" auth_server/version.go || die
+ sed -i -e "s/{version}/${PV}/" -e "s/{build_id}/${SHORT_COMMIT}/" auth_server/version.go || die
+ popd || die
+}
+
+src_compile() {
+ pushd src/${EGO_PN}/auth_server || die
+ GOPATH="${WORKDIR}/${P}" go build -o "bin/auth_server" || die
+ popd || die
+}
+
+src_install() {
+ pushd src/${EGO_PN} || die
+ dodoc README.md docs/Backend_MongoDB.md
+ insinto /usr/share/${PF}
+ doins -r examples
+ insinto /etc/docker_auth/
+ newins examples/reference.yml config.yml.example
+ dobin auth_server/bin/auth_server
+ popd || die
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/docker_auth
+}
diff --git a/sys-auth/docker_auth/docker_auth-1.3.ebuild b/sys-auth/docker_auth/docker_auth-1.3.ebuild
new file mode 100644
index 000000000000..1bd472fae307
--- /dev/null
+++ b/sys-auth/docker_auth/docker_auth-1.3.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+EGO_PN="github.com/cesanta/docker_auth"
+
+EGO_VENDOR=(
+ "github.com/dchest/uniuri 8902c56451e9b58ff940bbe5fec35d5f9c04584a"
+ "github.com/deckarep/golang-set fc8930a5e645572ee00bf66358ed3414f3c13b90"
+ "github.com/docker/distribution 0700fa570d7bcc1b3e46ee127c4489fd25f4daa3"
+ "github.com/docker/libtrust aabc10ec26b754e797f9028f4589c5b7bd90dc20"
+ "github.com/facebookgo/httpdown a3b1354551a26449fbe05f5d855937f6e7acbd71"
+ "github.com/facebookgo/clock 600d898af40aa09a7a93ecb9265d87b0504b6f03"
+ "github.com/facebookgo/stats 1b76add642e42c6ffba7211ad7b3939ce654526e"
+ "github.com/go-ldap/ldap 13cedcf58a1ea124045dea529a66c849d3444c8e"
+ "github.com/cesanta/glog 22eb27a0ae192b290b25537b8e876556fc25129c"
+ "github.com/schwarmco/go-cartesian-product c2c0aca869a6cbf51e017ce148b949d9dee09bc3"
+ "github.com/syndtr/goleveldb 3c5717caf1475fd25964109a0fc640bd150fce43"
+ "github.com/golang/snappy 553a641470496b2327abcac10b36396bd98e45c9"
+ "gopkg.in/asn1-ber.v1 4e86f4367175e39f69d9358a5f17b4dda270378d github.com/go-asn1-ber/asn1-ber"
+ "gopkg.in/fsnotify.v1 629574ca2a5df945712d3079857300b5e4da0236 github.com/fsnotify/fsnotify"
+ "gopkg.in/mgo.v2 3f83fa5005286a7fe593b055f0d7771a7dce4655 github.com/go-mgo/mgo"
+ "gopkg.in/yaml.v2 a3f3340b5840cee44f372bddb5880fcbc419b46a github.com/go-yaml/yaml"
+ "golang.org/x/crypto e1a4589e7d3ea14a3352255d04b6f1a418845e5e github.com/golang/crypto"
+ "golang.org/x/sys 493114f68206f85e7e333beccfabc11e98cba8dd github.com/golang/sys"
+ "golang.org/x/net 859d1a86bb617c0c20d154590c3c5d3fcb670b07 github.com/golang/net"
+ "google.golang.org/api 39c3dd417c5a443607650f18e829ad308da08dd2 github.com/google/google-api-go-client"
+ "google.golang.org/grpc 35170916ff58e89ae03f52e778228e18207e0e02 github.com/grpc/grpc-go"
+ "github.com/golang/protobuf 11b8df160996e00fd4b55cbaafb3d84ec6d50fa8"
+ "golang.org/x/oauth2 13449ad91cb26cb47661c1b080790392170385fd github.com/golang/oauth2"
+ "cloud.google.com/go bbf380d59635bf267fc8a8df03d6d261c448ee3c github.com/GoogleCloudPlatform/gcloud-golang"
+ "golang.org/x/text ab5ac5f9a8deb4855a60fab02bc61a4ec770bd49 github.com/golang/text"
+ "github.com/googleapis/gax-go 8c160ca1523d8eea3932fbaa494c8964b7724aa8"
+ "google.golang.org/genproto 595979c8a7bf586b2d293fb42246bf91a0b893d9 github.com/google/go-genproto"
+ )
+
+inherit user golang-build golang-vcs-snapshot
+EGIT_COMMIT="2cd3699dab4e44a239db136a52734dab25897bee"
+SHORT_COMMIT=${EGIT_COMMIT:0:7}
+SRC_URI="https://${EGO_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+ ${EGO_VENDOR_URI}"
+KEYWORDS="~amd64"
+
+DESCRIPTION="Docker Registry 2 authentication server"
+HOMEPAGE="https://github.com/cesanta/docker_auth"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+RESTRICT="test"
+
+pkg_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 /dev/null ${PN}
+}
+
+src_prepare() {
+ default
+ pushd src/${EGO_PN}
+ eapply "${FILESDIR}/${PN}-ldap-group-support.patch"
+ cp "${FILESDIR}/version.go" auth_server/version.go || die
+ sed -i -e "s/{version}/${PV}/" -e "s/{build_id}/${SHORT_COMMIT}/" auth_server/version.go || die
+ popd || die
+}
+
+src_compile() {
+ pushd src/${EGO_PN}/auth_server || die
+ GOPATH="${WORKDIR}/${P}" go build -o "bin/auth_server" || die
+ popd || die
+}
+
+src_install() {
+ pushd src/${EGO_PN} || die
+ dodoc README.md docs/Backend_MongoDB.md
+ insinto /usr/share/${PF}
+ doins -r examples
+ insinto /etc/docker_auth/
+ newins examples/reference.yml config.yml.example
+ dobin auth_server/bin/auth_server
+ popd || die
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotated ${PN}
+ keepdir /var/log/docker_auth
+}
diff --git a/sys-auth/docker_auth/files/docker_auth-ldap-cacert.patch b/sys-auth/docker_auth/files/docker_auth-ldap-cacert.patch
new file mode 100644
index 000000000000..e43e9e6ca889
--- /dev/null
+++ b/sys-auth/docker_auth/files/docker_auth-ldap-cacert.patch
@@ -0,0 +1,67 @@
+From 5505de31a91aea88e0cf623ec8edfd928b5432a7 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Manuel=20R=C3=BCger?= <mrueg@gentoo.org>
+Date: Mon, 18 Sep 2017 14:02:38 +0200
+Subject: [PATCH] Set custom CA certificate for ldap cert verification
+
+Code taken from: https://github.com/hashicorp/go-rootcerts/blob/master/rootcerts.go
+Original author: Paul Hinze <phinze@phinze.com>
+---
+ auth_server/authn/ldap_auth.go | 17 ++++++++++++++++-
+ examples/reference.yml | 2 ++
+ 2 files changed, 18 insertions(+), 1 deletion(-)
+
+diff --git a/auth_server/authn/ldap_auth.go b/auth_server/authn/ldap_auth.go
+index 3bdf7c3..a3425ed 100644
+--- a/auth_server/authn/ldap_auth.go
++++ b/auth_server/authn/ldap_auth.go
+@@ -19,6 +19,7 @@ package authn
+ import (
+ "bytes"
+ "crypto/tls"
++ "crypto/x509"
+ "fmt"
+ "io/ioutil"
+ "strings"
+@@ -31,6 +32,7 @@ type LDAPAuthConfig struct {
+ Addr string `yaml:"addr,omitempty"`
+ TLS string `yaml:"tls,omitempty"`
+ InsecureTLSSkipVerify bool `yaml:"insecure_tls_skip_verify,omitempty"`
++ CACertificate string `yaml:"ca_certificate,omitempty"`
+ Base string `yaml:"base,omitempty"`
+ Filter string `yaml:"filter,omitempty"`
+ BindDN string `yaml:"bind_dn,omitempty"`
+@@ -140,7 +142,20 @@ func (la *LDAPAuth) ldapConnection() (*ldap.Conn, error) {
+ tlsConfig := &tls.Config{InsecureSkipVerify: true}
+ if !la.config.InsecureTLSSkipVerify {
+ addr := strings.Split(la.config.Addr, ":")
+- tlsConfig = &tls.Config{InsecureSkipVerify: false, ServerName: addr[0]}
++ if la.config.CACertificate != "" {
++ pool := x509.NewCertPool()
++ pem, err := ioutil.ReadFile(la.config.CACertificate)
++ if err != nil {
++ return nil, fmt.Errorf("Error loading CA File: %s", err)
++ }
++ ok := pool.AppendCertsFromPEM(pem)
++ if !ok {
++ return nil, fmt.Errorf("Error loading CA File: Couldn't parse PEM in: %s", la.config.CACertificate)
++ }
++ tlsConfig = &tls.Config{InsecureSkipVerify: false, ServerName: addr[0], RootCAs: pool}
++ } else {
++ tlsConfig = &tls.Config{InsecureSkipVerify: false, ServerName: addr[0]}
++ }
+ }
+
+ if la.config.TLS == "" || la.config.TLS == "none" || la.config.TLS == "starttls" {
+diff --git a/examples/reference.yml b/examples/reference.yml
+index 3090978..769cc91 100644
+--- a/examples/reference.yml
++++ b/examples/reference.yml
+@@ -131,6 +131,8 @@ ldap_auth:
+ tls: always
+ # set to true to allow insecure tls
+ insecure_tls_skip_verify: false
++ # set this to specify the ca certificate path
++ ca_cert:
+ # In case bind DN and password is required for querying user information,
+ # specify them here. Plain text password is read from the file.
+ bind_dn:
diff --git a/sys-auth/docker_auth/files/docker_auth-ldap-group-support-1.patch b/sys-auth/docker_auth/files/docker_auth-ldap-group-support-1.patch
new file mode 100644
index 000000000000..f9e98f410c8a
--- /dev/null
+++ b/sys-auth/docker_auth/files/docker_auth-ldap-group-support-1.patch
@@ -0,0 +1,394 @@
+From 4a33badac6b74617dfe3797a716a6907cf018b27 Mon Sep 17 00:00:00 2001
+From: Kevin <kcd83@users.noreply.github.com>
+Date: Mon, 27 Feb 2017 19:09:52 +1300
+Subject: [PATCH 1/4] Initial proof of concept mapping memberOf CN to the label
+ groups #63
+
+---
+ auth_server/authn/ldap_auth.go | 73 ++++++++++++++++++++++++++++++++++--------
+ 1 file changed, 60 insertions(+), 13 deletions(-)
+
+diff --git a/auth_server/authn/ldap_auth.go b/auth_server/authn/ldap_auth.go
+index f8fc08f..42f5ad0 100644
+--- a/auth_server/authn/ldap_auth.go
++++ b/auth_server/authn/ldap_auth.go
+@@ -17,7 +17,6 @@
+ package authn
+
+ import (
+- "bytes"
+ "crypto/tls"
+ "fmt"
+ "io/ioutil"
+@@ -71,10 +70,20 @@ func (la *LDAPAuth) Authenticate(account string, password PasswordString) (bool,
+ account = la.escapeAccountInput(account)
+
+ filter := la.getFilter(account)
+- accountEntryDN, uSearchErr := la.ldapSearch(l, &la.config.Base, &filter, &[]string{})
++
++ // dnAndGroupAttr := []string{"DN"} // example of no groups mapping attribute
++ groupAttribute := "memberOf"
++ dnAndGroupAttr := []string{"DN", groupAttribute}
++
++ entryAttrMap, uSearchErr := la.ldapSearch(l, &la.config.Base, &filter, &dnAndGroupAttr)
+ if uSearchErr != nil {
+ return false, nil, uSearchErr
+ }
++ if len(entryAttrMap) < 1 || entryAttrMap["DN"] == nil || len(entryAttrMap["DN"]) != 1 {
++ return false, nil, NoMatch // User does not exist
++ }
++
++ accountEntryDN := entryAttrMap["DN"][0]
+ if accountEntryDN == "" {
+ return false, nil, NoMatch // User does not exist
+ }
+@@ -93,6 +102,20 @@ func (la *LDAPAuth) Authenticate(account string, password PasswordString) (bool,
+ return false, nil, bindErr
+ }
+
++ // Extract group names from the attribute values
++ if entryAttrMap[groupAttribute] != nil {
++ rawGroups := entryAttrMap[groupAttribute]
++ labels := make(map[string][]string)
++ var groups []string
++ for _, value := range rawGroups {
++ cn := la.getCNFromDN(value)
++ groups = append(groups, cn)
++ }
++ labels["groups"] = groups
++
++ return true, labels, nil
++ }
++
+ return true, nil, nil
+ }
+
+@@ -170,9 +193,9 @@ func (la *LDAPAuth) getFilter(account string) string {
+
+ //ldap search and return required attributes' value from searched entries
+ //default return entry's DN value if you leave attrs array empty
+-func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, attrs *[]string) (string, error) {
++func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, attrs *[]string) (map[string][]string, error) {
+ if l == nil {
+- return "", fmt.Errorf("No ldap connection!")
++ return nil, fmt.Errorf("No ldap connection!")
+ }
+ glog.V(2).Infof("Searching...basedDN:%s, filter:%s", *baseDN, *filter)
+ searchRequest := ldap.NewSearchRequest(
+@@ -183,30 +206,54 @@ func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, att
+ nil)
+ sr, err := l.Search(searchRequest)
+ if err != nil {
+- return "", err
++ return nil, err
+ }
+
+ if len(sr.Entries) == 0 {
+- return "", nil // User does not exist
++ return nil, nil // User does not exist
+ } else if len(sr.Entries) > 1 {
+- return "", fmt.Errorf("Too many entries returned.")
++ return nil, fmt.Errorf("Too many entries returned.")
+ }
+
+- var buffer bytes.Buffer
++ result := make(map[string][]string)
+ for _, entry := range sr.Entries {
++
+ if len(*attrs) == 0 {
+ glog.V(2).Infof("Entry DN = %s", entry.DN)
+- buffer.WriteString(entry.DN)
++ result["DN"] = []string{entry.DN}
+ } else {
+ for _, attr := range *attrs {
+- values := strings.Join(entry.GetAttributeValues(attr), " ")
+- glog.V(2).Infof("Entry %s = %s", attr, values)
+- buffer.WriteString(values)
++ var values []string
++ if attr == "DN" {
++ // DN is excluded from attributes
++ values = []string{entry.DN}
++ } else {
++ values = entry.GetAttributeValues(attr)
++ }
++ valuesString := strings.Join(values, "\n")
++ glog.V(2).Infof("Entry %s = %s", attr, valuesString)
++ result[attr] = values
++ }
++ }
++ }
++
++ return result, nil
++}
++
++func (la *LDAPAuth) getCNFromDN(dn string) string {
++ parsedDN, err := ldap.ParseDN(dn)
++ if err != nil || len(parsedDN.RDNs) > 0 {
++ for _, rdn := range parsedDN.RDNs {
++ for _, rdnAttr := range rdn.Attributes {
++ if rdnAttr.Type == "CN" {
++ return rdnAttr.Value
++ }
+ }
+ }
+ }
+
+- return buffer.String(), nil
++ // else try using raw DN
++ return dn
+ }
+
+ func (la *LDAPAuth) Stop() {
+
+From ddde2fa779e746d7e74cd972a4c6795c72f17ee6 Mon Sep 17 00:00:00 2001
+From: Kevin <kcd83@users.noreply.github.com>
+Date: Tue, 28 Feb 2017 18:09:55 +1300
+Subject: [PATCH 2/4] Apply attribute mapping from configuration
+
+---
+ auth_server/authn/ldap_auth.go | 125 ++++++++++++++++++++++++-----------------
+ 1 file changed, 74 insertions(+), 51 deletions(-)
+
+diff --git a/auth_server/authn/ldap_auth.go b/auth_server/authn/ldap_auth.go
+index 42f5ad0..6f733a2 100644
+--- a/auth_server/authn/ldap_auth.go
++++ b/auth_server/authn/ldap_auth.go
+@@ -26,16 +26,22 @@ import (
+ "github.com/golang/glog"
+ )
+
++type LabelMap struct {
++ Attribute string `yaml:"attribute,omitempty"`
++ ParseCN bool `yaml:"parse_cn,omitempty"`
++}
++
+ type LDAPAuthConfig struct {
+- Addr string `yaml:"addr,omitempty"`
+- TLS string `yaml:"tls,omitempty"`
+- InsecureTLSSkipVerify bool `yaml:"insecure_tls_skip_verify,omitempty"`
+- Base string `yaml:"base,omitempty"`
+- Filter string `yaml:"filter,omitempty"`
+- BindDN string `yaml:"bind_dn,omitempty"`
+- BindPasswordFile string `yaml:"bind_password_file,omitempty"`
+- GroupBaseDN string `yaml:"group_base_dn,omitempty"`
+- GroupFilter string `yaml:"group_filter,omitempty"`
++ Addr string `yaml:"addr,omitempty"`
++ TLS string `yaml:"tls,omitempty"`
++ InsecureTLSSkipVerify bool `yaml:"insecure_tls_skip_verify,omitempty"`
++ Base string `yaml:"base,omitempty"`
++ Filter string `yaml:"filter,omitempty"`
++ BindDN string `yaml:"bind_dn,omitempty"`
++ BindPasswordFile string `yaml:"bind_password_file,omitempty"`
++ LabelMaps map[string]LabelMap `yaml:"labels,omitempty"`
++ GroupBaseDN string `yaml:"group_base_dn,omitempty"`
++ GroupFilter string `yaml:"group_filter,omitempty"`
+ }
+
+ type LDAPAuth struct {
+@@ -71,22 +77,19 @@ func (la *LDAPAuth) Authenticate(account string, password PasswordString) (bool,
+
+ filter := la.getFilter(account)
+
+- // dnAndGroupAttr := []string{"DN"} // example of no groups mapping attribute
+- groupAttribute := "memberOf"
+- dnAndGroupAttr := []string{"DN", groupAttribute}
++ labelAttributes, labelsConfigErr := la.getLabelAttributes()
++ if labelsConfigErr != nil {
++ return false, nil, labelsConfigErr
++ }
+
+- entryAttrMap, uSearchErr := la.ldapSearch(l, &la.config.Base, &filter, &dnAndGroupAttr)
++ accountEntryDN, entryAttrMap, uSearchErr := la.ldapSearch(l, &la.config.Base, &filter, &labelAttributes)
+ if uSearchErr != nil {
+ return false, nil, uSearchErr
+ }
+- if len(entryAttrMap) < 1 || entryAttrMap["DN"] == nil || len(entryAttrMap["DN"]) != 1 {
+- return false, nil, NoMatch // User does not exist
+- }
+-
+- accountEntryDN := entryAttrMap["DN"][0]
+ if accountEntryDN == "" {
+ return false, nil, NoMatch // User does not exist
+ }
++
+ // Bind as the user to verify their password
+ if len(accountEntryDN) > 0 {
+ err := l.Bind(accountEntryDN, string(password))
+@@ -102,21 +105,13 @@ func (la *LDAPAuth) Authenticate(account string, password PasswordString) (bool,
+ return false, nil, bindErr
+ }
+
+- // Extract group names from the attribute values
+- if entryAttrMap[groupAttribute] != nil {
+- rawGroups := entryAttrMap[groupAttribute]
+- labels := make(map[string][]string)
+- var groups []string
+- for _, value := range rawGroups {
+- cn := la.getCNFromDN(value)
+- groups = append(groups, cn)
+- }
+- labels["groups"] = groups
+-
+- return true, labels, nil
++ // Extract labels from the attribute values
++ labels, labelsExtractErr := la.getLabelsFromMap(entryAttrMap)
++ if labelsExtractErr != nil {
++ return false, nil, labelsExtractErr
+ }
+
+- return true, nil, nil
++ return true, labels, nil
+ }
+
+ func (la *LDAPAuth) bindReadOnlyUser(l *ldap.Conn) error {
+@@ -193,9 +188,9 @@ func (la *LDAPAuth) getFilter(account string) string {
+
+ //ldap search and return required attributes' value from searched entries
+ //default return entry's DN value if you leave attrs array empty
+-func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, attrs *[]string) (map[string][]string, error) {
++func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, attrs *[]string) (string, map[string][]string, error) {
+ if l == nil {
+- return nil, fmt.Errorf("No ldap connection!")
++ return "", nil, fmt.Errorf("No ldap connection!")
+ }
+ glog.V(2).Infof("Searching...basedDN:%s, filter:%s", *baseDN, *filter)
+ searchRequest := ldap.NewSearchRequest(
+@@ -206,38 +201,66 @@ func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, att
+ nil)
+ sr, err := l.Search(searchRequest)
+ if err != nil {
+- return nil, err
++ return "", nil, err
+ }
+
+ if len(sr.Entries) == 0 {
+- return nil, nil // User does not exist
++ return "", nil, nil // User does not exist
+ } else if len(sr.Entries) > 1 {
+- return nil, fmt.Errorf("Too many entries returned.")
++ return "", nil, fmt.Errorf("Too many entries returned.")
+ }
+
+- result := make(map[string][]string)
++ attributes := make(map[string][]string)
++ var entryDn string
+ for _, entry := range sr.Entries {
+-
++ entryDn = entry.DN
+ if len(*attrs) == 0 {
+- glog.V(2).Infof("Entry DN = %s", entry.DN)
+- result["DN"] = []string{entry.DN}
++ glog.V(2).Infof("Entry DN = %s", entryDn)
+ } else {
+ for _, attr := range *attrs {
+- var values []string
+- if attr == "DN" {
+- // DN is excluded from attributes
+- values = []string{entry.DN}
+- } else {
+- values = entry.GetAttributeValues(attr)
+- }
+- valuesString := strings.Join(values, "\n")
+- glog.V(2).Infof("Entry %s = %s", attr, valuesString)
+- result[attr] = values
++ values := entry.GetAttributeValues(attr)
++ glog.V(2).Infof("Entry %s = %s", attr, strings.Join(values, "\n"))
++ attributes[attr] = values
+ }
+ }
+ }
+
+- return result, nil
++ return entryDn, attributes, nil
++}
++
++func (la *LDAPAuth) getLabelAttributes() ([]string, error) {
++ labelAttributes := make([]string, len(la.config.LabelMaps))
++ i := 0
++ for key, mapping := range la.config.LabelMaps {
++ if mapping.Attribute == "" {
++ return nil, fmt.Errorf("Label %s is missing 'attribute' to map from", key)
++ }
++ labelAttributes[i] = mapping.Attribute
++ i++
++ }
++ return labelAttributes, nil
++}
++
++func (la *LDAPAuth) getLabelsFromMap(attrMap map[string][]string) (map[string][]string, error) {
++ labels := make(map[string][]string)
++ for key, mapping := range la.config.LabelMaps {
++ if mapping.Attribute == "" {
++ return nil, fmt.Errorf("Label %s is missing 'attribute' to map from", key)
++ }
++
++ mappingValues := attrMap[mapping.Attribute]
++ if mappingValues != nil {
++ if mapping.ParseCN {
++ // shorten attribute to its common name
++ for i, value := range mappingValues {
++ cn := la.getCNFromDN(value)
++ mappingValues[i] = cn
++ }
++ }
++ labels[key] = mappingValues
++ }
++ }
++ return labels, nil
+ }
+
+ func (la *LDAPAuth) getCNFromDN(dn string) string {
+
+From cd37001980267a99a9faa19f1927891af63acb90 Mon Sep 17 00:00:00 2001
+From: Kevin <kcd83@users.noreply.github.com>
+Date: Tue, 28 Feb 2017 18:27:16 +1300
+Subject: [PATCH 3/4] Remove unused configuration fields, never implemented?
+
+---
+ auth_server/authn/ldap_auth.go | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/auth_server/authn/ldap_auth.go b/auth_server/authn/ldap_auth.go
+index 6f733a2..9c8bcb8 100644
+--- a/auth_server/authn/ldap_auth.go
++++ b/auth_server/authn/ldap_auth.go
+@@ -40,8 +40,6 @@ type LDAPAuthConfig struct {
+ BindDN string `yaml:"bind_dn,omitempty"`
+ BindPasswordFile string `yaml:"bind_password_file,omitempty"`
+ LabelMaps map[string]LabelMap `yaml:"labels,omitempty"`
+- GroupBaseDN string `yaml:"group_base_dn,omitempty"`
+- GroupFilter string `yaml:"group_filter,omitempty"`
+ }
+
+ type LDAPAuth struct {
+
+From 2fd43be4e5c2cfe177d9e1d36bcd1b29f4d6f262 Mon Sep 17 00:00:00 2001
+From: Kevin <kcd83@users.noreply.github.com>
+Date: Fri, 1 Sep 2017 22:50:19 +1200
+Subject: [PATCH 4/4] Add LDAP label map examples to the reference config
+
+---
+ examples/reference.yml | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/examples/reference.yml b/examples/reference.yml
+index b8bb08c..40c5762 100644
+--- a/examples/reference.yml
++++ b/examples/reference.yml
+@@ -134,6 +134,16 @@ ldap_auth:
+ # User query settings. ${account} is expanded from auth request
+ base: o=example.com
+ filter: (&(uid=${account})(objectClass=person))
++ # Labels can be mapped from LDAP attributes
++ labels:
++ # Add the user's title to a label called title
++ title:
++ attribute: title
++ # Add the user's memberOf values to a label called groups
++ groups:
++ attribute: memberOf
++ # Special handling to simplify the values to just the common name
++ parse_cn: true
+
+ mongo_auth:
+ # Essentially all options are described here: https://godoc.org/gopkg.in/mgo.v2#DialInfo
diff --git a/sys-auth/docker_auth/files/docker_auth-ldap-group-support.patch b/sys-auth/docker_auth/files/docker_auth-ldap-group-support.patch
new file mode 100644
index 000000000000..69858872f496
--- /dev/null
+++ b/sys-auth/docker_auth/files/docker_auth-ldap-group-support.patch
@@ -0,0 +1,363 @@
+From 4a33badac6b74617dfe3797a716a6907cf018b27 Mon Sep 17 00:00:00 2001
+From: Kevin <kcd83@users.noreply.github.com>
+Date: Mon, 27 Feb 2017 19:09:52 +1300
+Subject: [PATCH 1/3] Initial proof of concept mapping memberOf CN to the label
+ groups #63
+
+---
+ auth_server/authn/ldap_auth.go | 73 ++++++++++++++++++++++++++++++++++--------
+ 1 file changed, 60 insertions(+), 13 deletions(-)
+
+diff --git a/auth_server/authn/ldap_auth.go b/auth_server/authn/ldap_auth.go
+index f8fc08f..42f5ad0 100644
+--- a/auth_server/authn/ldap_auth.go
++++ b/auth_server/authn/ldap_auth.go
+@@ -17,7 +17,6 @@
+ package authn
+
+ import (
+- "bytes"
+ "crypto/tls"
+ "fmt"
+ "io/ioutil"
+@@ -71,10 +70,20 @@ func (la *LDAPAuth) Authenticate(account string, password PasswordString) (bool,
+ account = la.escapeAccountInput(account)
+
+ filter := la.getFilter(account)
+- accountEntryDN, uSearchErr := la.ldapSearch(l, &la.config.Base, &filter, &[]string{})
++
++ // dnAndGroupAttr := []string{"DN"} // example of no groups mapping attribute
++ groupAttribute := "memberOf"
++ dnAndGroupAttr := []string{"DN", groupAttribute}
++
++ entryAttrMap, uSearchErr := la.ldapSearch(l, &la.config.Base, &filter, &dnAndGroupAttr)
+ if uSearchErr != nil {
+ return false, nil, uSearchErr
+ }
++ if len(entryAttrMap) < 1 || entryAttrMap["DN"] == nil || len(entryAttrMap["DN"]) != 1 {
++ return false, nil, NoMatch // User does not exist
++ }
++
++ accountEntryDN := entryAttrMap["DN"][0]
+ if accountEntryDN == "" {
+ return false, nil, NoMatch // User does not exist
+ }
+@@ -93,6 +102,20 @@ func (la *LDAPAuth) Authenticate(account string, password PasswordString) (bool,
+ return false, nil, bindErr
+ }
+
++ // Extract group names from the attribute values
++ if entryAttrMap[groupAttribute] != nil {
++ rawGroups := entryAttrMap[groupAttribute]
++ labels := make(map[string][]string)
++ var groups []string
++ for _, value := range rawGroups {
++ cn := la.getCNFromDN(value)
++ groups = append(groups, cn)
++ }
++ labels["groups"] = groups
++
++ return true, labels, nil
++ }
++
+ return true, nil, nil
+ }
+
+@@ -170,9 +193,9 @@ func (la *LDAPAuth) getFilter(account string) string {
+
+ //ldap search and return required attributes' value from searched entries
+ //default return entry's DN value if you leave attrs array empty
+-func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, attrs *[]string) (string, error) {
++func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, attrs *[]string) (map[string][]string, error) {
+ if l == nil {
+- return "", fmt.Errorf("No ldap connection!")
++ return nil, fmt.Errorf("No ldap connection!")
+ }
+ glog.V(2).Infof("Searching...basedDN:%s, filter:%s", *baseDN, *filter)
+ searchRequest := ldap.NewSearchRequest(
+@@ -183,30 +206,54 @@ func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, att
+ nil)
+ sr, err := l.Search(searchRequest)
+ if err != nil {
+- return "", err
++ return nil, err
+ }
+
+ if len(sr.Entries) == 0 {
+- return "", nil // User does not exist
++ return nil, nil // User does not exist
+ } else if len(sr.Entries) > 1 {
+- return "", fmt.Errorf("Too many entries returned.")
++ return nil, fmt.Errorf("Too many entries returned.")
+ }
+
+- var buffer bytes.Buffer
++ result := make(map[string][]string)
+ for _, entry := range sr.Entries {
++
+ if len(*attrs) == 0 {
+ glog.V(2).Infof("Entry DN = %s", entry.DN)
+- buffer.WriteString(entry.DN)
++ result["DN"] = []string{entry.DN}
+ } else {
+ for _, attr := range *attrs {
+- values := strings.Join(entry.GetAttributeValues(attr), " ")
+- glog.V(2).Infof("Entry %s = %s", attr, values)
+- buffer.WriteString(values)
++ var values []string
++ if attr == "DN" {
++ // DN is excluded from attributes
++ values = []string{entry.DN}
++ } else {
++ values = entry.GetAttributeValues(attr)
++ }
++ valuesString := strings.Join(values, "\n")
++ glog.V(2).Infof("Entry %s = %s", attr, valuesString)
++ result[attr] = values
++ }
++ }
++ }
++
++ return result, nil
++}
++
++func (la *LDAPAuth) getCNFromDN(dn string) string {
++ parsedDN, err := ldap.ParseDN(dn)
++ if err != nil || len(parsedDN.RDNs) > 0 {
++ for _, rdn := range parsedDN.RDNs {
++ for _, rdnAttr := range rdn.Attributes {
++ if rdnAttr.Type == "CN" {
++ return rdnAttr.Value
++ }
+ }
+ }
+ }
+
+- return buffer.String(), nil
++ // else try using raw DN
++ return dn
+ }
+
+ func (la *LDAPAuth) Stop() {
+
+From ddde2fa779e746d7e74cd972a4c6795c72f17ee6 Mon Sep 17 00:00:00 2001
+From: Kevin <kcd83@users.noreply.github.com>
+Date: Tue, 28 Feb 2017 18:09:55 +1300
+Subject: [PATCH 2/3] Apply attribute mapping from configuration
+
+---
+ auth_server/authn/ldap_auth.go | 125 ++++++++++++++++++++++++-----------------
+ 1 file changed, 74 insertions(+), 51 deletions(-)
+
+diff --git a/auth_server/authn/ldap_auth.go b/auth_server/authn/ldap_auth.go
+index 42f5ad0..6f733a2 100644
+--- a/auth_server/authn/ldap_auth.go
++++ b/auth_server/authn/ldap_auth.go
+@@ -26,16 +26,22 @@ import (
+ "github.com/golang/glog"
+ )
+
++type LabelMap struct {
++ Attribute string `yaml:"attribute,omitempty"`
++ ParseCN bool `yaml:"parse_cn,omitempty"`
++}
++
+ type LDAPAuthConfig struct {
+- Addr string `yaml:"addr,omitempty"`
+- TLS string `yaml:"tls,omitempty"`
+- InsecureTLSSkipVerify bool `yaml:"insecure_tls_skip_verify,omitempty"`
+- Base string `yaml:"base,omitempty"`
+- Filter string `yaml:"filter,omitempty"`
+- BindDN string `yaml:"bind_dn,omitempty"`
+- BindPasswordFile string `yaml:"bind_password_file,omitempty"`
+- GroupBaseDN string `yaml:"group_base_dn,omitempty"`
+- GroupFilter string `yaml:"group_filter,omitempty"`
++ Addr string `yaml:"addr,omitempty"`
++ TLS string `yaml:"tls,omitempty"`
++ InsecureTLSSkipVerify bool `yaml:"insecure_tls_skip_verify,omitempty"`
++ Base string `yaml:"base,omitempty"`
++ Filter string `yaml:"filter,omitempty"`
++ BindDN string `yaml:"bind_dn,omitempty"`
++ BindPasswordFile string `yaml:"bind_password_file,omitempty"`
++ LabelMaps map[string]LabelMap `yaml:"labels,omitempty"`
++ GroupBaseDN string `yaml:"group_base_dn,omitempty"`
++ GroupFilter string `yaml:"group_filter,omitempty"`
+ }
+
+ type LDAPAuth struct {
+@@ -71,22 +77,19 @@ func (la *LDAPAuth) Authenticate(account string, password PasswordString) (bool,
+
+ filter := la.getFilter(account)
+
+- // dnAndGroupAttr := []string{"DN"} // example of no groups mapping attribute
+- groupAttribute := "memberOf"
+- dnAndGroupAttr := []string{"DN", groupAttribute}
++ labelAttributes, labelsConfigErr := la.getLabelAttributes()
++ if labelsConfigErr != nil {
++ return false, nil, labelsConfigErr
++ }
+
+- entryAttrMap, uSearchErr := la.ldapSearch(l, &la.config.Base, &filter, &dnAndGroupAttr)
++ accountEntryDN, entryAttrMap, uSearchErr := la.ldapSearch(l, &la.config.Base, &filter, &labelAttributes)
+ if uSearchErr != nil {
+ return false, nil, uSearchErr
+ }
+- if len(entryAttrMap) < 1 || entryAttrMap["DN"] == nil || len(entryAttrMap["DN"]) != 1 {
+- return false, nil, NoMatch // User does not exist
+- }
+-
+- accountEntryDN := entryAttrMap["DN"][0]
+ if accountEntryDN == "" {
+ return false, nil, NoMatch // User does not exist
+ }
++
+ // Bind as the user to verify their password
+ if len(accountEntryDN) > 0 {
+ err := l.Bind(accountEntryDN, string(password))
+@@ -102,21 +105,13 @@ func (la *LDAPAuth) Authenticate(account string, password PasswordString) (bool,
+ return false, nil, bindErr
+ }
+
+- // Extract group names from the attribute values
+- if entryAttrMap[groupAttribute] != nil {
+- rawGroups := entryAttrMap[groupAttribute]
+- labels := make(map[string][]string)
+- var groups []string
+- for _, value := range rawGroups {
+- cn := la.getCNFromDN(value)
+- groups = append(groups, cn)
+- }
+- labels["groups"] = groups
+-
+- return true, labels, nil
++ // Extract labels from the attribute values
++ labels, labelsExtractErr := la.getLabelsFromMap(entryAttrMap)
++ if labelsExtractErr != nil {
++ return false, nil, labelsExtractErr
+ }
+
+- return true, nil, nil
++ return true, labels, nil
+ }
+
+ func (la *LDAPAuth) bindReadOnlyUser(l *ldap.Conn) error {
+@@ -193,9 +188,9 @@ func (la *LDAPAuth) getFilter(account string) string {
+
+ //ldap search and return required attributes' value from searched entries
+ //default return entry's DN value if you leave attrs array empty
+-func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, attrs *[]string) (map[string][]string, error) {
++func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, attrs *[]string) (string, map[string][]string, error) {
+ if l == nil {
+- return nil, fmt.Errorf("No ldap connection!")
++ return "", nil, fmt.Errorf("No ldap connection!")
+ }
+ glog.V(2).Infof("Searching...basedDN:%s, filter:%s", *baseDN, *filter)
+ searchRequest := ldap.NewSearchRequest(
+@@ -206,38 +201,66 @@ func (la *LDAPAuth) ldapSearch(l *ldap.Conn, baseDN *string, filter *string, att
+ nil)
+ sr, err := l.Search(searchRequest)
+ if err != nil {
+- return nil, err
++ return "", nil, err
+ }
+
+ if len(sr.Entries) == 0 {
+- return nil, nil // User does not exist
++ return "", nil, nil // User does not exist
+ } else if len(sr.Entries) > 1 {
+- return nil, fmt.Errorf("Too many entries returned.")
++ return "", nil, fmt.Errorf("Too many entries returned.")
+ }
+
+- result := make(map[string][]string)
++ attributes := make(map[string][]string)
++ var entryDn string
+ for _, entry := range sr.Entries {
+-
++ entryDn = entry.DN
+ if len(*attrs) == 0 {
+- glog.V(2).Infof("Entry DN = %s", entry.DN)
+- result["DN"] = []string{entry.DN}
++ glog.V(2).Infof("Entry DN = %s", entryDn)
+ } else {
+ for _, attr := range *attrs {
+- var values []string
+- if attr == "DN" {
+- // DN is excluded from attributes
+- values = []string{entry.DN}
+- } else {
+- values = entry.GetAttributeValues(attr)
+- }
+- valuesString := strings.Join(values, "\n")
+- glog.V(2).Infof("Entry %s = %s", attr, valuesString)
+- result[attr] = values
++ values := entry.GetAttributeValues(attr)
++ glog.V(2).Infof("Entry %s = %s", attr, strings.Join(values, "\n"))
++ attributes[attr] = values
+ }
+ }
+ }
+
+- return result, nil
++ return entryDn, attributes, nil
++}
++
++func (la *LDAPAuth) getLabelAttributes() ([]string, error) {
++ labelAttributes := make([]string, len(la.config.LabelMaps))
++ i := 0
++ for key, mapping := range la.config.LabelMaps {
++ if mapping.Attribute == "" {
++ return nil, fmt.Errorf("Label %s is missing 'attribute' to map from", key)
++ }
++ labelAttributes[i] = mapping.Attribute
++ i++
++ }
++ return labelAttributes, nil
++}
++
++func (la *LDAPAuth) getLabelsFromMap(attrMap map[string][]string) (map[string][]string, error) {
++ labels := make(map[string][]string)
++ for key, mapping := range la.config.LabelMaps {
++ if mapping.Attribute == "" {
++ return nil, fmt.Errorf("Label %s is missing 'attribute' to map from", key)
++ }
++
++ mappingValues := attrMap[mapping.Attribute]
++ if mappingValues != nil {
++ if mapping.ParseCN {
++ // shorten attribute to its common name
++ for i, value := range mappingValues {
++ cn := la.getCNFromDN(value)
++ mappingValues[i] = cn
++ }
++ }
++ labels[key] = mappingValues
++ }
++ }
++ return labels, nil
+ }
+
+ func (la *LDAPAuth) getCNFromDN(dn string) string {
+
+From cd37001980267a99a9faa19f1927891af63acb90 Mon Sep 17 00:00:00 2001
+From: Kevin <kcd83@users.noreply.github.com>
+Date: Tue, 28 Feb 2017 18:27:16 +1300
+Subject: [PATCH 3/3] Remove unused configuration fields, never implemented?
+
+---
+ auth_server/authn/ldap_auth.go | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/auth_server/authn/ldap_auth.go b/auth_server/authn/ldap_auth.go
+index 6f733a2..9c8bcb8 100644
+--- a/auth_server/authn/ldap_auth.go
++++ b/auth_server/authn/ldap_auth.go
+@@ -40,8 +40,6 @@ type LDAPAuthConfig struct {
+ BindDN string `yaml:"bind_dn,omitempty"`
+ BindPasswordFile string `yaml:"bind_password_file,omitempty"`
+ LabelMaps map[string]LabelMap `yaml:"labels,omitempty"`
+- GroupBaseDN string `yaml:"group_base_dn,omitempty"`
+- GroupFilter string `yaml:"group_filter,omitempty"`
+ }
+
+ type LDAPAuth struct {
diff --git a/sys-auth/docker_auth/files/docker_auth.confd b/sys-auth/docker_auth/files/docker_auth.confd
new file mode 100644
index 000000000000..9185f376b0da
--- /dev/null
+++ b/sys-auth/docker_auth/files/docker_auth.confd
@@ -0,0 +1,2 @@
+# arguments for docker auth
+command_args="/etc/docker_auth/config.yml"
diff --git a/sys-auth/docker_auth/files/docker_auth.initd b/sys-auth/docker_auth/files/docker_auth.initd
new file mode 100644
index 000000000000..52699100d8c1
--- /dev/null
+++ b/sys-auth/docker_auth/files/docker_auth.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 2016-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Docker Registry Authentication Server"
+pidfile=${pidfile:-"/run/${SVCNAME}.pid"}
+user=${user:-${SVCNAME}}
+group=${group:-${SVCNAME}}
+
+command="/usr/bin/auth_server"
+command_args="${command_args:--log_dir /var/log/${SVCNAME} /etc/docker_auth/config.yml}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${SVCNAME}/${SVCNAME}.log \
+ --stderr /var/log/${SVCNAME}/${SVCNAME}.log"
+
+depend() {
+ after net
+}
diff --git a/sys-auth/docker_auth/files/docker_auth.logrotated b/sys-auth/docker_auth/files/docker_auth.logrotated
new file mode 100644
index 000000000000..7bcd082c0719
--- /dev/null
+++ b/sys-auth/docker_auth/files/docker_auth.logrotated
@@ -0,0 +1,8 @@
+/var/log/docker_auth/* {
+ su docker_auth docker_auth
+ missingok
+ size 5M
+ rotate 3
+ compress
+ copytruncate
+}
diff --git a/sys-auth/docker_auth/files/version.go b/sys-auth/docker_auth/files/version.go
new file mode 100644
index 000000000000..9c014db7f1f2
--- /dev/null
+++ b/sys-auth/docker_auth/files/version.go
@@ -0,0 +1,6 @@
+package main
+
+const (
+ Version = "{version}"
+ BuildId = "{build_id}"
+)
diff --git a/sys-auth/docker_auth/metadata.xml b/sys-auth/docker_auth/metadata.xml
new file mode 100644
index 000000000000..d1433ed56c2f
--- /dev/null
+++ b/sys-auth/docker_auth/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mrueg@gentoo.org</email>
+ <name>Manuel Rüger</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">cesanta/docker_auth</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/elogind/Manifest b/sys-auth/elogind/Manifest
new file mode 100644
index 000000000000..68cbf08f17f5
--- /dev/null
+++ b/sys-auth/elogind/Manifest
@@ -0,0 +1,25 @@
+AUX elogind-226.4-docs.patch 355 SHA256 4fa3a1aa38a9ba23cd023a3ace11c4c8155ee856a6cd7f228ac65cd921629b24 SHA512 dc942f190ea2064e194808db7c6ede618d536778f1b574658ddb9c0aa4a106f6129cc18000eaa63aeca1b16ad28fe5f5dbee441bd93436ae62eb4740236f94ae WHIRLPOOL 45bdbbaa103b6bf94a0e3544978eb1ea0a942162711227f8c9c17f1c606d15d1e1e44f898635b26c80bf96d662c612daf59aed007aa57744baed574b20861a38
+AUX elogind.conf 225 SHA256 ad651e0c6cd456cc0209802ac878a7c08e69435f0428ded4ad116d11f728b2dd SHA512 5e945ee0e16a1b81dd125ca0104eec67291cea68f2c3e828a5fcdbffa79715323a447b5a85d13c45f2ef88cb6bc44df01adcf7c84403532d9635d65a7e5f5e70 WHIRLPOOL 6aca48f90e72d2af218901d073bf84cd156c44c8fc93dc2ad486596becf76f08fbabaf8848457d22102895920bcd4b00b8d8f276a7d57b2ac52b31841df7b34f
+AUX elogind.conf.in 218 SHA256 ed2b6b9c659d7661cba043fefe38aa5c7d7c910fc50060c6a4be0ef5b75b7376 SHA512 2c62ab28d7db9cd52489069f80363159000385a25dd7f2afe5a03598a0b7a1f61af7c18df71f6286e72f5966e55b62a4029e30cb786dd813bb201b9e20adccd7 WHIRLPOOL df40c41e4f7e2bbc0ff7d89b88fccb0e02fceb404b4814fbc32f526eb9ac455409782f02c7a30bd737f6f6b171a6140dae7befb20d4f571250fae3b3320e37f6
+AUX elogind.init 490 SHA256 982423a88eea889c194123ecffbdea03d8f94ca497b7b32bd86fdf20a81680c7 SHA512 60fe1cb55ec0f605f06fb3744a0300accebfc14c4ecd24b7db2e8b0cb1537e816a4a4ccbc4b2eeac45e2f3ca8942dd10d24bdcd814cccbc2ceed198b2657238a WHIRLPOOL 1b9e244c46e021855688bcc5295cc897a988864c8954cd794726e0d77dba5665e43e96c7a297402b9562c7b6a33c2299e6471fadff45f098baed031cc3f60dec
+DIST elogind-229.6.tar.gz 765900 SHA256 19f08dba36509b3c5baf1f35d9ac1f5b473b550c081f63fa64ffbe8862ede7aa SHA512 a1bf2937ad2f8d351cd5a0ca5c1c73e85746d14e0a252befa3ed0d396e782df0fde34c49101931189cd56404b59709a7e5ae5beceaac6f30151b50fb32d26ae0 WHIRLPOOL 24d6315d4568b18df4eaa42410f2744b31ab935dd6a7fb0281e4fe2b2e953e411d462db829cbde786c338e823823998e13a9af287252440642499dfe8aca1b1c
+DIST elogind-229.8.tar.gz 767750 SHA256 5b9af5dc1e2d2dcd4e4008ba0ff07581fdd6aa1a11e3ebee345ef1b16b491184 SHA512 bc30b9ed604aba4da1d7e743ab4d00bf26845a8febd78e1cf7031e609c1ab4d14d7460ccf0a3782bffcc1a887fc9a6f66cddc21820525a5b209f132e84747c87 WHIRLPOOL 90ae05602969259bbc41b548dd21022dcf70b53c22afcd812bb17d5578b888add90d6fe528f4fe30c045981922fd4285d35814056d9e3b9f600e2d4fe4d80c4e
+DIST elogind-231.4.tar.gz 812542 SHA256 6a7118abb696d6fd046bb4bbfcbc7bd415770792e6577417d9deb0bcbc4ee8ff SHA512 e1a031b8d6d4ad63043c79b5786b4b5dd890a7911483cdff8652242856edcad99ad811c44b132875a47ff8995d135d843cbfcf4622e4b3e2e7c62ad2d5acf90e WHIRLPOOL 8f5bbec56784eb95b3886c9eb42a9e1a233f68ff8107984e247612e4fd08443b88b69ab033b398fb2d77338ea69fa6607500d481a80a03810ab37a8613e7a703
+DIST elogind-231.6.tar.gz 813666 SHA256 d57ab2f488284e5bc01c6b8d60bf3037e9b43abfc647daacbeb2501352cf0d14 SHA512 cf4c06b930f72fbc93ec253a1f0ba86ae67dc4b1e974a5c7fef3e3985b78cd3cf86b0e7c33261bf27acb347d551c05ab363455c963d5ce817cc5fcee4ad09629 WHIRLPOOL 81291aca139a0316ab200dc000846ab78f4ec262337840c65a8ecd7653e1f6c7a399c3fae335604148fc0c71e48644466b83919d68da364dbfd2023a7138a9f7
+DIST elogind-232.3.tar.gz 834210 SHA256 6e1064fdc648e7ebe0aadbcc3c2b4e41f85fec08713dbca3faa5c156f8c76bbc SHA512 359949408549e102923954447c213ed060842846edd126ff233118405521ee553909efaa6ab8ed20c96786534e11b1f3b700e6db18232b7e69691d4712cf014d WHIRLPOOL 36eba13ce1891b40fc85f244b0cb2ca5ba1efbd1bd23fbc07220682706d4071ec15fcaa75ffce2241fd1da040dd207ef9655550cc5ade2962638223a9d126e29
+DIST elogind-232.5.tar.gz 835373 SHA256 b8707534873c1a6198f865ef5d9450627c31f70685c97ffbb18c248ef96c9200 SHA512 40a717dd4ce581e08ce501384c7fbfb1a4830504931f0380fec048594fb6308bf3453806713c137f809538c506a9965ea8f35a2a858f27121b8342bb37745b2a WHIRLPOOL d94d0fdf1db70e72a13a710a7b4d5dce24df9ab2c40cbc1a90756cb4ca59bbec2329b3a92678bf6cabbb1b47ffaeda03110bf2ceeac459e8b851475d4ed3890a
+DIST elogind-233.6.tar.gz 902277 SHA256 0efa2c6eb685000c9e0f29a8d7ee7b269c756f013ae83522568a25f6b249822d SHA512 390950893c37d90ee59438822261383a5d0913f5e4cfc82286c505f6db89b06b3d161c209c6ac5bb95e084402352299b7bdbd9c0faa573bb6f8a45309fc872f4 WHIRLPOOL 0b0534f061e319050fafd6450cf3a4a9ab5119069dff52e91c0f8b555bf630701c014d3990235a2cf1b4d224fa70bf934fab6525add63e13c9732f28fed31dfe
+DIST elogind-233.7.tar.gz 957308 SHA256 8854f29a53d1305dc1c264635b1e970cfcbcc32507af8ef35de4a9b447f79e0b SHA512 c4ca84d45c289131f2b9d698d0e010fb368da39e80a9a972822148509644727a5e420ec2c68dc896bd250e81bdb125b4d760b0a65a4444365c81af2da9555a78 WHIRLPOOL 597f43c47ff630ec408f99c3d7e88622fc179f542772d800af09691734882bede81ab2d54ea51de21de08be568500477e2688579f9d244ddc11bd282a6678fce
+DIST elogind-234.3.tar.gz 970679 SHA256 d3a3f272256da3946b0ab2508b6d5a95ad71f0b9b57e509a2264551bb1a4484d SHA512 3aeb33a2c7ba8c75af29cc7844ad7a6fe51edb96a09e364798de62332b04bcb94cb36cd55986cbf517bcf61660b3265b18d5819102f8ab5ecea26738154e21cb WHIRLPOOL 758650da0ba3c6800cf8a81426e2c8f8148cff9d185e0bb7d61e04a227b9eca05a2c32538c1ec7573c0f4ba28fe85a32a374b958ecf547a78667c97c25bbc6df
+DIST elogind-234.4.tar.gz 973370 SHA256 ffb465a62c4281c19b07eb7fbb9ad0987f3b726ae1a868a92a3144d7714542f3 SHA512 2df4fa318074d4f5e5dbba353cf817068a2703ffed40cdeae4cba2dea4ee143d1c5fc076b19419f1c4299392088c2c14b430d8aa1ded03b62117311802305d5e WHIRLPOOL 1b735338cb02ef8cffb5837a0702110117ae1d677a4cbf106180c549485f7fb0604f3134e6ff5e14b23485ddfe4d4415a41e69d93b8f099cee41a220d0ea4a69
+EBUILD elogind-229.6.ebuild 1949 SHA256 dd5f0d46d04146a35f1c5504ed3cc366630f24ec851e223ee4fff53d06dc0d23 SHA512 69bca5e7c2522d9d84bde603669aa6584b8241d024c03be39e86ac13b86272ce9a969153106977eaeb3a9d24e156d8170fb2281789d915a424967b42f77535b3 WHIRLPOOL f5da298ba198e2ef026557dcc36cd02a867b60164222c2a0528620aa619246c1a4cb687032e2cc8596adf4a1ccdbc51da34bd093a544bbb0a35962823bd54855
+EBUILD elogind-229.8.ebuild 2799 SHA256 846659323da232b464b8359aa5fe75ac3f8bac542fa2f4912dd16dc62ccd4d17 SHA512 0999666dd6a40176611ad0d1eb07131eccf6976f0d2278ef74575e4d2308b68d1594b9707ba7b9d62174f43910663958796cd81c9f2d6e90b9b5622344af315b WHIRLPOOL 18035d98468e9410f2a787e444415610d968853c11dd1821b4990a2e841fc5fca66f27ca674a8f6b98da28f82961ac1ffc0b3005c73bc7c3fa3e964ccabf617e
+EBUILD elogind-231.4.ebuild 1956 SHA256 e6f5fcfd154aa28ff678d8e4036e2978c43436b2c1ed83f323e9cf60afe66532 SHA512 d736f2b7ed121b588e51608b1958c826861896b5ce85917100f86d8e15719e523b3a20e65cc47365fa27581145f8bc6d5ee9dff0d45e5938c1683d20b87d0377 WHIRLPOOL 38b322b214daea495dc68b81e246543944b826ca38af725f6dc76c43b2bfc2fbb0321ad14a86c806d5150daf51bb3c3031fe6ac3d496fb4039dc0d5f2f01ffae
+EBUILD elogind-231.6.ebuild 2815 SHA256 e9681b46938cb9a10c304125bcc069046bf3709b21ccbbd4f40e689c0fa8cd7e SHA512 4d8bf612441298fab9b52739d303d89a24d2f3eb8fa56b12601d3115c770d35bfc1c97fa2b5af3e90f2747ea294a2f6c22f6bc6aed178aa6862d739686ac9329 WHIRLPOOL b7b9842b973a00f26bf915c8e98fa695c36116a0e4a9ca3ded72a016460979591a6bf231d483a03fede8cbd9d9a98ea7876452fbede5f569a299e5694843cf66
+EBUILD elogind-232.3.ebuild 1956 SHA256 e6f5fcfd154aa28ff678d8e4036e2978c43436b2c1ed83f323e9cf60afe66532 SHA512 d736f2b7ed121b588e51608b1958c826861896b5ce85917100f86d8e15719e523b3a20e65cc47365fa27581145f8bc6d5ee9dff0d45e5938c1683d20b87d0377 WHIRLPOOL 38b322b214daea495dc68b81e246543944b826ca38af725f6dc76c43b2bfc2fbb0321ad14a86c806d5150daf51bb3c3031fe6ac3d496fb4039dc0d5f2f01ffae
+EBUILD elogind-232.5.ebuild 2815 SHA256 e9681b46938cb9a10c304125bcc069046bf3709b21ccbbd4f40e689c0fa8cd7e SHA512 4d8bf612441298fab9b52739d303d89a24d2f3eb8fa56b12601d3115c770d35bfc1c97fa2b5af3e90f2747ea294a2f6c22f6bc6aed178aa6862d739686ac9329 WHIRLPOOL b7b9842b973a00f26bf915c8e98fa695c36116a0e4a9ca3ded72a016460979591a6bf231d483a03fede8cbd9d9a98ea7876452fbede5f569a299e5694843cf66
+EBUILD elogind-233.6.ebuild 2815 SHA256 e9681b46938cb9a10c304125bcc069046bf3709b21ccbbd4f40e689c0fa8cd7e SHA512 4d8bf612441298fab9b52739d303d89a24d2f3eb8fa56b12601d3115c770d35bfc1c97fa2b5af3e90f2747ea294a2f6c22f6bc6aed178aa6862d739686ac9329 WHIRLPOOL b7b9842b973a00f26bf915c8e98fa695c36116a0e4a9ca3ded72a016460979591a6bf231d483a03fede8cbd9d9a98ea7876452fbede5f569a299e5694843cf66
+EBUILD elogind-233.7.ebuild 2815 SHA256 e9681b46938cb9a10c304125bcc069046bf3709b21ccbbd4f40e689c0fa8cd7e SHA512 4d8bf612441298fab9b52739d303d89a24d2f3eb8fa56b12601d3115c770d35bfc1c97fa2b5af3e90f2747ea294a2f6c22f6bc6aed178aa6862d739686ac9329 WHIRLPOOL b7b9842b973a00f26bf915c8e98fa695c36116a0e4a9ca3ded72a016460979591a6bf231d483a03fede8cbd9d9a98ea7876452fbede5f569a299e5694843cf66
+EBUILD elogind-234.3.ebuild 2815 SHA256 e9681b46938cb9a10c304125bcc069046bf3709b21ccbbd4f40e689c0fa8cd7e SHA512 4d8bf612441298fab9b52739d303d89a24d2f3eb8fa56b12601d3115c770d35bfc1c97fa2b5af3e90f2747ea294a2f6c22f6bc6aed178aa6862d739686ac9329 WHIRLPOOL b7b9842b973a00f26bf915c8e98fa695c36116a0e4a9ca3ded72a016460979591a6bf231d483a03fede8cbd9d9a98ea7876452fbede5f569a299e5694843cf66
+EBUILD elogind-234.4.ebuild 2815 SHA256 e9681b46938cb9a10c304125bcc069046bf3709b21ccbbd4f40e689c0fa8cd7e SHA512 4d8bf612441298fab9b52739d303d89a24d2f3eb8fa56b12601d3115c770d35bfc1c97fa2b5af3e90f2747ea294a2f6c22f6bc6aed178aa6862d739686ac9329 WHIRLPOOL b7b9842b973a00f26bf915c8e98fa695c36116a0e4a9ca3ded72a016460979591a6bf231d483a03fede8cbd9d9a98ea7876452fbede5f569a299e5694843cf66
+MISC metadata.xml 379 SHA256 c55fc88944b52a1d166e136a6b9a6e9e2f0c9b955e23f1d1c8d7f0d45a44a742 SHA512 30be0eb7903ffb83d9e24fbcacc8db09c0f8cd7187df5f75b2c12fb5cfae1110d52f29aba502ea92af53df02451cc40e0f3789382f87a16bd281f06e9cad6c68 WHIRLPOOL 11ff30511856a1ec0891654e0fea4e501e85c7e547069fd23f18f54fc50cc830b7da48633e5ee9afa5b968eb2b1dd473b3e6d849bf6af001e50ee77844a85605
diff --git a/sys-auth/elogind/elogind-229.6.ebuild b/sys-auth/elogind/elogind-229.6.ebuild
new file mode 100644
index 000000000000..0779afc16a32
--- /dev/null
+++ b/sys-auth/elogind/elogind-229.6.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools linux-info pam udev
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="acl debug pam policykit selinux"
+
+RDEPEND="
+ sys-apps/util-linux
+ sys-libs/libcap
+ virtual/libudev:=
+ acl? ( sys-apps/acl )
+ pam? ( virtual/pam )
+ selinux? ( sys-libs/libselinux )
+ !sys-apps/systemd
+"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-util/gperf
+ dev-util/intltool
+ sys-devel/libtool
+ virtual/pkgconfig
+"
+PDEPEND="
+ sys-apps/dbus
+ policykit? ( sys-auth/polkit )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-226.4-docs.patch" )
+
+pkg_setup() {
+ local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SECURITY_SMACK
+ ~SIGNALFD ~TIMERFD"
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf # Makefile.am patched by "${FILESDIR}/${P}-docs.patch"
+}
+
+src_configure() {
+ econf \
+ --with-pamlibdir=$(getpam_mod_dir) \
+ --with-udevrulesdir="$(get_udevdir)"/rules.d \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-rootlibdir="${EPREFIX}"/$(get_libdir) \
+ --enable-smack \
+ --disable-kdbus \
+ --disable-lto \
+ $(use_enable debug debug elogind) \
+ $(use_enable acl) \
+ $(use_enable pam) \
+ $(use_enable selinux)
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+ newconfd "${FILESDIR}"/${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+ if [ "$(rc-config list default | grep elogind)" = "" ]; then
+ ewarn "To enable the elogind daemon, elogind must be"
+ ewarn "added to the default runlevel:"
+ ewarn "# rc-update add elogind default"
+ fi
+}
diff --git a/sys-auth/elogind/elogind-229.8.ebuild b/sys-auth/elogind/elogind-229.8.ebuild
new file mode 100644
index 000000000000..87ccf720a533
--- /dev/null
+++ b/sys-auth/elogind/elogind-229.8.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools linux-info pam udev
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="acl debug pam policykit selinux"
+
+RDEPEND="
+ sys-apps/util-linux
+ sys-libs/libcap
+ virtual/libudev:=
+ acl? ( sys-apps/acl )
+ pam? ( virtual/pam )
+ selinux? ( sys-libs/libselinux )
+ !sys-apps/systemd
+"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-util/gperf
+ dev-util/intltool
+ sys-devel/libtool
+ virtual/pkgconfig
+"
+PDEPEND="
+ sys-apps/dbus
+ policykit? ( sys-auth/polkit )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-226.4-docs.patch" )
+
+pkg_setup() {
+ local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SECURITY_SMACK
+ ~SIGNALFD ~TIMERFD"
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf # Makefile.am patched by "${FILESDIR}/${P}-docs.patch"
+}
+
+src_configure() {
+ econf \
+ --with-pamlibdir=$(getpam_mod_dir) \
+ --with-udevrulesdir="$(get_udevdir)"/rules.d \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-rootlibdir="${EPREFIX}"/$(get_libdir) \
+ --with-rootprefix="${EPREFIX}/" \
+ --with-rootlibexecdir="${EPREFIX}"/$(get_libdir)/elogind \
+ --enable-smack \
+ --disable-kdbus \
+ --disable-lto \
+ $(use_enable debug debug elogind) \
+ $(use_enable acl) \
+ $(use_enable pam) \
+ $(use_enable selinux)
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+
+ sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.conf.in > ${PN}.conf || die
+ newconfd ${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+ if [ "$(rc-config list boot | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from boot runlevel."
+ elif [ "$(rc-config list default | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from default runlevel."
+ ewarn "Please remove elogind from the default runlevel and"
+ ewarn "add it to the boot runlevel by:"
+ ewarn "# rc-update del elogind default"
+ ewarn "# rc-update add elogind boot"
+ else
+ ewarn "elogind is currently not started from any runlevel."
+ ewarn "You may add it to the boot runlevel by:"
+ ewarn "# rc-update add elogind boot"
+ fi
+ ewarn "Alternatively you can leave elogind out of any"
+ ewarn "runlevel. It will then be started automatically"
+ if use pam; then
+ ewarn "when the first service calls it via dbus, or the"
+ ewarn "first user logs into the system."
+ else
+ ewarn "when the first service calls it via dbus."
+ fi
+}
diff --git a/sys-auth/elogind/elogind-231.4.ebuild b/sys-auth/elogind/elogind-231.4.ebuild
new file mode 100644
index 000000000000..5b61cd1c781a
--- /dev/null
+++ b/sys-auth/elogind/elogind-231.4.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools linux-info pam udev
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="acl debug pam policykit selinux"
+
+RDEPEND="
+ sys-apps/util-linux
+ sys-libs/libcap
+ virtual/libudev:=
+ acl? ( sys-apps/acl )
+ pam? ( virtual/pam )
+ selinux? ( sys-libs/libselinux )
+ !sys-apps/systemd
+"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-util/gperf
+ dev-util/intltool
+ sys-devel/libtool
+ virtual/pkgconfig
+"
+PDEPEND="
+ sys-apps/dbus
+ policykit? ( sys-auth/polkit )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-226.4-docs.patch" )
+
+pkg_setup() {
+ local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SECURITY_SMACK
+ ~SIGNALFD ~TIMERFD"
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf # Makefile.am patched by "${FILESDIR}/${P}-docs.patch"
+}
+
+src_configure() {
+ econf \
+ --with-pamlibdir=$(getpam_mod_dir) \
+ --with-udevrulesdir="$(get_udevdir)"/rules.d \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-rootlibdir="${EPREFIX}"/$(get_libdir) \
+ --enable-smack \
+ --with-cgroup-controller=openrc \
+ --disable-lto \
+ $(use_enable debug debug elogind) \
+ $(use_enable acl) \
+ $(use_enable pam) \
+ $(use_enable selinux)
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+ newconfd "${FILESDIR}"/${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+ if [ "$(rc-config list boot | grep elogind)" = "" ]; then
+ ewarn "To enable the elogind daemon, elogind must be"
+ ewarn "added to the boot runlevel:"
+ ewarn "# rc-update add elogind boot"
+ fi
+}
diff --git a/sys-auth/elogind/elogind-231.6.ebuild b/sys-auth/elogind/elogind-231.6.ebuild
new file mode 100644
index 000000000000..9f4a48ace408
--- /dev/null
+++ b/sys-auth/elogind/elogind-231.6.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools linux-info pam udev
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="acl debug pam policykit selinux"
+
+RDEPEND="
+ sys-apps/util-linux
+ sys-libs/libcap
+ virtual/libudev:=
+ acl? ( sys-apps/acl )
+ pam? ( virtual/pam )
+ selinux? ( sys-libs/libselinux )
+ !sys-apps/systemd
+"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-util/gperf
+ dev-util/intltool
+ sys-devel/libtool
+ virtual/pkgconfig
+"
+PDEPEND="
+ sys-apps/dbus
+ policykit? ( sys-auth/polkit )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-226.4-docs.patch" )
+
+pkg_setup() {
+ local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SECURITY_SMACK
+ ~SIGNALFD ~TIMERFD"
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf # Makefile.am patched by "${FILESDIR}/${P}-docs.patch"
+}
+
+src_configure() {
+ econf \
+ --with-pamlibdir=$(getpam_mod_dir) \
+ --with-udevrulesdir="$(get_udevdir)"/rules.d \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-rootlibdir="${EPREFIX}"/$(get_libdir) \
+ --with-rootprefix="${EPREFIX}/" \
+ --with-rootlibexecdir="${EPREFIX}"/$(get_libdir)/elogind \
+ --enable-smack \
+ --with-cgroup-controller=openrc \
+ --disable-lto \
+ $(use_enable debug debug elogind) \
+ $(use_enable acl) \
+ $(use_enable pam) \
+ $(use_enable selinux)
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+
+ sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.conf.in > ${PN}.conf || die
+ newconfd ${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+ if [ "$(rc-config list boot | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from boot runlevel."
+ elif [ "$(rc-config list default | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from default runlevel."
+ ewarn "Please remove elogind from the default runlevel and"
+ ewarn "add it to the boot runlevel by:"
+ ewarn "# rc-update del elogind default"
+ ewarn "# rc-update add elogind boot"
+ else
+ ewarn "elogind is currently not started from any runlevel."
+ ewarn "You may add it to the boot runlevel by:"
+ ewarn "# rc-update add elogind boot"
+ fi
+ ewarn "Alternatively you can leave elogind out of any"
+ ewarn "runlevel. It will then be started automatically"
+ if use pam; then
+ ewarn "when the first service calls it via dbus, or the"
+ ewarn "first user logs into the system."
+ else
+ ewarn "when the first service calls it via dbus."
+ fi
+}
diff --git a/sys-auth/elogind/elogind-232.3.ebuild b/sys-auth/elogind/elogind-232.3.ebuild
new file mode 100644
index 000000000000..5b61cd1c781a
--- /dev/null
+++ b/sys-auth/elogind/elogind-232.3.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools linux-info pam udev
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="acl debug pam policykit selinux"
+
+RDEPEND="
+ sys-apps/util-linux
+ sys-libs/libcap
+ virtual/libudev:=
+ acl? ( sys-apps/acl )
+ pam? ( virtual/pam )
+ selinux? ( sys-libs/libselinux )
+ !sys-apps/systemd
+"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-util/gperf
+ dev-util/intltool
+ sys-devel/libtool
+ virtual/pkgconfig
+"
+PDEPEND="
+ sys-apps/dbus
+ policykit? ( sys-auth/polkit )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-226.4-docs.patch" )
+
+pkg_setup() {
+ local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SECURITY_SMACK
+ ~SIGNALFD ~TIMERFD"
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf # Makefile.am patched by "${FILESDIR}/${P}-docs.patch"
+}
+
+src_configure() {
+ econf \
+ --with-pamlibdir=$(getpam_mod_dir) \
+ --with-udevrulesdir="$(get_udevdir)"/rules.d \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-rootlibdir="${EPREFIX}"/$(get_libdir) \
+ --enable-smack \
+ --with-cgroup-controller=openrc \
+ --disable-lto \
+ $(use_enable debug debug elogind) \
+ $(use_enable acl) \
+ $(use_enable pam) \
+ $(use_enable selinux)
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+ newconfd "${FILESDIR}"/${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+ if [ "$(rc-config list boot | grep elogind)" = "" ]; then
+ ewarn "To enable the elogind daemon, elogind must be"
+ ewarn "added to the boot runlevel:"
+ ewarn "# rc-update add elogind boot"
+ fi
+}
diff --git a/sys-auth/elogind/elogind-232.5.ebuild b/sys-auth/elogind/elogind-232.5.ebuild
new file mode 100644
index 000000000000..9f4a48ace408
--- /dev/null
+++ b/sys-auth/elogind/elogind-232.5.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools linux-info pam udev
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="acl debug pam policykit selinux"
+
+RDEPEND="
+ sys-apps/util-linux
+ sys-libs/libcap
+ virtual/libudev:=
+ acl? ( sys-apps/acl )
+ pam? ( virtual/pam )
+ selinux? ( sys-libs/libselinux )
+ !sys-apps/systemd
+"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-util/gperf
+ dev-util/intltool
+ sys-devel/libtool
+ virtual/pkgconfig
+"
+PDEPEND="
+ sys-apps/dbus
+ policykit? ( sys-auth/polkit )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-226.4-docs.patch" )
+
+pkg_setup() {
+ local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SECURITY_SMACK
+ ~SIGNALFD ~TIMERFD"
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf # Makefile.am patched by "${FILESDIR}/${P}-docs.patch"
+}
+
+src_configure() {
+ econf \
+ --with-pamlibdir=$(getpam_mod_dir) \
+ --with-udevrulesdir="$(get_udevdir)"/rules.d \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-rootlibdir="${EPREFIX}"/$(get_libdir) \
+ --with-rootprefix="${EPREFIX}/" \
+ --with-rootlibexecdir="${EPREFIX}"/$(get_libdir)/elogind \
+ --enable-smack \
+ --with-cgroup-controller=openrc \
+ --disable-lto \
+ $(use_enable debug debug elogind) \
+ $(use_enable acl) \
+ $(use_enable pam) \
+ $(use_enable selinux)
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+
+ sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.conf.in > ${PN}.conf || die
+ newconfd ${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+ if [ "$(rc-config list boot | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from boot runlevel."
+ elif [ "$(rc-config list default | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from default runlevel."
+ ewarn "Please remove elogind from the default runlevel and"
+ ewarn "add it to the boot runlevel by:"
+ ewarn "# rc-update del elogind default"
+ ewarn "# rc-update add elogind boot"
+ else
+ ewarn "elogind is currently not started from any runlevel."
+ ewarn "You may add it to the boot runlevel by:"
+ ewarn "# rc-update add elogind boot"
+ fi
+ ewarn "Alternatively you can leave elogind out of any"
+ ewarn "runlevel. It will then be started automatically"
+ if use pam; then
+ ewarn "when the first service calls it via dbus, or the"
+ ewarn "first user logs into the system."
+ else
+ ewarn "when the first service calls it via dbus."
+ fi
+}
diff --git a/sys-auth/elogind/elogind-233.6.ebuild b/sys-auth/elogind/elogind-233.6.ebuild
new file mode 100644
index 000000000000..9f4a48ace408
--- /dev/null
+++ b/sys-auth/elogind/elogind-233.6.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools linux-info pam udev
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="acl debug pam policykit selinux"
+
+RDEPEND="
+ sys-apps/util-linux
+ sys-libs/libcap
+ virtual/libudev:=
+ acl? ( sys-apps/acl )
+ pam? ( virtual/pam )
+ selinux? ( sys-libs/libselinux )
+ !sys-apps/systemd
+"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-util/gperf
+ dev-util/intltool
+ sys-devel/libtool
+ virtual/pkgconfig
+"
+PDEPEND="
+ sys-apps/dbus
+ policykit? ( sys-auth/polkit )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-226.4-docs.patch" )
+
+pkg_setup() {
+ local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SECURITY_SMACK
+ ~SIGNALFD ~TIMERFD"
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf # Makefile.am patched by "${FILESDIR}/${P}-docs.patch"
+}
+
+src_configure() {
+ econf \
+ --with-pamlibdir=$(getpam_mod_dir) \
+ --with-udevrulesdir="$(get_udevdir)"/rules.d \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-rootlibdir="${EPREFIX}"/$(get_libdir) \
+ --with-rootprefix="${EPREFIX}/" \
+ --with-rootlibexecdir="${EPREFIX}"/$(get_libdir)/elogind \
+ --enable-smack \
+ --with-cgroup-controller=openrc \
+ --disable-lto \
+ $(use_enable debug debug elogind) \
+ $(use_enable acl) \
+ $(use_enable pam) \
+ $(use_enable selinux)
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+
+ sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.conf.in > ${PN}.conf || die
+ newconfd ${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+ if [ "$(rc-config list boot | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from boot runlevel."
+ elif [ "$(rc-config list default | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from default runlevel."
+ ewarn "Please remove elogind from the default runlevel and"
+ ewarn "add it to the boot runlevel by:"
+ ewarn "# rc-update del elogind default"
+ ewarn "# rc-update add elogind boot"
+ else
+ ewarn "elogind is currently not started from any runlevel."
+ ewarn "You may add it to the boot runlevel by:"
+ ewarn "# rc-update add elogind boot"
+ fi
+ ewarn "Alternatively you can leave elogind out of any"
+ ewarn "runlevel. It will then be started automatically"
+ if use pam; then
+ ewarn "when the first service calls it via dbus, or the"
+ ewarn "first user logs into the system."
+ else
+ ewarn "when the first service calls it via dbus."
+ fi
+}
diff --git a/sys-auth/elogind/elogind-233.7.ebuild b/sys-auth/elogind/elogind-233.7.ebuild
new file mode 100644
index 000000000000..9f4a48ace408
--- /dev/null
+++ b/sys-auth/elogind/elogind-233.7.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools linux-info pam udev
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="acl debug pam policykit selinux"
+
+RDEPEND="
+ sys-apps/util-linux
+ sys-libs/libcap
+ virtual/libudev:=
+ acl? ( sys-apps/acl )
+ pam? ( virtual/pam )
+ selinux? ( sys-libs/libselinux )
+ !sys-apps/systemd
+"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-util/gperf
+ dev-util/intltool
+ sys-devel/libtool
+ virtual/pkgconfig
+"
+PDEPEND="
+ sys-apps/dbus
+ policykit? ( sys-auth/polkit )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-226.4-docs.patch" )
+
+pkg_setup() {
+ local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SECURITY_SMACK
+ ~SIGNALFD ~TIMERFD"
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf # Makefile.am patched by "${FILESDIR}/${P}-docs.patch"
+}
+
+src_configure() {
+ econf \
+ --with-pamlibdir=$(getpam_mod_dir) \
+ --with-udevrulesdir="$(get_udevdir)"/rules.d \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-rootlibdir="${EPREFIX}"/$(get_libdir) \
+ --with-rootprefix="${EPREFIX}/" \
+ --with-rootlibexecdir="${EPREFIX}"/$(get_libdir)/elogind \
+ --enable-smack \
+ --with-cgroup-controller=openrc \
+ --disable-lto \
+ $(use_enable debug debug elogind) \
+ $(use_enable acl) \
+ $(use_enable pam) \
+ $(use_enable selinux)
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+
+ sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.conf.in > ${PN}.conf || die
+ newconfd ${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+ if [ "$(rc-config list boot | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from boot runlevel."
+ elif [ "$(rc-config list default | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from default runlevel."
+ ewarn "Please remove elogind from the default runlevel and"
+ ewarn "add it to the boot runlevel by:"
+ ewarn "# rc-update del elogind default"
+ ewarn "# rc-update add elogind boot"
+ else
+ ewarn "elogind is currently not started from any runlevel."
+ ewarn "You may add it to the boot runlevel by:"
+ ewarn "# rc-update add elogind boot"
+ fi
+ ewarn "Alternatively you can leave elogind out of any"
+ ewarn "runlevel. It will then be started automatically"
+ if use pam; then
+ ewarn "when the first service calls it via dbus, or the"
+ ewarn "first user logs into the system."
+ else
+ ewarn "when the first service calls it via dbus."
+ fi
+}
diff --git a/sys-auth/elogind/elogind-234.3.ebuild b/sys-auth/elogind/elogind-234.3.ebuild
new file mode 100644
index 000000000000..9f4a48ace408
--- /dev/null
+++ b/sys-auth/elogind/elogind-234.3.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools linux-info pam udev
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="acl debug pam policykit selinux"
+
+RDEPEND="
+ sys-apps/util-linux
+ sys-libs/libcap
+ virtual/libudev:=
+ acl? ( sys-apps/acl )
+ pam? ( virtual/pam )
+ selinux? ( sys-libs/libselinux )
+ !sys-apps/systemd
+"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-util/gperf
+ dev-util/intltool
+ sys-devel/libtool
+ virtual/pkgconfig
+"
+PDEPEND="
+ sys-apps/dbus
+ policykit? ( sys-auth/polkit )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-226.4-docs.patch" )
+
+pkg_setup() {
+ local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SECURITY_SMACK
+ ~SIGNALFD ~TIMERFD"
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf # Makefile.am patched by "${FILESDIR}/${P}-docs.patch"
+}
+
+src_configure() {
+ econf \
+ --with-pamlibdir=$(getpam_mod_dir) \
+ --with-udevrulesdir="$(get_udevdir)"/rules.d \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-rootlibdir="${EPREFIX}"/$(get_libdir) \
+ --with-rootprefix="${EPREFIX}/" \
+ --with-rootlibexecdir="${EPREFIX}"/$(get_libdir)/elogind \
+ --enable-smack \
+ --with-cgroup-controller=openrc \
+ --disable-lto \
+ $(use_enable debug debug elogind) \
+ $(use_enable acl) \
+ $(use_enable pam) \
+ $(use_enable selinux)
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+
+ sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.conf.in > ${PN}.conf || die
+ newconfd ${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+ if [ "$(rc-config list boot | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from boot runlevel."
+ elif [ "$(rc-config list default | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from default runlevel."
+ ewarn "Please remove elogind from the default runlevel and"
+ ewarn "add it to the boot runlevel by:"
+ ewarn "# rc-update del elogind default"
+ ewarn "# rc-update add elogind boot"
+ else
+ ewarn "elogind is currently not started from any runlevel."
+ ewarn "You may add it to the boot runlevel by:"
+ ewarn "# rc-update add elogind boot"
+ fi
+ ewarn "Alternatively you can leave elogind out of any"
+ ewarn "runlevel. It will then be started automatically"
+ if use pam; then
+ ewarn "when the first service calls it via dbus, or the"
+ ewarn "first user logs into the system."
+ else
+ ewarn "when the first service calls it via dbus."
+ fi
+}
diff --git a/sys-auth/elogind/elogind-234.4.ebuild b/sys-auth/elogind/elogind-234.4.ebuild
new file mode 100644
index 000000000000..9f4a48ace408
--- /dev/null
+++ b/sys-auth/elogind/elogind-234.4.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools linux-info pam udev
+
+DESCRIPTION="The systemd project's logind, extracted to a standalone package"
+HOMEPAGE="https://github.com/elogind/elogind"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="CC0-1.0 LGPL-2.1+ public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="acl debug pam policykit selinux"
+
+RDEPEND="
+ sys-apps/util-linux
+ sys-libs/libcap
+ virtual/libudev:=
+ acl? ( sys-apps/acl )
+ pam? ( virtual/pam )
+ selinux? ( sys-libs/libselinux )
+ !sys-apps/systemd
+"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xml-dtd:4.5
+ app-text/docbook-xsl-stylesheets
+ dev-util/gperf
+ dev-util/intltool
+ sys-devel/libtool
+ virtual/pkgconfig
+"
+PDEPEND="
+ sys-apps/dbus
+ policykit? ( sys-auth/polkit )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-226.4-docs.patch" )
+
+pkg_setup() {
+ local CONFIG_CHECK="~CGROUPS ~EPOLL ~INOTIFY_USER ~SECURITY_SMACK
+ ~SIGNALFD ~TIMERFD"
+
+ if use kernel_linux; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf # Makefile.am patched by "${FILESDIR}/${P}-docs.patch"
+}
+
+src_configure() {
+ econf \
+ --with-pamlibdir=$(getpam_mod_dir) \
+ --with-udevrulesdir="$(get_udevdir)"/rules.d \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-rootlibdir="${EPREFIX}"/$(get_libdir) \
+ --with-rootprefix="${EPREFIX}/" \
+ --with-rootlibexecdir="${EPREFIX}"/$(get_libdir)/elogind \
+ --enable-smack \
+ --with-cgroup-controller=openrc \
+ --disable-lto \
+ $(use_enable debug debug elogind) \
+ $(use_enable acl) \
+ $(use_enable pam) \
+ $(use_enable selinux)
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+
+ sed -e "s/@libdir@/$(get_libdir)/" "${FILESDIR}"/${PN}.conf.in > ${PN}.conf || die
+ newconfd ${PN}.conf ${PN}
+}
+
+pkg_postinst() {
+ if [ "$(rc-config list boot | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from boot runlevel."
+ elif [ "$(rc-config list default | grep elogind)" != "" ]; then
+ ewarn "elogind is currently started from default runlevel."
+ ewarn "Please remove elogind from the default runlevel and"
+ ewarn "add it to the boot runlevel by:"
+ ewarn "# rc-update del elogind default"
+ ewarn "# rc-update add elogind boot"
+ else
+ ewarn "elogind is currently not started from any runlevel."
+ ewarn "You may add it to the boot runlevel by:"
+ ewarn "# rc-update add elogind boot"
+ fi
+ ewarn "Alternatively you can leave elogind out of any"
+ ewarn "runlevel. It will then be started automatically"
+ if use pam; then
+ ewarn "when the first service calls it via dbus, or the"
+ ewarn "first user logs into the system."
+ else
+ ewarn "when the first service calls it via dbus."
+ fi
+}
diff --git a/sys-auth/elogind/files/elogind-226.4-docs.patch b/sys-auth/elogind/files/elogind-226.4-docs.patch
new file mode 100644
index 000000000000..4161f6331253
--- /dev/null
+++ b/sys-auth/elogind/files/elogind-226.4-docs.patch
@@ -0,0 +1,15 @@
+--- a/Makefile.am 2017-02-16 13:22:56.764985896 +0100
++++ b/Makefile.am 2017-02-16 13:23:04.998986057 +0100
+@@ -194,12 +194,6 @@
+ bin_PROGRAMS =
+ rootlibexec_PROGRAMS =
+
+-dist_doc_DATA = \
+- README \
+- NEWS \
+- LICENSE.LGPL2.1 \
+- LICENSE.GPL2
+-
+ @INTLTOOL_POLICY_RULE@
+
+ # ------------------------------------------------------------------------------
diff --git a/sys-auth/elogind/files/elogind.conf b/sys-auth/elogind/files/elogind.conf
new file mode 100644
index 000000000000..73d1336aec98
--- /dev/null
+++ b/sys-auth/elogind/files/elogind.conf
@@ -0,0 +1,7 @@
+# /etc/conf.d/elogind: config file for /etc/init.d/elogind
+
+# this is the elogind executable
+ELOGIND_EXEC="/usr/libexec/elogind/elogind"
+
+# this is where elogind will store its pid file
+ELOGIND_PIDFILE="/var/run/elogind.pid"
diff --git a/sys-auth/elogind/files/elogind.conf.in b/sys-auth/elogind/files/elogind.conf.in
new file mode 100644
index 000000000000..7b05b3502794
--- /dev/null
+++ b/sys-auth/elogind/files/elogind.conf.in
@@ -0,0 +1,7 @@
+# /etc/conf.d/elogind: config file for /etc/init.d/elogind
+
+# this is the elogind executable
+ELOGIND_EXEC="/@libdir@/elogind/elogind"
+
+# this is where elogind will store its pid file
+ELOGIND_PIDFILE="/run/elogind.pid"
diff --git a/sys-auth/elogind/files/elogind.init b/sys-auth/elogind/files/elogind.init
new file mode 100644
index 000000000000..019c3afbabc5
--- /dev/null
+++ b/sys-auth/elogind/files/elogind.init
@@ -0,0 +1,25 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ need dbus
+
+ # Make sure elogind is up before xdm starts any dm
+ before xdm
+}
+
+start() {
+ ebegin "Starting elogind"
+
+ start-stop-daemon --start --quiet \
+ --pidfile "${ELOGIND_PIDFILE}" \
+ --exec "${ELOGIND_EXEC}" -- --daemon
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping elogind"
+ start-stop-daemon --stop --quiet --pidfile "${ELOGIND_PIDFILE}"
+ eend $?
+}
diff --git a/sys-auth/elogind/metadata.xml b/sys-auth/elogind/metadata.xml
new file mode 100644
index 000000000000..c28bf0a0e663
--- /dev/null
+++ b/sys-auth/elogind/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>asturm@gentoo.org</email>
+ </maintainer>
+ <maintainer type="person">
+ <email>kensington@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">elogind/elogind</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/fingerprint-gui/Manifest b/sys-auth/fingerprint-gui/Manifest
new file mode 100644
index 000000000000..93f5f988bde7
--- /dev/null
+++ b/sys-auth/fingerprint-gui/Manifest
@@ -0,0 +1,5 @@
+DIST fingerprint-gui-1.07.tar.gz 7042051 SHA256 cc2d06fd3aa96b278da3201fe51692393e3eb20002069c458c51661fb6e4f8c8 SHA512 b63bc86cbff29587a7fe164dd9344178006079f2520265ecd3d96e57bf584694246e17db780051dcacfe39dc6bd4da437b16e33d2f7cb6b474ae61dfbced6a3b WHIRLPOOL fa1eca597547b6d6c631373e47783ffcf3b30c6383ba31f198fe1d91b2174ee7caf241229c5a94d360fa0a5addb6b710a5729da59978ecd8932ae9687ba7fa0e
+EBUILD fingerprint-gui-1.07.ebuild 2748 SHA256 796abac44491252af977a0afddf4cbdc68b669db368433e67e610bbd0d49e6dc SHA512 8ca2d74d277babc139178d757bab559cd9105c6255770cf2a1410cef8142caa24a6f0fe40e1aca070d57a9713117c5fb83d0b93216df53da7a6a8cbed6d9cece WHIRLPOOL aafd9f44538b2c1d73c1e27c21f26f6f5d060ac165a15333a3180f562928171fa00826a030ca0ec11bd624c52483db8fd7e170115e4e4fa677e44fa310f637c6
+MISC ChangeLog 3416 SHA256 968ceaa84d59ac6688761004c28082a56d60056950e02cc88b5af75816238b93 SHA512 1d0381fa1bce59d0176bced40557ec374c345e8d639b7ee5cab67b7c2f97c841519e2dceae33afdeb58341c5058f78dc8d520cfcc69e1015cbee304431a37898 WHIRLPOOL 13580986225889e876f34b62334f9704e65e59aaaf78f4cdaac554b67ae1c10e335e5f75a0a0160fdcf82013cf2698f26865eb8b938cfea30cec87b655c0aee8
+MISC ChangeLog-2015 2786 SHA256 9e8391542c7493a5d22d5d79590eea31e8814cd429c1fca7af88dce71fa111b5 SHA512 65cb61e86784451c1beeb3655777f5f83ef7b68ff281564fc2657e7a56eb1805dcf1c09991ee943a8100a533654f7854fb2c6076b3bb93a5f1ec5856f654db26 WHIRLPOOL 3bdc1364fb2121878938383a265fb19a27938b18e46708d1dc27aff74f1061b77c407bca5916be4d36d29ec402137db8210996d2980f8cc1c519d80a90a26c50
+MISC metadata.xml 343 SHA256 26b9d865a9cb3d780d8dadd84dfb3d3b41ebab64f06ee0b40cae894dfe4d8223 SHA512 bb58875fd47a66a6784b088e3e2dcb07a89f61d48ff94547c4456e46f275d6c037f017632552ff4e43712b34d3fa2f8d5075e88c106f7cb6a72d317753522b7a WHIRLPOOL 63def1722bd16177cf754237289f8fa5a1df7c0ffd89b6dfc8f39f5cbaf8a8ee0ae8485269b3a690b3347de686489286d22367f08337ebc537274a580506b16d
diff --git a/sys-auth/fingerprint-gui/fingerprint-gui-1.07.ebuild b/sys-auth/fingerprint-gui/fingerprint-gui-1.07.ebuild
new file mode 100644
index 000000000000..0621697ec37a
--- /dev/null
+++ b/sys-auth/fingerprint-gui/fingerprint-gui-1.07.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils multilib qt4-r2 readme.gentoo udev user
+
+DESCRIPTION="Use Fingerprint Devices with Linux"
+HOMEPAGE="http://www.n-view.net/Appliance/fingerprint/"
+HOMEPAGE="http://www.ullrich-online.cc/fingerprint/"
+SRC_URI="http://www.ullrich-online.cc/${PN%-gui}/download/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+upekbsapi"
+
+DEPEND="app-crypt/qca:2[qt4(+),ssl]
+ sys-auth/libfprint
+ sys-auth/polkit-qt[qt4]
+ sys-libs/pam
+ x11-libs/libfakekey
+ dev-qt/qtcore:4
+ !sys-auth/thinkfinger"
+RDEPEND="${DEPEND}"
+
+QA_SONAME="/usr/lib/libbsapi.so.* /usr/lib64/libbsapi.so.*"
+QA_PRESTRIPPED="/usr/lib/libbsapi.so.* /usr/lib64/libbsapi.so.*"
+QA_FLAGS_IGNORED="/usr/lib/libbsapi.so.* /usr/lib64/libbsapi.so.*"
+
+src_prepare() {
+ sed -e '/Icon=/s:=.*:=Fingerprint:' \
+ -i bin/${PN}/${PN}.desktop || die
+ sed -e "s:/etc/udev/rules.d:\"$(get_udevdir)\"/rules.d:g" \
+ -i bin/${PN%-gui}-helper/${PN%-gui}-helper.pro || die
+ sed -e 's:GROUP="plugdev":GROUP="fingerprint":' \
+ -i bin/fingerprint-helper/92-fingerprint-gui-uinput.rules \
+ -i upek/91-fingerprint-gui-upek.rules || die
+}
+
+src_configure() {
+ eqmake4 \
+ PREFIX="${EROOT}"usr \
+ LIB="$(get_libdir)" \
+ LIBEXEC=libexec \
+ LIBPOLKIT_QT=LIBPOLKIT_QT_1_1
+}
+
+src_install() {
+ export INSTALL_ROOT="${D}" #submakes need it as well, re-install fails otherwise.
+ emake -j1 install
+ rm -r "${ED}"/usr/share/doc/${PN} || die
+ if use upekbsapi ; then
+ use amd64 && dolib.so upek/lib64/libbsapi.so*
+ use x86 && dolib.so upek/lib/libbsapi.so*
+ udev_dorules upek/91-fingerprint-gui-upek.rules
+ insinto /etc
+ doins upek/upek.cfg
+ #dodir /var/upek_data
+ #fowners root:plugdev /var/upek_data
+ #fperms 0775 /var/upek_data
+ fi
+ doicon src/res/Fingerprint.png
+
+ dodoc CHANGELOG README
+ dohtml doc/*
+
+ readme.gentoo_src_install
+}
+
+pkg_preinst() {
+ enewgroup fingerprint
+}
+
+pkg_postinst() {
+ einfo "Fixing permisisons of fingerprints..."
+ find "${EROOT}"/var/lib/fingerprint-gui -exec chown root:root {} + || die "chown root:root failed"
+ find "${EROOR}"/var/lib/fingerprint-gui -type d -exec chmod 755 {} + || die "chmod 755 failed"
+ find "${EROOT}"/var/lib/fingerprint-gui -type f -exec chmod 600 {} + || die "chmod 600 failed"
+
+ readme.gentoo_pkg_postinst
+}
+
+FORCE_PRINT_ELOG=1
+DISABLE_AUTOFORMATTING=1
+DOC_CONTENTS="Please take a thorough look a the Install-step-by-step.html
+in /usr/share/doc/${PF} for integration with pam/polkit/...
+Hint: You may want
+ auth sufficient pam_fingerprint-gui.so
+in /etc/pam.d/system-auth
+
+There are udev rules to enforce group fingerprint on the reader device
+Please put yourself in that group and re-trigger the udev rules."
diff --git a/sys-auth/fingerprint-gui/metadata.xml b/sys-auth/fingerprint-gui/metadata.xml
new file mode 100644
index 000000000000..e5fd1a621811
--- /dev/null
+++ b/sys-auth/fingerprint-gui/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+<email>xmw@gentoo.org</email>
+<name>Michael Weber</name>
+</maintainer>
+<use>
+ <flag name="upekbsapi">Add UPEK BSAPI drivers for identify functions on some readers</flag>
+</use>
+</pkgmetadata>
diff --git a/sys-auth/fprint_demo/Manifest b/sys-auth/fprint_demo/Manifest
new file mode 100644
index 000000000000..2412b9960485
--- /dev/null
+++ b/sys-auth/fprint_demo/Manifest
@@ -0,0 +1,5 @@
+DIST fprint_demo-0.4.tar.bz2 75986 SHA256 f071c0f3ae37365803c074fb5a544fb8cfa9fdd4ca9be9efe0488889ccb41267 SHA512 6f995c09520ec8cf35ff407db56ea65091dc3d78ab47dba3d0ad500de3c644b64cf378a69f2b2701bb32ce75e3eef98d8fa56a8f0ce188d842e3a8dd52f01a66 WHIRLPOOL eec82682be1f30d291b59bfc0883033012fd545539612cf77cfbeea4d1e1c243a1d7603cd3d9fece3c15570ba7a986ea37c72f39afed032cc479e3e56e26e131
+EBUILD fprint_demo-0.4.ebuild 537 SHA256 c03dd9a9ae58e31f50bd9ecca1ecde5e9e4838895271e08ba42e94d89c5eb50a SHA512 b8796182424815ffb8efe4496dc7ad59af33356cda60cf5a6370d359b3dfdf4b846667e5e64d3df38a7a1b96339d26caecbba398bb30af20ce1e776482981b91 WHIRLPOOL 8011b28e75933835d6fb76c06a1b090f7c0985a77f3f0280ee4b36f409cef6521d83f0e31cb756bc0aa3866f3f7380d547f0ca7893b5eca364a85b6f5b65a63d
+MISC ChangeLog 2184 SHA256 cfe08db4eb6139fca7d3b938b98edcf49725e841b3262aa8d434f934211e19e9 SHA512 ee7ff2469956c4d0c2b37b002704a120a3f1afadf7be3c287f951e20cee50c836d553f1a785333dec3a94d9e823f124723932d07a008d53919aa0f7877b5f35e WHIRLPOOL a044c5cdc627993dabe86e4d9c1a8263c7001f7b511f89bda92c3c43599240d3469d3358ffa66dd8ce6a81b1613bd5f3bde559565ea97e30dfcff1f240c4121e
+MISC ChangeLog-2015 499 SHA256 6a6e2a87551691a71b7e9fd125ad121a0c0e6efd6d7b62fbd65007fc4640ddb0 SHA512 34ecdf8e5de45e1a8398c08773b4beb4f402282cf0fdaf8bf6ac2f8c54da4a1c3611e4ca9dc3df37d1434b81997fe0887d8af76856a28d27c5272daa352068ac WHIRLPOOL d2d0804d10415e0b4f66a47f625b67235cde8d0eae46696c0169b20e94e32be96ef180111dab99a4b38f57a89d08f95e96429fa1e83d8715cc25382155fb4ef1
+MISC metadata.xml 325 SHA256 6db056f553b6b92d65dc829bbbd85439166b16cf52e154330babff7592d03587 SHA512 37fbe28a1504d7678de67cee0b2709aee48c0bb2d19c36f6e7020346335cb0e1c669ab504b2bab537a18d98c84cb293cda8f60fa78de462975938b71326d6198 WHIRLPOOL 7989d8b5aa724bd696cabb2dd9638fc72e143f62c4dfdb471660350eb369777f40b2501b109003ddfc1d82b8ffe985a8e6a811d0c5d250866ecbdad6b3674702
diff --git a/sys-auth/fprint_demo/fprint_demo-0.4.ebuild b/sys-auth/fprint_demo/fprint_demo-0.4.ebuild
new file mode 100644
index 000000000000..88da0e2f3cbb
--- /dev/null
+++ b/sys-auth/fprint_demo/fprint_demo-0.4.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=3
+
+DESCRIPTION="a simple GTK+ application to demonstrate and test libfprint's capabilities"
+HOMEPAGE="http://www.reactivated.net/fprint/wiki/Fprint_demo"
+SRC_URI="mirror://sourceforge/fprint/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+RDEPEND="sys-auth/libfprint
+ x11-libs/gtk+:2"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+ dodoc AUTHORS ChangeLog NEWS README || die
+}
diff --git a/sys-auth/fprint_demo/metadata.xml b/sys-auth/fprint_demo/metadata.xml
new file mode 100644
index 000000000000..ac0d76154a78
--- /dev/null
+++ b/sys-auth/fprint_demo/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xmw@gentoo.org</email>
+ <name>Michael Weber (xmw)</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">fprint</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/fprintd/Manifest b/sys-auth/fprintd/Manifest
new file mode 100644
index 000000000000..070d4d6ddf57
--- /dev/null
+++ b/sys-auth/fprintd/Manifest
@@ -0,0 +1,13 @@
+DIST fprintd-0.2.0.tar.bz2 43884 SHA256 09864811fcce81980b10135cfaed3a55366f8f5c1f321febc177391862d82dcf SHA512 6464d5e206ab92a3579f93a6e63345d3930d13e701bcc305a61938b68dee1b9473ad605cf2f88fafb87489094e588c7527b4e18be5784dd0fdb131ad754b7599 WHIRLPOOL dbbc6a4b5430f09e5a87f3383ea9eb48b8d695e4c020d0055a424a2a4d9f677524ea6c2072ea73ef28f3248ecded6287e74b192de09b90743a6cfd3ec7658010
+DIST fprintd-0.4.1.tar.bz2 56901 SHA256 2209b736c9a5022f93d949782b6a61c359e03ed89e9e867791ccbe4df29bdc97 SHA512 c1269ee2ad92176b987001177f529ddf3715c723a454e79f8909ea6c3d52325580800db64296fa25e274760a9813ff70b9b64b82f96c321b3a1eb686062da2f9 WHIRLPOOL a38332adeb950b857f9a3f27df35a8b636bb9eb2b9f23d8e8e43c580790ccece2c96fb4a91f264482b5eec80efd62da9d9a4961abdfa1e0f17e57d74168674ff
+DIST fprintd-0.5.0.tar.bz2 66981 SHA256 3ca6f8f72c4d0786465389656af429c6d3a35a7dd25e8aa6018f51da3b43ebcb SHA512 d77adb92e6913c8822e2c866ed632f5d1429c93e8e7c4c7d51d23385f6afb0c6048ff72c9cb885d7581e8d1e461f708af06ca6e6f98e177c98834289a76341de WHIRLPOOL 1e85aea4d008974a7cde65304e332ce16a46793c0f97c72376cd41b67abd098aac1415cfe6fa80cad5b53bf00f3ef3ea264e77e306ed92953037bd83979eee72
+DIST fprintd-0.5.1.tar.bz2 67286 SHA256 6c78eebbf1bc969801c1932863f0cefa44e69a4f25dd946056eaba04406af51c SHA512 3c57f4723157b0ea628ded83ec1034818059811d984f21a2ad9262ec03343adcb50ff8f7982fd0b35564bfd9c5bd55ebcee2416353d5f0b5817b376faa43d05d WHIRLPOOL 57cd33eeb375a47fa42d7d44fc56b9a7503a274a8d031528c886d7cd3039d400e26f03ff8fa49b80d9672bb2207fb1ba0a907124eebc877195480c7ef418a493
+DIST fprintd-0.6.0.tar.bz2 67589 SHA256 9ab5e7f9262e7e87bc53f78cd8216b0f43e32599ccb0378bfc1772dadbb8ba2b SHA512 65e0af9e46b2f4e836c54cd1df2deba33d12228c4997fc5bb44b03ccd38c01fc01a48451faba821a8490ff7715721d8697e1e97a93bab5041b4938b5247c39ba WHIRLPOOL a4f325895d9c8a37c3377c60cf6546d43dbab5c09ff98088ec17452b69fe4962a81bc2fd0add73eb893bb82769cfd24845c4871514c8fb038cd1812bebb645d1
+EBUILD fprintd-0.2.0-r1.ebuild 1654 SHA256 852312d6ccfd5f1a3f9d49a126f17e5fa19ffebac87ae32e7538d7d265c7a23e SHA512 e854f78953e37f67ddd3abfb70ffab0e5e2e528c6b81bda36bd8d5a8deabf71ae7cea00d2e1922c2f6ea5001ae8eb540104c2f72de53dc90ff1b81123044866f WHIRLPOOL b73278cf6b7682e7af3fee4e0c19f0d5be135c8717b665d8db5d518d6b14db1ee78443d7a9452649a6244b8447dde14efcf85628899640440ac409eed4e78f6b
+EBUILD fprintd-0.4.1.ebuild 1704 SHA256 a72c17cb9b89321649c8a40e6515c8c58024c6699cd51eb27ef3067705224e53 SHA512 204da7f477ab342cb9797f905d847ce175147852e8ffb09234b8a95ec350d52afed4c4ced86666509a4cc697779a57a6deb0ee8da20f4647b8bc11c4ef2bb072 WHIRLPOOL 3cd194fe21b6e4c363550ed46ace3d23000e4a4c130c7e76c728517add9b75bd8581eef8e8b0b9469e7b24c1860ec614ba3ec19bfe368b92b2dbe01e0d6d4aeb
+EBUILD fprintd-0.5.0.ebuild 1509 SHA256 f844cd8475b9059d0d1ead30243149ce169cee9da2e101aad61a9d4e30318ffb SHA512 06380a416b30de228675312d39bdca884476dde70777e01ba14bb316f9652b40997bf00a4bb2e14d46fbd11427e1f09e32eae5b39c10dae025e4cb9cc27b656f WHIRLPOOL c9792798854f797e196e04cf8981ad08925e00864f06069d67eba8fca8c34e137d793360c7536156e935f415819e4a1fdc4d870df13111858f815b13ab4c0e16
+EBUILD fprintd-0.5.1.ebuild 1517 SHA256 6e6b8bccb7cca130cbef1c6e5fcb53c78422c2a482101a2556bdba0c2f32fa4f SHA512 dfd586a5195cef1f958524194aa44bb6710584dd220800bdba32656d7dc263046b9b38a73f648b32e455d4daa9c03a0f7d9278d26419e4213e15d883c069dc27 WHIRLPOOL fcae637f82ddd46a5d28e7a77789570280cdbc916c441f4baaf110b38b7adfeecfacf3544da16e5e803a62e16bec03e0e2d1e10c04d72e49e7f5332b8886bf1a
+EBUILD fprintd-0.6.0.ebuild 1517 SHA256 4682e9ec0f52f8958f405a9a20afe6069e009f980396c005ca05735b253d244a SHA512 278a8e6c01a32ffe906b3ee4a89ee579f2ee3b2ab914358bc434fab8f35883e0cd9310b9618add7d58f5b6719e82def1e9edf15e287d88a2c1a81cbf389b299c WHIRLPOOL 62a128537c711f93f589ea07833bcaa90b77bda3cc2f6341f9ce64e9f572e90e1854304d9454ea382c3c15e04d7e7b92b261ae8bb29d0442865b2a6fd8ba53e4
+MISC ChangeLog 3562 SHA256 45e3e228de14d59bc1301275fd4cdba8a19d4e4f016d9c3072e4104a7269e253 SHA512 093d24bbf1b4a447c04887ee562b7df1b75e336acb6254584be186d682f7419c9582fcdc297e84ebf2bc4e9af45bd33ad907fe15ad87b2c1485e3228b7815f59 WHIRLPOOL ff58600d3eeffa04ab13debe98defa6b07e7030118150233a9a0a6015909d0e48ca4e8b2dd0f000fe08d479ca9957019a04eb73398132fce384a7ddf420c85f8
+MISC ChangeLog-2015 2657 SHA256 fa17fc9032ec95a95a059931255e797c5492c56cafcc8cd98c1966ebb2bbb8ab SHA512 6d1fb88757cc5e25d3b5d5a1a2f9eae4dd527c5580e1b5a4005b528c1776bcf8325d7c2550192b5fa16d048b9cd7cd40c84184dea30b654ddb4a5a9aac10457e WHIRLPOOL b276c9c793431be408dbca8188ba7bb1b1037dda9cfae412aac01e836258a5bbdc790180de650c71f086d94b8f443e3aa892a65c6badd34326a8beea0ad303a0
+MISC metadata.xml 237 SHA256 ffb571839c57797d282263369646d2bba2662601a45f7bb3251bb97f716554a6 SHA512 ae2360aa6b1b00c67e0acea4935c02b64585b9a15e126fec9d5d99637021c542c0a495e5116205f3da287def46fa5b19cb1a7f3042c12c5f7a78d66d92fcb03f WHIRLPOOL 60d6da846c983457e038ea5ba3c0bf48f939c9586610985a14cac9772fd1d45d781a643abc16482f232f3028e44fe99fe1a382deaebf6589602fc244a4460e3f
diff --git a/sys-auth/fprintd/fprintd-0.2.0-r1.ebuild b/sys-auth/fprintd/fprintd-0.2.0-r1.ebuild
new file mode 100644
index 000000000000..d0125b3ff4c8
--- /dev/null
+++ b/sys-auth/fprintd/fprintd-0.2.0-r1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit autotools toolchain-funcs versionator
+
+DESCRIPTION="D-Bus service to access fingerprint readers"
+HOMEPAGE="https://cgit.freedesktop.org/libfprint/fprintd/"
+MY_PV="V_$(replace_all_version_separators _)"
+SRC_URI="https://cgit.freedesktop.org/libfprint/${PN}/snapshot/${MY_PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc pam static-libs"
+
+RDEPEND="dev-libs/dbus-glib
+ dev-libs/glib:2
+ sys-auth/libfprint
+ sys-auth/polkit
+ pam? ( sys-libs/pam )"
+DEPEND="${RDEPEND}
+ dev-util/gtk-doc
+ dev-util/gtk-doc-am
+ dev-util/intltool
+ doc? ( dev-libs/libxml2 dev-libs/libxslt )"
+
+S=${WORKDIR}/${MY_PV}
+
+src_prepare() {
+ cp /usr/share/gtk-doc/data/gtk-doc.make . || die
+ sed -e '/SUBDIRS/s: po::' -i Makefile.am || die
+ eautoreconf
+ intltoolize || die
+}
+
+src_configure() {
+ econf $(use_enable pam) \
+ $(use_enable static-libs static) \
+ $(use_enable doc gtk-doc-html)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install \
+ pammoddir=/$(get_libdir)/security
+
+ keepdir /var/lib/fprint
+
+ find "${D}" -name "*.la" -delete || die
+
+ dodoc AUTHORS ChangeLog NEWS README TODO
+ if use doc ; then
+ insinto /usr/share/doc/${PF}/html
+ doins doc/{fprintd-docs,version}.xml
+ insinto /usr/share/doc/${PF}/html/dbus
+ doins doc/dbus/net.reactivated.Fprint.{Device,Manager}.ref.xml
+ fi
+}
+
+pkg_postinst() {
+ elog "Please take a look at the upstream documentation for integration"
+ elog "Example: add following line to your /etc/pam.d/system-local-login"
+ einfo
+ elog " auth sufficient pam_fprintd.so"
+ einfo
+}
diff --git a/sys-auth/fprintd/fprintd-0.4.1.ebuild b/sys-auth/fprintd/fprintd-0.4.1.ebuild
new file mode 100644
index 000000000000..d97c92de4857
--- /dev/null
+++ b/sys-auth/fprintd/fprintd-0.4.1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit autotools toolchain-funcs versionator
+
+DESCRIPTION="D-Bus service to access fingerprint readers"
+HOMEPAGE="https://cgit.freedesktop.org/libfprint/fprintd/"
+MY_PV="V_$(replace_all_version_separators _)"
+SRC_URI="https://cgit.freedesktop.org/libfprint/${PN}/snapshot/${MY_PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="doc pam static-libs"
+
+RDEPEND="dev-libs/dbus-glib
+ dev-libs/glib:2
+ sys-auth/libfprint
+ sys-auth/polkit
+ pam? ( sys-libs/pam )"
+DEPEND="${RDEPEND}
+ dev-util/gtk-doc
+ dev-util/gtk-doc-am
+ dev-util/intltool
+ doc? ( dev-libs/libxml2 dev-libs/libxslt )"
+
+S=${WORKDIR}/${MY_PV}
+
+src_prepare() {
+ cp /usr/share/gtk-doc/data/gtk-doc.make . || die
+ sed -e '/SUBDIRS/s: po::' -i Makefile.am || die
+ eautoreconf
+ intltoolize || die
+}
+
+src_configure() {
+ econf $(use_enable pam) \
+ $(use_enable static-libs static) \
+ $(use_enable doc gtk-doc-html)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install \
+ pammoddir=/$(get_libdir)/security
+
+ keepdir /var/lib/fprint
+
+ find "${D}" -name "*.la" -delete || die
+
+ dodoc AUTHORS ChangeLog NEWS README{,.transifex} TODO
+ if use doc ; then
+ insinto /usr/share/doc/${PF}/html
+ doins doc/{fprintd-docs,version}.xml
+ insinto /usr/share/doc/${PF}/html/dbus
+ doins doc/dbus/net.reactivated.Fprint.{Device,Manager}.ref.xml
+ fi
+}
+
+pkg_postinst() {
+ elog "Please take a look at the upstream documentation for integration"
+ elog "Example: add following line to your /etc/pam.d/system-local-login"
+ einfo
+ elog " auth sufficient pam_fprintd.so"
+ einfo
+}
diff --git a/sys-auth/fprintd/fprintd-0.5.0.ebuild b/sys-auth/fprintd/fprintd-0.5.0.ebuild
new file mode 100644
index 000000000000..5528049ba143
--- /dev/null
+++ b/sys-auth/fprintd/fprintd-0.5.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit autotools pam systemd versionator
+
+DESCRIPTION="D-Bus service to access fingerprint readers"
+HOMEPAGE="https://cgit.freedesktop.org/libfprint/fprintd/"
+MY_PV="V_$(replace_all_version_separators _)"
+SRC_URI="https://cgit.freedesktop.org/libfprint/${PN}/snapshot/${MY_PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ia64 ppc ppc64 sparc x86"
+IUSE="doc pam static-libs"
+
+RDEPEND="dev-libs/dbus-glib
+ dev-libs/glib:2
+ sys-auth/libfprint
+ sys-auth/polkit
+ pam? ( sys-libs/pam )"
+DEPEND="${RDEPEND}
+ dev-util/gtk-doc
+ dev-util/gtk-doc-am
+ dev-util/intltool
+ doc? ( dev-libs/libxml2 dev-libs/libxslt )"
+
+S=${WORKDIR}/${MY_PV}
+
+src_prepare() {
+ eautoreconf
+}
+
+src_configure() {
+ econf --disable-silent-rules \
+ $(use_enable pam) \
+ $(use_enable static-libs static) \
+ $(use_enable doc gtk-doc-html) \
+ $(systemd_with_unitdir)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install \
+ pammoddir=$(getpam_mod_dir)
+
+ keepdir /var/lib/fprint
+
+ find "${D}" -name "*.la" -delete || die
+
+ dodoc AUTHORS NEWS README{,.transifex} TODO
+ newdoc pam/README README.pam_fprintd
+ if use doc ; then
+ insinto /usr/share/doc/${PF}/html
+ doins doc/{fprintd-docs,version}.xml
+ insinto /usr/share/doc/${PF}/html/dbus
+ doins doc/dbus/net.reactivated.Fprint.{Device,Manager}.ref.xml
+ fi
+}
+
+pkg_postinst() {
+ elog "Please take a look at README.pam_fprintd for integration docs."
+}
diff --git a/sys-auth/fprintd/fprintd-0.5.1.ebuild b/sys-auth/fprintd/fprintd-0.5.1.ebuild
new file mode 100644
index 000000000000..1834d4f332b4
--- /dev/null
+++ b/sys-auth/fprintd/fprintd-0.5.1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit autotools pam systemd versionator
+
+DESCRIPTION="D-Bus service to access fingerprint readers"
+HOMEPAGE="https://cgit.freedesktop.org/libfprint/fprintd/"
+MY_PV="V_$(replace_all_version_separators _)"
+SRC_URI="https://cgit.freedesktop.org/libfprint/${PN}/snapshot/${MY_PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="doc pam static-libs"
+
+RDEPEND="dev-libs/dbus-glib
+ dev-libs/glib:2
+ sys-auth/libfprint
+ sys-auth/polkit
+ pam? ( sys-libs/pam )"
+DEPEND="${RDEPEND}
+ dev-util/gtk-doc
+ dev-util/gtk-doc-am
+ dev-util/intltool
+ doc? ( dev-libs/libxml2 dev-libs/libxslt )"
+
+S=${WORKDIR}/${MY_PV}
+
+src_prepare() {
+ eautoreconf
+}
+
+src_configure() {
+ econf --disable-silent-rules \
+ $(use_enable pam) \
+ $(use_enable static-libs static) \
+ $(use_enable doc gtk-doc-html) \
+ $(systemd_with_unitdir)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install \
+ pammoddir=$(getpam_mod_dir)
+
+ keepdir /var/lib/fprint
+
+ find "${D}" -name "*.la" -delete || die
+
+ dodoc AUTHORS NEWS README{,.transifex} TODO
+ newdoc pam/README README.pam_fprintd
+ if use doc ; then
+ insinto /usr/share/doc/${PF}/html
+ doins doc/{fprintd-docs,version}.xml
+ insinto /usr/share/doc/${PF}/html/dbus
+ doins doc/dbus/net.reactivated.Fprint.{Device,Manager}.ref.xml
+ fi
+}
+
+pkg_postinst() {
+ elog "Please take a look at README.pam_fprintd for integration docs."
+}
diff --git a/sys-auth/fprintd/fprintd-0.6.0.ebuild b/sys-auth/fprintd/fprintd-0.6.0.ebuild
new file mode 100644
index 000000000000..23d5ec0bc453
--- /dev/null
+++ b/sys-auth/fprintd/fprintd-0.6.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit autotools pam systemd versionator
+
+DESCRIPTION="D-Bus service to access fingerprint readers"
+HOMEPAGE="https://cgit.freedesktop.org/libfprint/fprintd/"
+MY_PV="V_$(replace_all_version_separators _)"
+SRC_URI="https://cgit.freedesktop.org/libfprint/${PN}/snapshot/${MY_PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="doc pam static-libs"
+
+RDEPEND="dev-libs/dbus-glib
+ dev-libs/glib:2
+ sys-auth/libfprint
+ sys-auth/polkit
+ pam? ( sys-libs/pam )"
+DEPEND="${RDEPEND}
+ dev-util/gtk-doc
+ dev-util/gtk-doc-am
+ dev-util/intltool
+ doc? ( dev-libs/libxml2 dev-libs/libxslt )"
+
+S=${WORKDIR}/${MY_PV}
+
+src_prepare() {
+ eautoreconf
+}
+
+src_configure() {
+ econf --disable-silent-rules \
+ $(use_enable pam) \
+ $(use_enable static-libs static) \
+ $(use_enable doc gtk-doc-html) \
+ $(systemd_with_unitdir)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install \
+ pammoddir=$(getpam_mod_dir)
+
+ keepdir /var/lib/fprint
+
+ find "${D}" -name "*.la" -delete || die
+
+ dodoc AUTHORS NEWS README{,.transifex} TODO
+ newdoc pam/README README.pam_fprintd
+ if use doc ; then
+ insinto /usr/share/doc/${PF}/html
+ doins doc/{fprintd-docs,version}.xml
+ insinto /usr/share/doc/${PF}/html/dbus
+ doins doc/dbus/net.reactivated.Fprint.{Device,Manager}.ref.xml
+ fi
+}
+
+pkg_postinst() {
+ elog "Please take a look at README.pam_fprintd for integration docs."
+}
diff --git a/sys-auth/fprintd/metadata.xml b/sys-auth/fprintd/metadata.xml
new file mode 100644
index 000000000000..a535b8852829
--- /dev/null
+++ b/sys-auth/fprintd/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+<email>xmw@gentoo.org</email>
+<name>Michael Weber</name>
+</maintainer>
+</pkgmetadata>
diff --git a/sys-auth/google-authenticator/Manifest b/sys-auth/google-authenticator/Manifest
new file mode 100644
index 000000000000..b0828b6e574a
--- /dev/null
+++ b/sys-auth/google-authenticator/Manifest
@@ -0,0 +1,7 @@
+DIST google-authenticator-1.01_pre20160307231538.tar.xz 255316 SHA256 41bdc47278903bc33e87c8b4da6f9fe5b526a2f780790d4f83bb67634f3f53b0 SHA512 cee3898b7afec54079968ff0690f076b78512b0b2c982ef5bedb2d6c5850b103c80191caa4b172069a83eb4d15ea4fce5b3f5eefdb36aa0426d985ba29736108 WHIRLPOOL 90e6439c632ccf4c791d988304b2e1cb7753f03ec03678b7f83946bdefc2bf1ca6d81538c484bc73561060fc7a7d80518845e13c49f6b5d943233e0123b2a1c8
+DIST google-authenticator-1.04.tar.gz 54019 SHA256 8284cc046be436513d9d4bbb1285017327edbcc32f6f620c47e7e889c4b966ef SHA512 e4b8ad74301312e17edd0a7f25257086fd805c8d5215b06b71d96e9a64a71b2c87d0c5a532d9eca21d6d67e30c02c2c2c77dbd338a2f49af25c32dcd355ee98e WHIRLPOOL a170c155125c6ee51b9aac346a36fe1ed7efac9d215251cb2c14fb462e3e03643cfdc85aa393e491223f1050dc514356ce8199dece327c45368481131b9b1de7
+EBUILD google-authenticator-1.01_pre20160307231538.ebuild 1617 SHA256 dfb38d62b5c98ef4775076b84ee5a21fa074d05da2d9cf8ecbbfa3fa6ea9599a SHA512 4984699bc0549b8708fb0592aef47c71f92fd57d76e188b09761234f5d06fa70d398b75b229b305922a1e861cc1c074bda6e3ec459aa87d0ee5a9c0a8a987dbc WHIRLPOOL b4e17895b33f38a1c20a63b6d62766774e8c12ef4c07945d269680982d1f70b9ea9c297b23eecae67c81b73720cb97ab4365f297ed5dc9360d3d53b818b6c5d7
+EBUILD google-authenticator-1.04-r1.ebuild 1256 SHA256 35de786c08053e15c5cb9711b8dad89240a70b1b7ad0903bae3173c352f204de SHA512 4d05c0f31011bf8899554bf6de92d2d621c3528d73072d8904387c2ab3662506a5d39b5ae812bdd5b30103e512707d382ff58044d0b72d0776eaa74f74cf9e88 WHIRLPOOL 79a50f9c3fade6df2f871efac49bf21064437213ab238eb72b7a68100e849360c8b97cf6529fbe64ceef42dc67c17e8f573510759adeede9413624984f82ca34
+EBUILD google-authenticator-9999.ebuild 1256 SHA256 35de786c08053e15c5cb9711b8dad89240a70b1b7ad0903bae3173c352f204de SHA512 4d05c0f31011bf8899554bf6de92d2d621c3528d73072d8904387c2ab3662506a5d39b5ae812bdd5b30103e512707d382ff58044d0b72d0776eaa74f74cf9e88 WHIRLPOOL 79a50f9c3fade6df2f871efac49bf21064437213ab238eb72b7a68100e849360c8b97cf6529fbe64ceef42dc67c17e8f573510759adeede9413624984f82ca34
+MISC ChangeLog 664 SHA256 a49b010fb0aef0bd4f53083cdd706b6c58f6d3b87ffc6d14db93a4a54056aad9 SHA512 fcde22a8780b93cb89e42c07cf6f0debf34bd00769cca344f50003746ce572d3f3ac375b40f468cfdf824c6d2d16d9bee8bbec1af3d48db0f7a2f2fe9479636b WHIRLPOOL c56fc5dae695fbbb3099ac3531d600c5f8b4d9ff78af38376b26741ff7b2a64f71414082f93bc40755478293a7fbd0ccb6ae923979f5050383203479b09faa85
+MISC metadata.xml 310 SHA256 a2f13b1fe120d4b480a89a4b7d4e7b9d54242aef37da78cbd615883b8775877c SHA512 55d91f98465042610e3c75af91d53a6ddf7e30755652546c7d4c9cb4aa324fd83f272d304cfdeceea6fa8e0642cd80fdb16a15810bbc29a809d0da04f013a281 WHIRLPOOL c08ed891de937e46d463e43bd1d822a42755db0211641c2fe25aa666a3df33ddece215969ce5f6a6c0cb368a53b49037d8890a50392033f2a8e0dadb79176ba5
diff --git a/sys-auth/google-authenticator/google-authenticator-1.01_pre20160307231538.ebuild b/sys-auth/google-authenticator/google-authenticator-1.01_pre20160307231538.ebuild
new file mode 100644
index 000000000000..b637ffb38586
--- /dev/null
+++ b/sys-auth/google-authenticator/google-authenticator-1.01_pre20160307231538.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit multilib
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://github.com/google/${PN}.git"
+ inherit git-r3 autotools
+ S="${WORKDIR}/${P}/libpam"
+else
+ MY_P=${P%_pre*}
+ SRC_URI="mirror://gentoo/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="PAM Module for two step verification via mobile platform"
+HOMEPAGE="https://github.com/google/google-authenticator"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+DEPEND="virtual/pam"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ if [[ ${PV} == "9999" ]] ; then
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ # We might want to use getpam_mod_dir from pam eclass,
+ # but the build already appends "/security" for us.
+ econf \
+ --docdir="\$(datarootdir)/doc/${PF}" \
+ --htmldir='$(docdir)/html' \
+ --libdir="/$(get_libdir)"
+}
+
+src_compile() {
+ default
+
+ if [[ ${PV} == "9999" ]] ; then
+ local stamp=$(date --date="$(git log -n1 --pretty=format:%ci master)" -u "+%Y%m%d%H%M%S")
+ emake dist
+
+ local otar=$(echo ${PN}-*.tar.gz)
+ local ntar="${otar%.tar.gz}_pre${stamp}.tar.xz"
+ zcat "${otar}" | xz > "${ntar}"
+ fi
+}
+
+src_install() {
+ default
+ # Punt the pam module libtool archive.
+ find "${ED}" -name '*.la' -delete
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "For further information see"
+ elog "https://wiki.gentoo.org/wiki/Google_Authenticator"
+ elog ""
+ elog "If you want support for QR-Codes, install media-gfx/qrencode."
+ fi
+}
diff --git a/sys-auth/google-authenticator/google-authenticator-1.04-r1.ebuild b/sys-auth/google-authenticator/google-authenticator-1.04-r1.ebuild
new file mode 100644
index 000000000000..2d682decb665
--- /dev/null
+++ b/sys-auth/google-authenticator/google-authenticator-1.04-r1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit autotools multilib
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/google/google-authenticator-libpam.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/google/google-authenticator-libpam/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+ S="${WORKDIR}/google-authenticator-libpam-${PV}"
+fi
+
+DESCRIPTION="PAM Module for two step verification via mobile platform"
+HOMEPAGE="https://github.com/google/google-authenticator-libpam"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+DEPEND="virtual/pam"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # We might want to use getpam_mod_dir from pam eclass,
+ # but the build already appends "/security" for us.
+ econf --libdir="/$(get_libdir)"
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "For further information see"
+ elog "https://wiki.gentoo.org/wiki/Google_Authenticator"
+ elog ""
+ elog "If you want support for QR-Codes, install media-gfx/qrencode."
+ fi
+}
diff --git a/sys-auth/google-authenticator/google-authenticator-9999.ebuild b/sys-auth/google-authenticator/google-authenticator-9999.ebuild
new file mode 100644
index 000000000000..2d682decb665
--- /dev/null
+++ b/sys-auth/google-authenticator/google-authenticator-9999.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit autotools multilib
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/google/google-authenticator-libpam.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/google/google-authenticator-libpam/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+ S="${WORKDIR}/google-authenticator-libpam-${PV}"
+fi
+
+DESCRIPTION="PAM Module for two step verification via mobile platform"
+HOMEPAGE="https://github.com/google/google-authenticator-libpam"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+DEPEND="virtual/pam"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # We might want to use getpam_mod_dir from pam eclass,
+ # but the build already appends "/security" for us.
+ econf --libdir="/$(get_libdir)"
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "For further information see"
+ elog "https://wiki.gentoo.org/wiki/Google_Authenticator"
+ elog ""
+ elog "If you want support for QR-Codes, install media-gfx/qrencode."
+ fi
+}
diff --git a/sys-auth/google-authenticator/metadata.xml b/sys-auth/google-authenticator/metadata.xml
new file mode 100644
index 000000000000..5af27d4b6cf6
--- /dev/null
+++ b/sys-auth/google-authenticator/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>vapier@gentoo.org</email>
+</maintainer>
+<upstream>
+ <remote-id type="github">google/google-authenticator-libpam</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/sys-auth/icmpdn/Manifest b/sys-auth/icmpdn/Manifest
new file mode 100644
index 000000000000..770edfadc8dc
--- /dev/null
+++ b/sys-auth/icmpdn/Manifest
@@ -0,0 +1,7 @@
+AUX conf.d-icmpdnd 472 SHA256 5bbd861ff740dd3c69a02a0ad2a1694979dab02a1d14e88c3cd91047167da03c SHA512 3318dbc6bb808c20088a1e83214a3b7d34486d367fabf243917da8e174dae39741115016c8fd5ee874191d7f5e3dc3cf2e0e9711df3b9d3862dd9f9d3f22ab4f WHIRLPOOL 03dec175741e904f87f1b37e8e8d5ea65a1d22ce653a9a06ad9a7e2b019ec583cee3cd2ba910e304e7a8e7484e9528547a6a7e0d117d39d72972c318b49d7cbe
+AUX init.d-icmpdnd 568 SHA256 06cbc61d2cdbca9f78c9ec4831eaab4ff8b68931065c777b5ec250bc515958db SHA512 7d2b72a1613f736b4538add02cdfeef37d4f0ce68fbadde126717317a863e2e22533c0f7b74a21cf1ea2f123487fab68ec3d47f40f8addfacf6a5ba091268610 WHIRLPOOL 65f7a4a02575ee7b2e3a9a328830a8132d658c555a966fb0dca6b6fb8da05b023cfcdb98cc2e6697058e034207a744333a4d12301c307a32d98a76afb34d446a
+DIST icmpdn-0.4.tar.gz 332780 SHA256 8d53bd2ddfeb1a013b549e7e5d4a606af50d621b6e803dcfac9d870c77af8b45 SHA512 2bcaa8987f1479fe0b562b805f1515d7dfba74ce8ca2f82156176eb9a059a6903e324a7fe64e256fec8a032a68de4618eb469e856d0004a3ceea4897f0833b1d WHIRLPOOL d4a2a46ecf0793b7f7ab2732203ad871550132a360cc5d5d9a3b3ad7aa1a316104f49137095da16f9fd6dc06c9eb9f3eb9e8b2a96b269f5c528c5806d5707ec0
+EBUILD icmpdn-0.4.ebuild 980 SHA256 a7ec3957948257f1da74ce16108b42544ccd965ebbe4e3e02d764031f295a683 SHA512 50defc8714f2f52a102363a7f7f32945e38e1c9e6e7ba68afc8632990ecfa67b5aa043f5d6b1d381cc4a853a39d7692e21389b877c8e6b058d0f9b16f0b6423d WHIRLPOOL cc8764117396b21ddb99e883ab05f89daeaf61f28c02a885f4fb4a820d222e7e453c44afe43747fbdc9f2fcc2c9446b8f5754ccc35eb5cc210cf345000c5c999
+MISC ChangeLog 2346 SHA256 46e79c1ffc6da8e8311ed11eb9c69e079deb6c036aefb3b71233c454aa2a7e8c SHA512 e944a8643587b1dfec272ecef00b97a64d9e007e40d6882cd95ea8ea28b83664d35484ffb3878bdd851c11300c1f5faab6e8f1d8e9d6fa1a2c785984744a96f8 WHIRLPOOL 0d0854628581499b59cc945c1f34c4cdec388d3cfc1397ef324af0e4704a454b047d93fa9e31de80d712fb8433062d6306c81fafa44bd9380dca69e5ac94ce3d
+MISC ChangeLog-2015 716 SHA256 5ca150f62007dfd3737ef76e03e00e1972aec36dae35a14761a40c8694a39509 SHA512 ab0ac83bd4124a1f67154c7c8c3be0571171c5cc99cecc0f42ad4af77154d778e23ad5d4664b5faa9e697ccfa5f9a07d5c410d529e3b3c26d0b78380cc7edb01 WHIRLPOOL bb23dcbacedcec22dd4bd84c763553c60f319f9dd3800ca49659238d306ffb75114225333e25d4b92b91fe5ab8178ba9c5c25f121cd8e99ed85ee17d5fdd08a5
+MISC metadata.xml 216 SHA256 f7475919f28a8a93ec8bd025c8f8bbab918f66d0d1737420c876f0480308fe6a SHA512 e881b59fe49746eb25ad66c258b41aba501e4eb563129093a3898ea970a20506e7898f7c355cfcf99605234962bf2c77c1309c258b9a2b84ee4302ccb71c9dbd WHIRLPOOL 163285b60aa93e00993af659dc1e29a9eb245bd3415dd5ec75b284250596165f469028102b72fa0c344834443a44c1bbcf6272fe6a3f5211f721fc96e1c6ec16
diff --git a/sys-auth/icmpdn/files/conf.d-icmpdnd b/sys-auth/icmpdn/files/conf.d-icmpdnd
new file mode 100644
index 000000000000..24e6e95fef25
--- /dev/null
+++ b/sys-auth/icmpdn/files/conf.d-icmpdnd
@@ -0,0 +1,14 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+# Set the TTL (Time-to-Live) value in responses to TTL seconds rather
+# than the default of 3600 seconds
+#TTL=3600
+
+# Set the domain name in responses to domainname, rather than the
+# default as described above. This option is useful in case the system
+# is not configured to set up its own hostname.
+#DOMAINNAME=mydomainname.com
+
+# Other options
+#ICMPDND_OPTS=""
diff --git a/sys-auth/icmpdn/files/init.d-icmpdnd b/sys-auth/icmpdn/files/init.d-icmpdnd
new file mode 100644
index 000000000000..452b644c63fa
--- /dev/null
+++ b/sys-auth/icmpdn/files/init.d-icmpdnd
@@ -0,0 +1,26 @@
+#!/sbin/openrc-run
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+BINARY="/usr/sbin/icmpdnd"
+
+[ -n "${TTL}" ] && ICMPDND_OPTS="${ICMPDND_OPTS} -t ${TTL}"
+[ -n "${DOMAINNAME}" ] && ICMPDND_OPTS="${ICMPDND_OPTS} -d ${DOMAINNAME}"
+
+depend() {
+ need net
+ after ypbind
+}
+
+start() {
+ ebegin "Starting icmpdnd"
+ start-stop-daemon --start --quiet --exec ${BINARY} -- ${ICMPDND_OPTS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping icmpdnd"
+ start-stop-daemon --stop --quiet --exec ${BINARY}
+ eend $?
+}
+
diff --git a/sys-auth/icmpdn/icmpdn-0.4.ebuild b/sys-auth/icmpdn/icmpdn-0.4.ebuild
new file mode 100644
index 000000000000..2c344aa6e5b0
--- /dev/null
+++ b/sys-auth/icmpdn/icmpdn-0.4.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils flag-o-matic multilib
+
+DESCRIPTION="ICMP Domain Name utilities & NSS backend"
+HOMEPAGE="http://www.dolda2000.com/~fredrik/icmp-dn/"
+SRC_URI="${HOMEPAGE}${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE=""
+
+src_compile() {
+ append-cppflags -D_GNU_SOURCE #241318
+ econf \
+ --sysconfdir=/etc \
+ --libdir=/$(get_libdir) \
+ || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die "emake install failed"
+ newinitd "${FILESDIR}"/init.d-icmpdnd icmpdnd
+ newconfd "${FILESDIR}"/conf.d-icmpdnd icmpdnd
+ dodoc AUTHORS ChangeLog README
+ # must always run as root
+ fperms 4711 /usr/bin/idnlookup
+ # useless as nothing should link against this lib
+ rm "${D}"/lib*/*.{la,so}
+}
+
+pkg_postinst() {
+ einfo "To use the ICMP nameswitch module, add 'icmp'"
+ einfo "to the 'hosts' line in your /etc/nsswitch.conf"
+}
diff --git a/sys-auth/icmpdn/metadata.xml b/sys-auth/icmpdn/metadata.xml
new file mode 100644
index 000000000000..79d462e85571
--- /dev/null
+++ b/sys-auth/icmpdn/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/sys-auth/keystone/Manifest b/sys-auth/keystone/Manifest
new file mode 100644
index 000000000000..9dc46f38e34b
--- /dev/null
+++ b/sys-auth/keystone/Manifest
@@ -0,0 +1,12 @@
+DIST keystone-10.0.3.tar.gz 1363347 SHA256 db2d29cd4b0e4b7672779ff3355093bbeda61620c58e3e7a4f0424a6f7e67513 SHA512 a6173cdcf0cbedefc2965e8f7b6a5924b45ada2d6ae18715e28071ab9c785fce3b4538acb6361a5e3ea89c5eb7bf01cf87591719d44469049602920254d47db4 WHIRLPOOL 25333195801923a999187dbe85cb2729f077efc71decd6d89556f10a5afbc7435cfac82e4be3ffbaae3b0aea0ba96ebe275918d4ba6a13a5ad0dd98e79b5d9f3
+DIST keystone-11.0.3.tar.gz 1373880 SHA256 552dcca96d93ef06e28ced0f86cc142e2bb0f8b237297816b670b9b21aba7c85 SHA512 0468a834b1a44b27f4747aeb580f17f68b7dce0ee0cbc3693355d66e9c46383b7ad3a769b3ffa0146fac9b45a75c8a2c95aad0df4825d2be33cadb2cf6b1a659 WHIRLPOOL 1cb4c1de756b57b27142e613381dd7e9e50c10cdff16bb0c2734b67d5b43ca443e7233cd60324231d45dadeab1cc5693aa80d2c23c3fc40680acca13c82b9b3e
+DIST keystone-12.0.0.tar.gz 1491044 SHA256 f4c1239beaf376568cf30d11ffa7011754ab2216f69ccd282f5ab09de8977b13 SHA512 7b7e6cb56b9d22e92834ccfb31dcd6d28d7318e2d8160da93cbc48cdb72aa626021db5b38068ca76caae88e68204c3650f7ce728bc8e1791df8fc8d36072483c WHIRLPOOL 719877102b8146841757262d65bb8f99f7af410b3ee1acc4ce4d255aef6b692f5c8a13690627bfea915bc904a09087449240a220b1c67fe09d0d7221d7d42683
+EBUILD keystone-10.0.3.ebuild 5773 SHA256 9d9a6ac00e1adb7937a6ee70b2f61ffc6baeebb0b45e91b5ecfddb6c546936c1 SHA512 f18ebbf771ff177ec1a63a6b2a7337fda79c90dae09208bca11bae1eca1955be171e8c51f30dd8a323d5aa306df1e621f14e997b087e48de14abf568154e3689 WHIRLPOOL 657f6ed2f014daecfc0133f01df2bf19085204b3e6d53766ec519e889df09e87cb6e702dc3c5d8fd1c7d55d23aeb4fced9eae3a528fe59f368b2e4cb2fffffe2
+EBUILD keystone-11.0.3.ebuild 5473 SHA256 961d5fe2d6b98a8a2efba5af823403dcdc4316861eb8bbf93b9cf210bc8b9407 SHA512 1d306f843004818a452e393fe2af92159fd4ac9e36afe1efdb796167d0a343eddf56f852126c5eb9b985ebff77819babec95f54f3660292db2f7b4534fc81233 WHIRLPOOL 4b0578a69e19b0f1d7259af85576103572fd3c14aeadad356010cb3ec8feab31df439e2028f490e4fa0b04f9f08bb5698bb3e02f30f2a34ae55e4af4df833fc9
+EBUILD keystone-12.0.0.ebuild 6199 SHA256 6816f235d866c7aaf692254faf069d348c39b5bbaba2cdbd56feeed2adff573c SHA512 9cd8d4a2255a94d4c3278077eecd3efdc747d3477d3f77b6a645746810aeede13600358dace03692a33704df766fa550daea654950b59865669b44e67c489ed3 WHIRLPOOL 9c057a47e503bc132224e07900f59d1a11494bfbfdb67ab9e3a72b4b159431d7b6670791acbf386d3ea48202ac0866970265794d1db1694e6eeccd4a7a9eb161
+EBUILD keystone-2016.2.9999.ebuild 5805 SHA256 cb0e3941b54356af348f8672182e703ee0c8aa25f0e997edd539b151a7f20f76 SHA512 539d929eedf29dc70d3138dbcdff8b143daf46285cf7be2c49235fe04bfec862ce40f05292f3a4660e1ec5aca4f102a2166c6ca1288a3b562d1f61941eaa9b7c WHIRLPOOL 04ec12dbcf7062d69dbb7355a2ab273ba0e15d45f405e4e76e24fd7728c67535ec27f5b04c45d2dc7be046ba0ffb9b82fb2809695e9602336854364c6222b2de
+EBUILD keystone-2017.1.9999.ebuild 5492 SHA256 6125231deacf29e7edee4c026d25bcc5189e648b515ab43be953a118d7a0baa0 SHA512 b78f56f4efd9234610854835791dc13a9f7a17fc3f317ccbd89b56a1478b32d4218ae42f08de06fdbb55d62b2b240bc3d43e047237be02878e8597cd0e299305 WHIRLPOOL 9f154f2c834029ea5ecae1921743798aee311ae222901cdb58a226a87e88e837fa64344d0e3e6fe7820c11eef68f1d6db272d63c913f9fc434fca47429ce0504
+EBUILD keystone-2017.2.9999.ebuild 6215 SHA256 032bad657e5149d6cb344e1cff95274dabe18c4b05bb03ff32b69e53f7a5a6ed SHA512 9d7b9a175f1f4ba214ecea842f8e0694584023f151596de5b771f59a673cbde3835dee5dd71e947a2a64deeb44cc90e0c348ad7a8927c920767891f7271b1357 WHIRLPOOL 75db289d861d64f13a5b0af14c0f57e6d0027f4c2ff92deab58f7d65d63e5f07b2393ce8c38c8e19eaf31c844b100ae79331db4cb1483e287cf400988d19c32e
+MISC ChangeLog 13703 SHA256 3b9c64211d59c59c05b585cf4812d6ef0fab656e28742fa1a5d73c9411e6f58b SHA512 a6aa4a57e6a8eab80284cd1f6eed42f29792e3ba82bf03ac80b2a8cc89c9bc0f3e695ab64b2cd80af31378f2f02c4ab271fef3c281ed9d75132adee7d233d802 WHIRLPOOL 38faed9aa9fdeb134b9d5258f37c0d361e3905ffbff80c6f4a13dc510dd318e85c42c853c77c55362f23a6e3c09b23cc6326b50a7a70f272492478810ff4031b
+MISC ChangeLog-2015 20650 SHA256 d48ae7dc48725af18da9d4cd43ba70b1b2f088be6f0fa79c81501a4e91cff168 SHA512 da42f7d98c6e07b9600807b2bc6e341c598ab2a98fd689c29ec58f96e6816fab549ab5ac25c58b4a6f0243b4e3d3b8541caa58ac7fc6532e005f81a1fc0e4a06 WHIRLPOOL 2887330061afad1f3c7fd4ff7ffa7e141001e336eb3d3ae3f9db11785470105abc3afcc0bb3c515ce5000af7d5de7d928c8c05e669d993a3d06f5a9b114217a3
+MISC metadata.xml 807 SHA256 b69a5c48ef96f248cb7ffeac967069c719717d742af7bd6a16c540c886ff6223 SHA512 3738ac4fde08eb90daea5aeb9731cf6e303b3ad6838f07732e707d5597ee2d96ac6530f691b6ac8c0f347946b75695be98a19e224496d137bf1968bccfe156ad WHIRLPOOL 13127813a72be440e5305f4e26cb693adb0137a6529a6ab7aba6eb93a14ba0a06cbdf639a1a7b81e2a98dbf873965440d91d6b42866e780d4f1c6f0869c636ce
diff --git a/sys-auth/keystone/keystone-10.0.3.ebuild b/sys-auth/keystone/keystone-10.0.3.ebuild
new file mode 100644
index 000000000000..5c34d47bc72c
--- /dev/null
+++ b/sys-auth/keystone/keystone-10.0.3.ebuild
@@ -0,0 +1,164 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_4 )
+
+inherit distutils-r1 user
+
+DESCRIPTION="The Openstack authentication, authorization, and service catalog"
+HOMEPAGE="https://launchpad.net/keystone"
+SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 x86"
+IUSE="+sqlite ldap memcached mongo mysql postgres test"
+REQUIRED_USE="|| ( mysql postgres sqlite )"
+
+CDEPEND=">=dev-python/pbr-1.6[${PYTHON_USEDEP}]"
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ${CDEPEND}"
+RDEPEND="
+ ${CDEPEND}
+ >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.2.3-r1[${PYTHON_USEDEP}]
+ >=dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}]
+ dev-python/paste[${PYTHON_USEDEP}]
+ >=dev-python/routes-1.12.3[${PYTHON_USEDEP}]
+ !~dev-python/routes-2.0[${PYTHON_USEDEP}]
+ !~dev-python/routes-2.1[$(python_gen_usedep 'python2_7')]
+ !~dev-python/routes-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-1.0[${PYTHON_USEDEP}]
+ !~dev-python/cryptography-1.3.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+ sqlite? (
+ >=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[sqlite,${PYTHON_USEDEP}]
+ )
+ mysql? (
+ >=dev-python/pymysql-0.6.2[${PYTHON_USEDEP}]
+ !~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+ )
+ postgres? (
+ >=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+ )
+ >=dev-python/sqlalchemy-migrate-0.9.6[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.16.0[${PYTHON_USEDEP}]
+ >=dev-python/passlib-1.6[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/python-keystoneclient-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/keystonemiddleware-4.0.0[${PYTHON_USEDEP}]
+ !~dev-python/keystonemiddleware-4.1.0[${PYTHON_USEDEP}]
+ !~dev-python/keystonemiddleware-4.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-cache-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-3.14.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.9.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-messaging-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.10.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-db-4.13.1[${PYTHON_USEDEP}]
+ !~dev-python/oslo-db-4.13.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-1.14.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-policy-1.9.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.16.0[${PYTHON_USEDEP}]
+ >=dev-python/oauthlib-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/pysaml2-2.4.0[${PYTHON_USEDEP}]
+ <dev-python/pysaml2-4.0.3[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-0.6.2[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/jsonschema-2.5.0[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pycadf-1.1.0[${PYTHON_USEDEP}]
+ !~dev-python/pycadf-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+ memcached? (
+ >=dev-python/python-memcached-1.56[${PYTHON_USEDEP}]
+ )
+ mongo? (
+ >=dev-python/pymongo-3.0.2[${PYTHON_USEDEP}]
+ !~dev-python/pymongo-3.1[${PYTHON_USEDEP}]
+ )
+ ldap? (
+ >=dev-python/pyldap-2.4[${PYTHON_USEDEP}]
+ >=dev-python/ldappool-2.0.0[${PYTHON_USEDEP}]
+ )
+ || (
+ www-servers/uwsgi[python,${PYTHON_USEDEP}]
+ www-apache/mod_wsgi[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ )"
+
+PATCHES=(
+)
+
+pkg_setup() {
+ enewgroup keystone
+ enewuser keystone -1 -1 /var/lib/keystone keystone
+}
+
+python_prepare_all() {
+ # it's in git, but not in the tarball.....
+ sed -i '/^hacking/d' test-requirements.txt || die
+ mkdir -p ${PN}/tests/tmp/ || die
+ cp etc/keystone-paste.ini ${PN}/tests/tmp/ || die
+ sed -i 's|/usr/local|/usr|g' httpd/keystone-uwsgi-* || die
+ sed -i 's|python|python27|g' httpd/keystone-uwsgi-* || die
+ distutils-r1_python_prepare_all
+}
+
+# Ignore (naughty) test_.py files & 1 test that connect to the network
+#-I 'test_keystoneclient*' \
+python_test() {
+ nosetests -I 'test_keystoneclient*' \
+ -e test_static_translated_string_is_Message \
+ -e test_get_token_id_error_handling \
+ -e test_provider_token_expiration_validation \
+ -e test_import --process-restartworker --process-timeout=60 || die "testsuite failed under python2.7"
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ diropts -m 0750
+ keepdir /etc/keystone /var/log/keystone
+ insinto /etc/keystone
+ insopts -m0640 -okeystone -gkeystone
+ doins etc/keystone.conf.sample etc/logging.conf.sample
+ doins etc/default_catalog.templates etc/policy.json
+ doins etc/policy.v3cloudsample.json etc/keystone-paste.ini
+ insinto /etc/keystone/httpd
+ doins httpd/*
+
+ fowners keystone:keystone /etc/keystone /etc/keystone/httpd /var/log/keystone
+}
+
+pkg_postinst() {
+ elog "You might want to run:"
+ elog "emerge --config =${CATEGORY}/${PF}"
+ elog "if this is a new install."
+ elog "If you have not already configured your openssl installation"
+ elog "please do it by modifying /etc/ssl/openssl.cnf"
+ elog "BEFORE issuing the configuration command."
+ elog "Otherwise default values will be used."
+}
+
+pkg_config() {
+ if [ ! -d "${ROOT}"/etc/keystone/ssl ] ; then
+ einfo "Press ENTER to configure the keystone PKI, or Control-C to abort now..."
+ read
+ "${ROOT}"/usr/bin/keystone-manage pki_setup --keystone-user keystone --keystone-group keystone
+ else
+ einfo "keystone PKI certificates directory already present, skipping configuration"
+ fi
+}
diff --git a/sys-auth/keystone/keystone-11.0.3.ebuild b/sys-auth/keystone/keystone-11.0.3.ebuild
new file mode 100644
index 000000000000..2b7157997711
--- /dev/null
+++ b/sys-auth/keystone/keystone-11.0.3.ebuild
@@ -0,0 +1,158 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+
+inherit distutils-r1 user
+
+DESCRIPTION="The Openstack authentication, authorization, and service catalog"
+HOMEPAGE="https://launchpad.net/keystone"
+SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 x86"
+IUSE="+sqlite ldap memcached mongo mysql postgres test"
+REQUIRED_USE="|| ( mysql postgres sqlite )"
+
+CDEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ${CDEPEND}"
+RDEPEND="
+ ${CDEPEND}
+ >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.6.0[${PYTHON_USEDEP}]
+ >=dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}]
+ dev-python/paste[${PYTHON_USEDEP}]
+ >=dev-python/routes-1.12.3[${PYTHON_USEDEP}]
+ !~dev-python/routes-2.0[${PYTHON_USEDEP}]
+ !~dev-python/routes-2.1[$(python_gen_usedep 'python2_7')]
+ !~dev-python/routes-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-1.0[${PYTHON_USEDEP}]
+ !~dev-python/cryptography-1.3.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+ sqlite? (
+ >=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[sqlite,${PYTHON_USEDEP}]
+ )
+ mysql? (
+ >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
+ !~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+ )
+ postgres? (
+ >=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+ )
+ >=dev-python/sqlalchemy-migrate-0.9.6[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.17.1[${PYTHON_USEDEP}]
+ >=dev-python/passlib-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/keystonemiddleware-4.12.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-cache-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-3.14.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-config-3.18.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.9.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-messaging-5.14.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.15.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.11.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-policy-1.17.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.18.0[${PYTHON_USEDEP}]
+ >=dev-python/oauthlib-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/pysaml2-2.4.0[${PYTHON_USEDEP}]
+ <dev-python/pysaml2-4.0.3[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-0.6.2[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/jsonschema-2.5.0[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pycadf-1.1.0[${PYTHON_USEDEP}]
+ !~dev-python/pycadf-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+ memcached? (
+ >=dev-python/python-memcached-1.56[${PYTHON_USEDEP}]
+ )
+ mongo? (
+ >=dev-python/pymongo-3.0.2[${PYTHON_USEDEP}]
+ !~dev-python/pymongo-3.1[${PYTHON_USEDEP}]
+ )
+ ldap? (
+ >=dev-python/pyldap-2.4.20[${PYTHON_USEDEP}]
+ >=dev-python/ldappool-2.0.0[${PYTHON_USEDEP}]
+ )
+ || (
+ www-servers/uwsgi[python,${PYTHON_USEDEP}]
+ www-apache/mod_wsgi[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ )"
+
+PATCHES=(
+)
+
+pkg_setup() {
+ enewgroup keystone
+ enewuser keystone -1 -1 /var/lib/keystone keystone
+}
+
+python_prepare_all() {
+ # it's in git, but not in the tarball.....
+ sed -i '/^hacking/d' test-requirements.txt || die
+ mkdir -p ${PN}/tests/tmp/ || die
+ cp etc/keystone-paste.ini ${PN}/tests/tmp/ || die
+ sed -i 's|/usr/local|/usr|g' httpd/keystone-uwsgi-* || die
+ sed -i 's|python|python27|g' httpd/keystone-uwsgi-* || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ nosetests -I 'test_keystoneclient*' \
+ -e test_static_translated_string_is_Message \
+ -e test_get_token_id_error_handling \
+ -e test_provider_token_expiration_validation \
+ -e test_import --process-restartworker --process-timeout=60 || die "testsuite failed under python2.7"
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ diropts -m 0750
+ keepdir /etc/keystone /var/log/keystone
+ insinto /etc/keystone
+ insopts -m0640 -okeystone -gkeystone
+ doins etc/keystone.conf.sample etc/logging.conf.sample
+ doins etc/default_catalog.templates etc/policy.json
+ doins etc/policy.v3cloudsample.json etc/keystone-paste.ini
+ insinto /etc/keystone/httpd
+ doins httpd/*
+
+ fowners keystone:keystone /etc/keystone /etc/keystone/httpd /var/log/keystone
+}
+
+pkg_postinst() {
+ elog "You might want to run:"
+ elog "emerge --config =${CATEGORY}/${PF}"
+ elog "if this is a new install."
+ elog "If you have not already configured your openssl installation"
+ elog "please do it by modifying /etc/ssl/openssl.cnf"
+ elog "BEFORE issuing the configuration command."
+ elog "Otherwise default values will be used."
+}
+
+pkg_config() {
+ if [ ! -d "${ROOT}"/etc/keystone/ssl ] ; then
+ einfo "Press ENTER to configure the keystone PKI, or Control-C to abort now..."
+ read
+ "${ROOT}"/usr/bin/keystone-manage pki_setup --keystone-user keystone --keystone-group keystone
+ else
+ einfo "keystone PKI certificates directory already present, skipping configuration"
+ fi
+}
diff --git a/sys-auth/keystone/keystone-12.0.0.ebuild b/sys-auth/keystone/keystone-12.0.0.ebuild
new file mode 100644
index 000000000000..72e231190002
--- /dev/null
+++ b/sys-auth/keystone/keystone-12.0.0.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+
+inherit distutils-r1 user
+
+DESCRIPTION="The Openstack authentication, authorization, and service catalog"
+HOMEPAGE="https://launchpad.net/keystone"
+SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 x86"
+IUSE="+sqlite ldap memcached mongo mysql postgres test"
+REQUIRED_USE="|| ( mysql postgres sqlite )"
+
+CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/pbr-2.1.0"
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ${CDEPEND}"
+RDEPEND="
+ ${CDEPEND}
+ >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+ !~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.7.1[${PYTHON_USEDEP}]
+ >=dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}]
+ dev-python/paste[${PYTHON_USEDEP}]
+ >=dev-python/routes-2.3.1[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-1.6[${PYTHON_USEDEP}]
+ !~dev-python/cryptography-2.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+ sqlite? (
+ >=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.5[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.6[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.7[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.8[sqlite,${PYTHON_USEDEP}]
+ )
+ mysql? (
+ >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
+ !~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.5[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.6[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.7[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.8[${PYTHON_USEDEP}]
+ )
+ postgres? (
+ >=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.5[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.6[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.7[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.8[${PYTHON_USEDEP}]
+ )
+ >=dev-python/sqlalchemy-migrate-0.11.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/passlib-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/keystonemiddleware-4.12.0[${PYTHON_USEDEP}]
+ >=dev-python/bcrypt-3.1.3[${PYTHON_USEDEP}]
+ >=dev-python/scrypt-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-cache-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-4.0.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-config-4.3.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-config-4.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.14.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-messaging-5.24.2[${PYTHON_USEDEP}]
+ !~dev-python/oslo-messaging-5.25.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.24.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-i18n-3.15.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.22.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-middleware-3.27.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-policy-1.23.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-serialization-1.19.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.20.0[${PYTHON_USEDEP}]
+ >=dev-python/oauthlib-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/pysaml2-2.4.0[${PYTHON_USEDEP}]
+ <dev-python/pysaml2-4.0.3[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-0.6.2[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/jsonschema-2.5.0[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pycadf-1.1.0[${PYTHON_USEDEP}]
+ !~dev-python/pycadf-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/pytz-2013.6[${PYTHON_USEDEP}]
+ memcached? (
+ >=dev-python/python-memcached-1.56[${PYTHON_USEDEP}]
+ )
+ mongo? (
+ >=dev-python/pymongo-3.0.2[${PYTHON_USEDEP}]
+ !~dev-python/pymongo-3.1[${PYTHON_USEDEP}]
+ )
+ ldap? (
+ >=dev-python/pyldap-2.4.20[${PYTHON_USEDEP}]
+ >=dev-python/ldappool-2.0.0[${PYTHON_USEDEP}]
+ )
+ || (
+ www-servers/uwsgi[python,${PYTHON_USEDEP}]
+ www-apache/mod_wsgi[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ )"
+
+#PATCHES=(
+#)
+
+pkg_setup() {
+ enewgroup keystone
+ enewuser keystone -1 -1 /var/lib/keystone keystone
+}
+
+python_prepare_all() {
+ # it's in git, but not in the tarball.....
+ sed -i '/^hacking/d' test-requirements.txt || die
+ mkdir -p ${PN}/tests/tmp/ || die
+ cp etc/keystone-paste.ini ${PN}/tests/tmp/ || die
+ sed -i 's|/usr/local|/usr|g' httpd/keystone-uwsgi-* || die
+ sed -i 's|python|python27|g' httpd/keystone-uwsgi-* || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ nosetests -I 'test_keystoneclient*' \
+ -e test_static_translated_string_is_Message \
+ -e test_get_token_id_error_handling \
+ -e test_provider_token_expiration_validation \
+ -e test_import --process-restartworker --process-timeout=60 || die "testsuite failed under python2.7"
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ diropts -m 0750
+ keepdir /etc/keystone /var/log/keystone
+ insinto /etc/keystone
+ insopts -m0640 -okeystone -gkeystone
+ doins etc/keystone.conf.sample etc/logging.conf.sample
+ doins etc/default_catalog.templates
+ doins etc/policy.v3cloudsample.json etc/keystone-paste.ini
+ insinto /etc/keystone/httpd
+ doins httpd/*
+
+ fowners keystone:keystone /etc/keystone /etc/keystone/httpd /var/log/keystone
+}
+
+pkg_postinst() {
+ elog "You might want to run:"
+ elog "emerge --config =${CATEGORY}/${PF}"
+ elog "if this is a new install."
+ elog "If you have not already configured your openssl installation"
+ elog "please do it by modifying /etc/ssl/openssl.cnf"
+ elog "BEFORE issuing the configuration command."
+ elog "Otherwise default values will be used."
+}
+
+pkg_config() {
+ if [ ! -d "${ROOT}"/etc/keystone/ssl ] ; then
+ einfo "Press ENTER to configure the keystone PKI, or Control-C to abort now..."
+ read
+ "${ROOT}"/usr/bin/keystone-manage pki_setup --keystone-user keystone --keystone-group keystone
+ else
+ einfo "keystone PKI certificates directory already present, skipping configuration"
+ fi
+}
diff --git a/sys-auth/keystone/keystone-2016.2.9999.ebuild b/sys-auth/keystone/keystone-2016.2.9999.ebuild
new file mode 100644
index 000000000000..aa6f5ec0d1b8
--- /dev/null
+++ b/sys-auth/keystone/keystone-2016.2.9999.ebuild
@@ -0,0 +1,165 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+
+inherit distutils-r1 git-r3 user
+
+DESCRIPTION="The Openstack authentication, authorization, and service catalog"
+HOMEPAGE="https://launchpad.net/keystone"
+EGIT_REPO_URI="https://github.com/openstack/keystone.git"
+EGIT_BRANCH="stable/newton"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS=""
+IUSE="+sqlite ldap memcached mongo mysql postgres test"
+REQUIRED_USE="|| ( mysql postgres sqlite )"
+
+CDEPEND=">=dev-python/pbr-1.6[${PYTHON_USEDEP}]"
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ${CDEPEND}"
+RDEPEND="
+ ${CDEPEND}
+ >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.2.3-r1[${PYTHON_USEDEP}]
+ >=dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}]
+ dev-python/paste[${PYTHON_USEDEP}]
+ >=dev-python/routes-1.12.3[${PYTHON_USEDEP}]
+ !~dev-python/routes-2.0[${PYTHON_USEDEP}]
+ !~dev-python/routes-2.1[$(python_gen_usedep 'python2_7')]
+ !~dev-python/routes-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-1.0[${PYTHON_USEDEP}]
+ !~dev-python/cryptography-1.3.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+ sqlite? (
+ >=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[sqlite,${PYTHON_USEDEP}]
+ )
+ mysql? (
+ >=dev-python/pymysql-0.6.2[${PYTHON_USEDEP}]
+ !~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+ )
+ postgres? (
+ >=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+ )
+ >=dev-python/sqlalchemy-migrate-0.9.6[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.16.0[${PYTHON_USEDEP}]
+ >=dev-python/passlib-1.6[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/python-keystoneclient-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/keystonemiddleware-4.0.0[${PYTHON_USEDEP}]
+ !~dev-python/keystonemiddleware-4.1.0[${PYTHON_USEDEP}]
+ !~dev-python/keystonemiddleware-4.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-cache-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-3.14.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.9.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-messaging-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.10.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-db-4.13.1[${PYTHON_USEDEP}]
+ !~dev-python/oslo-db-4.13.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-1.14.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-policy-1.9.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.16.0[${PYTHON_USEDEP}]
+ >=dev-python/oauthlib-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/pysaml2-2.4.0[${PYTHON_USEDEP}]
+ <dev-python/pysaml2-4.0.3[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-0.6.2[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/jsonschema-2.5.0[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pycadf-1.1.0[${PYTHON_USEDEP}]
+ !~dev-python/pycadf-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+ memcached? (
+ >=dev-python/python-memcached-1.56[${PYTHON_USEDEP}]
+ )
+ mongo? (
+ >=dev-python/pymongo-3.0.2[${PYTHON_USEDEP}]
+ !~dev-python/pymongo-3.1[${PYTHON_USEDEP}]
+ )
+ ldap? (
+ >=dev-python/pyldap-2.4[${PYTHON_USEDEP}]
+ >=dev-python/ldappool-2.0.0[${PYTHON_USEDEP}]
+ )
+ || (
+ www-servers/uwsgi[python,${PYTHON_USEDEP}]
+ www-apache/mod_wsgi[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ )"
+
+#PATCHES=(
+#)
+
+pkg_setup() {
+ enewgroup keystone
+ enewuser keystone -1 -1 /var/lib/keystone keystone
+}
+
+python_prepare_all() {
+ # it's in git, but not in the tarball.....
+ sed -i '/^hacking/d' test-requirements.txt || die
+ mkdir -p ${PN}/tests/tmp/ || die
+ cp etc/keystone-paste.ini ${PN}/tests/tmp/ || die
+ sed -i 's|/usr/local|/usr|g' httpd/keystone-uwsgi-* || die
+ sed -i 's|python|python27|g' httpd/keystone-uwsgi-* || die
+ distutils-r1_python_prepare_all
+}
+
+# Ignore (naughty) test_.py files & 1 test that connect to the network
+#-I 'test_keystoneclient*' \
+python_test() {
+ nosetests -I 'test_keystoneclient*' \
+ -e test_static_translated_string_is_Message \
+ -e test_get_token_id_error_handling \
+ -e test_provider_token_expiration_validation \
+ -e test_import --process-restartworker --process-timeout=60 || die "testsuite failed under python2.7"
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ diropts -m 0750
+ keepdir /etc/keystone /var/log/keystone
+ insinto /etc/keystone
+ insopts -m0640 -okeystone -gkeystone
+ doins etc/keystone.conf.sample etc/logging.conf.sample
+ doins etc/default_catalog.templates etc/policy.json
+ doins etc/policy.v3cloudsample.json etc/keystone-paste.ini
+ insinto /etc/keystone/httpd
+ doins httpd/*
+
+ fowners keystone:keystone /etc/keystone /etc/keystone/httpd /var/log/keystone
+}
+
+pkg_postinst() {
+ elog "You might want to run:"
+ elog "emerge --config =${CATEGORY}/${PF}"
+ elog "if this is a new install."
+ elog "If you have not already configured your openssl installation"
+ elog "please do it by modifying /etc/ssl/openssl.cnf"
+ elog "BEFORE issuing the configuration command."
+ elog "Otherwise default values will be used."
+}
+
+pkg_config() {
+ if [ ! -d "${ROOT}"/etc/keystone/ssl ] ; then
+ einfo "Press ENTER to configure the keystone PKI, or Control-C to abort now..."
+ read
+ "${ROOT}"/usr/bin/keystone-manage pki_setup --keystone-user keystone --keystone-group keystone
+ else
+ einfo "keystone PKI certificates directory already present, skipping configuration"
+ fi
+}
diff --git a/sys-auth/keystone/keystone-2017.1.9999.ebuild b/sys-auth/keystone/keystone-2017.1.9999.ebuild
new file mode 100644
index 000000000000..a84d72776540
--- /dev/null
+++ b/sys-auth/keystone/keystone-2017.1.9999.ebuild
@@ -0,0 +1,159 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+
+inherit distutils-r1 git-r3 user
+
+DESCRIPTION="The Openstack authentication, authorization, and service catalog"
+HOMEPAGE="https://launchpad.net/keystone"
+EGIT_REPO_URI="https://github.com/openstack/keystone.git"
+EGIT_BRANCH="stable/ocata"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS=""
+IUSE="+sqlite ldap memcached mongo mysql postgres test"
+REQUIRED_USE="|| ( mysql postgres sqlite )"
+
+CDEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ${CDEPEND}"
+RDEPEND="
+ ${CDEPEND}
+ >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.6.0[${PYTHON_USEDEP}]
+ >=dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}]
+ dev-python/paste[${PYTHON_USEDEP}]
+ >=dev-python/routes-1.12.3[${PYTHON_USEDEP}]
+ !~dev-python/routes-2.0[${PYTHON_USEDEP}]
+ !~dev-python/routes-2.1[$(python_gen_usedep 'python2_7')]
+ !~dev-python/routes-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-1.0[${PYTHON_USEDEP}]
+ !~dev-python/cryptography-1.3.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+ sqlite? (
+ >=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[sqlite,${PYTHON_USEDEP}]
+ )
+ mysql? (
+ >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
+ !~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+ )
+ postgres? (
+ >=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+ )
+ >=dev-python/sqlalchemy-migrate-0.9.6[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.17.1[${PYTHON_USEDEP}]
+ >=dev-python/passlib-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/keystonemiddleware-4.12.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-cache-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-3.14.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-config-3.18.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.9.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-messaging-5.14.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.15.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.11.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-policy-1.17.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.18.0[${PYTHON_USEDEP}]
+ >=dev-python/oauthlib-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/pysaml2-2.4.0[${PYTHON_USEDEP}]
+ <dev-python/pysaml2-4.0.3[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-0.6.2[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/jsonschema-2.5.0[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pycadf-1.1.0[${PYTHON_USEDEP}]
+ !~dev-python/pycadf-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+ memcached? (
+ >=dev-python/python-memcached-1.56[${PYTHON_USEDEP}]
+ )
+ mongo? (
+ >=dev-python/pymongo-3.0.2[${PYTHON_USEDEP}]
+ !~dev-python/pymongo-3.1[${PYTHON_USEDEP}]
+ )
+ ldap? (
+ >=dev-python/pyldap-2.4.20[${PYTHON_USEDEP}]
+ >=dev-python/ldappool-2.0.0[${PYTHON_USEDEP}]
+ )
+ || (
+ www-servers/uwsgi[python,${PYTHON_USEDEP}]
+ www-apache/mod_wsgi[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ )"
+
+#PATCHES=(
+#)
+
+pkg_setup() {
+ enewgroup keystone
+ enewuser keystone -1 -1 /var/lib/keystone keystone
+}
+
+python_prepare_all() {
+ # it's in git, but not in the tarball.....
+ sed -i '/^hacking/d' test-requirements.txt || die
+ mkdir -p ${PN}/tests/tmp/ || die
+ cp etc/keystone-paste.ini ${PN}/tests/tmp/ || die
+ sed -i 's|/usr/local|/usr|g' httpd/keystone-uwsgi-* || die
+ sed -i 's|python|python27|g' httpd/keystone-uwsgi-* || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ nosetests -I 'test_keystoneclient*' \
+ -e test_static_translated_string_is_Message \
+ -e test_get_token_id_error_handling \
+ -e test_provider_token_expiration_validation \
+ -e test_import --process-restartworker --process-timeout=60 || die "testsuite failed under python2.7"
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ diropts -m 0750
+ keepdir /etc/keystone /var/log/keystone
+ insinto /etc/keystone
+ insopts -m0640 -okeystone -gkeystone
+ doins etc/keystone.conf.sample etc/logging.conf.sample
+ doins etc/default_catalog.templates etc/policy.json
+ doins etc/policy.v3cloudsample.json etc/keystone-paste.ini
+ insinto /etc/keystone/httpd
+ doins httpd/*
+
+ fowners keystone:keystone /etc/keystone /etc/keystone/httpd /var/log/keystone
+}
+
+pkg_postinst() {
+ elog "You might want to run:"
+ elog "emerge --config =${CATEGORY}/${PF}"
+ elog "if this is a new install."
+ elog "If you have not already configured your openssl installation"
+ elog "please do it by modifying /etc/ssl/openssl.cnf"
+ elog "BEFORE issuing the configuration command."
+ elog "Otherwise default values will be used."
+}
+
+pkg_config() {
+ if [ ! -d "${ROOT}"/etc/keystone/ssl ] ; then
+ einfo "Press ENTER to configure the keystone PKI, or Control-C to abort now..."
+ read
+ "${ROOT}"/usr/bin/keystone-manage pki_setup --keystone-user keystone --keystone-group keystone
+ else
+ einfo "keystone PKI certificates directory already present, skipping configuration"
+ fi
+}
diff --git a/sys-auth/keystone/keystone-2017.2.9999.ebuild b/sys-auth/keystone/keystone-2017.2.9999.ebuild
new file mode 100644
index 000000000000..e9bfc0ef7fc0
--- /dev/null
+++ b/sys-auth/keystone/keystone-2017.2.9999.ebuild
@@ -0,0 +1,174 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+
+inherit distutils-r1 git-r3 user
+
+DESCRIPTION="The Openstack authentication, authorization, and service catalog"
+HOMEPAGE="https://launchpad.net/keystone"
+EGIT_REPO_URI="https://github.com/openstack/keystone.git"
+EGIT_BRANCH="stable/pike"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS=""
+IUSE="+sqlite ldap memcached mongo mysql postgres test"
+REQUIRED_USE="|| ( mysql postgres sqlite )"
+
+CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/pbr-2.1.0"
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ${CDEPEND}"
+RDEPEND="
+ ${CDEPEND}
+ >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+ !~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.7.1[${PYTHON_USEDEP}]
+ >=dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}]
+ dev-python/paste[${PYTHON_USEDEP}]
+ >=dev-python/routes-2.3.1[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-1.6[${PYTHON_USEDEP}]
+ !~dev-python/cryptography-2.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+ sqlite? (
+ >=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.5[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.6[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.7[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.8[sqlite,${PYTHON_USEDEP}]
+ )
+ mysql? (
+ >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
+ !~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.5[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.6[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.7[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.8[${PYTHON_USEDEP}]
+ )
+ postgres? (
+ >=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.5[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.6[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.7[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.8[${PYTHON_USEDEP}]
+ )
+ >=dev-python/sqlalchemy-migrate-0.11.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/passlib-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/keystonemiddleware-4.12.0[${PYTHON_USEDEP}]
+ >=dev-python/bcrypt-3.1.3[${PYTHON_USEDEP}]
+ >=dev-python/scrypt-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-cache-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-4.0.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-config-4.3.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-config-4.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.14.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-messaging-5.24.2[${PYTHON_USEDEP}]
+ !~dev-python/oslo-messaging-5.25.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.24.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-i18n-3.15.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.22.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-middleware-3.27.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-policy-1.23.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-serialization-1.19.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.20.0[${PYTHON_USEDEP}]
+ >=dev-python/oauthlib-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/pysaml2-2.4.0[${PYTHON_USEDEP}]
+ <dev-python/pysaml2-4.0.3[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-0.6.2[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/jsonschema-2.5.0[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pycadf-1.1.0[${PYTHON_USEDEP}]
+ !~dev-python/pycadf-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/pytz-2013.6[${PYTHON_USEDEP}]
+ memcached? (
+ >=dev-python/python-memcached-1.56[${PYTHON_USEDEP}]
+ )
+ mongo? (
+ >=dev-python/pymongo-3.0.2[${PYTHON_USEDEP}]
+ !~dev-python/pymongo-3.1[${PYTHON_USEDEP}]
+ )
+ ldap? (
+ >=dev-python/pyldap-2.4.20[${PYTHON_USEDEP}]
+ >=dev-python/ldappool-2.0.0[${PYTHON_USEDEP}]
+ )
+ || (
+ www-servers/uwsgi[python,${PYTHON_USEDEP}]
+ www-apache/mod_wsgi[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ )"
+
+#PATCHES=(
+#)
+
+pkg_setup() {
+ enewgroup keystone
+ enewuser keystone -1 -1 /var/lib/keystone keystone
+}
+
+python_prepare_all() {
+ # it's in git, but not in the tarball.....
+ sed -i '/^hacking/d' test-requirements.txt || die
+ mkdir -p ${PN}/tests/tmp/ || die
+ cp etc/keystone-paste.ini ${PN}/tests/tmp/ || die
+ sed -i 's|/usr/local|/usr|g' httpd/keystone-uwsgi-* || die
+ sed -i 's|python|python27|g' httpd/keystone-uwsgi-* || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ nosetests -I 'test_keystoneclient*' \
+ -e test_static_translated_string_is_Message \
+ -e test_get_token_id_error_handling \
+ -e test_provider_token_expiration_validation \
+ -e test_import --process-restartworker --process-timeout=60 || die "testsuite failed under python2.7"
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ diropts -m 0750
+ keepdir /etc/keystone /var/log/keystone
+ insinto /etc/keystone
+ insopts -m0640 -okeystone -gkeystone
+ doins etc/keystone.conf.sample etc/logging.conf.sample
+ doins etc/default_catalog.templates
+ doins etc/policy.v3cloudsample.json etc/keystone-paste.ini
+ insinto /etc/keystone/httpd
+ doins httpd/*
+
+ fowners keystone:keystone /etc/keystone /etc/keystone/httpd /var/log/keystone
+}
+
+pkg_postinst() {
+ elog "You might want to run:"
+ elog "emerge --config =${CATEGORY}/${PF}"
+ elog "if this is a new install."
+ elog "If you have not already configured your openssl installation"
+ elog "please do it by modifying /etc/ssl/openssl.cnf"
+ elog "BEFORE issuing the configuration command."
+ elog "Otherwise default values will be used."
+}
+
+pkg_config() {
+ if [ ! -d "${ROOT}"/etc/keystone/ssl ] ; then
+ einfo "Press ENTER to configure the keystone PKI, or Control-C to abort now..."
+ read
+ "${ROOT}"/usr/bin/keystone-manage pki_setup --keystone-user keystone --keystone-group keystone
+ else
+ einfo "keystone PKI certificates directory already present, skipping configuration"
+ fi
+}
diff --git a/sys-auth/keystone/metadata.xml b/sys-auth/keystone/metadata.xml
new file mode 100644
index 000000000000..c8aa1a2542f0
--- /dev/null
+++ b/sys-auth/keystone/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <use>
+ <flag name="memcached">Installs dependencies needed for using memcached as a backend</flag>
+ <flag name="mongo">Installs dependencies needed for using mongo as a backend</flag>
+ </use>
+ <maintainer type="person">
+ <email>prometheanfire@gentoo.org</email>
+ <name>Matthew Thode</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>openstack@gentoo.org</email>
+ <name>Openstack</name>
+ </maintainer>
+ <longdescription lang="en">
+ Keystone is the Openstack authentication, authorization, and service
+ catalog written in Python.
+ </longdescription>
+ <upstream>
+ <remote-id type="launchpad">keystone</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/libfprint/Manifest b/sys-auth/libfprint/Manifest
new file mode 100644
index 000000000000..b058e62d5cec
--- /dev/null
+++ b/sys-auth/libfprint/Manifest
@@ -0,0 +1,16 @@
+AUX libfprint-0.5.0-automake-1.13.patch 797 SHA256 75d05585c6a9e1080bcee08fdf24c429a5601e1bc545a3c6df8377e90dcf12f4 SHA512 76e059f076348beb720e4f7bf8802b101aaf1d281429cdeb8f54ca67c23a1bf198b0220e4ff67421005cc8797c310f624265d5c91e9160fd78a2a3cf9ef4a39e WHIRLPOOL 2b42f4e7b33ec305feea6008b430bd98c0a1f845cf269c36440d657273043f5051434f4c900375d7e8689ff2ff077fbb6512adfc08d998a852ab56783aeee675
+AUX libfprint-0.5.0-support-147e_2020.patch 1443 SHA256 8e4c6baf2c84398c11221b963aab1a9fefcaee329405e1631808ccd453c01424 SHA512 e8e47563fc09f5ac018a52577db4998c259884a9251b6c7c2709d4e214a1ebe5820b92739da0b1cac88114545d450409454e882591a59fd27ca981172682af9e WHIRLPOOL c2bbfab3d09d312682431ae7f7f38fa21868457b8d567a25537ffbabd8c07362b83d763072b6f342ea2f071b096fedd8fa6f1c3ef486d288904f29132d3d8951
+AUX libfprint-0.6.0-fix-udev-rules.patch 1436 SHA256 854d6e5ca4299b9a4b33513fc91b84c42af133098201fe7a92eeab350237e4c3 SHA512 b3b191814e0decccaa6e6b1edad70db23e756c319e512f0f236a62845de41ba1982b510f3b0edd699202ba8de9f56afa68a9fef000ac88a61c1ae9d8d5d8a55d WHIRLPOOL df1541a2df2d3efee5b4c22e9f4ef5b18da4e7a9cee4978f72745bc2adabf528320b454cb4b081673194ff1f702a20aad7395e71db858faebb5d46a3607d9e79
+DIST libfprint-0.4.0.tar.bz2 228518 SHA256 58f4056f498b8ba564a8ba2ee4a59cf2c3edb53c03e5df390fcf77be75ea7117 SHA512 26361101f5b73f722c14109d7e9cb78738968d2cfc6fcb824dc56f0044c8cd866fcb57e7f432e3ec3eeba956d92b2a091b5daed77c992f61d75cb3ed323adc09 WHIRLPOOL 94502f1350c1d6a1f401671f739f0bd42a581aaff97f1f89517c3c76eeebbef7783ec673a0834e43335a5c8d3231eafcf1c23f6b1ad769e909872844b114b650
+DIST libfprint-0.5.0.tar.bz2 277118 SHA256 1d4d6832fe61e934a40cbe2b9fe9a92153ddccb5c874fce10f476f1113c1d76c SHA512 2a5a4d45bd11060964e34c70b2a41e45d220e3b97d07a962c939ec84988a85a4d97898c86b1e7f7c571d85bb7f4333231cf327f62907b40e6a1262cc5b365981 WHIRLPOOL a3c7763ab62d65e2bdf44e93a5230dcbde7065121427063c8b3bb19d597be1f1b5ae58e55e1e635b03eb004f1e08085585958b5ae0d85a5004dff939657190ad
+DIST libfprint-0.5.1-add-vfs5011-driver.patch 338763 SHA256 329af64cc7273d46a56c603b8d242a51d3485655d475548ea47c66ef874946dd SHA512 446de6dea67c4b4d257f5427b5981f28ba6ab422dcd022862541e6216c1733f146f86ee5a8ad855c142ce1bc7795c72820112d68d68bb74bd68751a02dd42fb5 WHIRLPOOL d08b0011a0363497079c9a16b35e2eae64976c1a3b840e92560c55b399770e62ed4940278c729d24129e34503269876c8bd54d923b7656785ad1cda3ee6c0e1c
+DIST libfprint-0.5.1.tar.bz2 277342 SHA256 0a2ea0e3bd4115bbe7261a0f43d5091ca32f9eaf8ca3364cca2b89c0f30c7962 SHA512 e1596e28f2730501b5957d2b4365f8eead7c0941434d064ceb6e5321d0e8495e71ab576b214881441bf1abc6ecba2b3ffafe5027f738f80c8c38b4e95866c8c7 WHIRLPOOL 444798713bf7603f7aa2bde104c9a62049566fa1e1e5bcf442d3f6212561dae41c69f579a6c5bc9a8df8efd09a60f12b8eb5b9909d1884413ea7e7caba637a37
+DIST libfprint-0.6.0.tar.bz2 323590 SHA256 4e1787da3367d18d931f189a7fd9c92f6dc01f799d0c03ed4595603c1eceaf5c SHA512 2ab9ceec0c357779c94d3b8e94c11a733825bd735bec0e5c762d215d69bf295da0c5db7fd365e2a7efdcf25747777371f793b5e99d5c98e1bf9dcb1170e10ef9 WHIRLPOOL ecd0d3402cd24245f790a34d796a964f6c211096e906299fdce49d5a2eed0f73717e079749c877680e3000d9b4dd11d534759efb313a133e40e950a1a0c62a03
+DIST libfprint-0.6.0_vfs0050.patch.gz 9944 SHA256 0ba035e5da7493da09fbbdc059e209227e6279093a6bd4541de5b47e7900ada8 SHA512 658f936c462cf50d4325d33da6c8298768dfbe4bf442933fc197c8f4bebd741ef6878bcfe123606790c3ddcc3e217fd5f97b3755d36b181c5837dc28e146d674 WHIRLPOOL eb285a54b05809fb594438d0b071d258a97129e45aff07428228fe7700f78328b87437dd8ac2203b1f87111051841726cbd1a41c13e0005a43aa6cf7b5d39953
+EBUILD libfprint-0.4.0-r1.ebuild 1068 SHA256 647e8cd343b2a3f3cf72ef153d00dd8ac51a14b721c18239bc7a90af65de0bc4 SHA512 8c94812ca690945c455dd71f34b50c323e966e2f7997326c003c33ff5403ffde3953efa9fbd8b8c75a50fd9cad805a6e9aa92d0fb6c0ab20da987ff3789a11f9 WHIRLPOOL 4bf14d33cc20dd419964a18ea51e050ad81355e5a55dd6de88a3ff6180d838cc3907f86940dc4dcc02e0a3ba424ef747178835bbc7bb6d47b9a2c8b876b93059
+EBUILD libfprint-0.5.0-r2.ebuild 1195 SHA256 9693fc6b2d61e1a8d7e64c886b813f4eea0beaf6570c4491db0c8060f8a452c8 SHA512 eb8e9519a21653bdef75a998a656ea82443952754c1a7c74d6d611e47b8ce3f1484d2c60f784f4312ce8e6946ff446ff4113a1631a85c28ebc836d1407b09665 WHIRLPOOL e43544e6a8a12cc7da05ca77eaf4ce5406b5a9f0bd6efe91cb74d0f7767d5507626338ddc182f08d30e6f897794afdf767ee775ba4e5b9ce0b62dabc0c533847
+EBUILD libfprint-0.5.1-r2.ebuild 1252 SHA256 c2ed05e229a16923ed60582a315fc805744f5f7412f7d9a5e2cd2d6d3259a871 SHA512 18962e934fc0f562a2fa855134b10cad4b14708d81c5e2974c26ad460211d1d52a3c76f4077fa2fdf46b48c8ab64c8b4061b3e3fdd9ed4ee61bf140a433d1dcb WHIRLPOOL a57e20a42052f32e30eb321894fd4c9ff9e71c443b297f60feb4bf9441c4cf7853abcc6a18d29b6648db881bb78f760739bb34b5fabb51e2b68e367181e6fe83
+EBUILD libfprint-0.6.0-r2.ebuild 1269 SHA256 1972c77d315ecc8ff9f6b59f27a7a8c5be3fbe1dbf63466b3dc68b2c701a0668 SHA512 6b833727a28d441d6c3170b9c09d5254130653eae0fb1ed339485d4e1bb4aeee11cbc5d01ad074b24cc9e6442d679f9efe8d1f05f9eaec8dc7b96c14d721c2d4 WHIRLPOOL cf4bd47e26333e2dfeec615e68e91e5fe68e03aefacbd75b3bef7be9bd4c38f9967c338030df5eb2549232791398faf4405233e667c10ea44c48e22f965e3ab1
+MISC ChangeLog 4939 SHA256 a2f405419b4c27971918e2d358c90533963ed956f4e6b9144dd34f5cc17913b9 SHA512 18f40892e0d7c73938fdc7e97d2cabe0dc2d8c2450806ff7cfc91c354e715973938d4781ac34c682611e1d5a2bbb6369e3abc22e35c70f0569fec1992c4a3733 WHIRLPOOL 42d67a777ebcbd711460fff3462f9dfe9c4f014215921e39d66b168ab71671469cf9186857182ca025b85e099226db4d08c7789f4db2b4a49823b95966fa7f15
+MISC ChangeLog-2015 6159 SHA256 a08b66735ad4248ce960575e636a679048c2edeabf9968ee55bef2c2496d1a11 SHA512 3b5c17a7b770ff525113159732df111a3efbfad3ba6833da2557c049154e6ee8cf17e0612058908c9ce70cc1ccbb2c79e3da6936c2ca03c81fbc27ee8554d14b WHIRLPOOL 50377c37aeb9a8e0361caca44fc2f078012ed3c9ce90bf4cfd2cb5c12f9c58b8d5795603c9c6d6ab5af0e39b59cb03fcc209590d62ef2e16c03d5d83e24787a8
+MISC metadata.xml 348 SHA256 fbc648a1e9c0a408881dff04a13b5cd87f4cd20ec811cf07b6690737f57e3191 SHA512 2f678a8d401f6823cbcd351316428e571a0cc1026656dd249abda031f690feef55f2628b79bea4c0b44c6f70af099717d04bdb854f17a20ee41d46860fd28eff WHIRLPOOL b58b8bdfc8d0d9a47b22d30c92f72cebe51443afca106d258a93f14d614ce076a4a0beb542c5add1033867ad5b3144b93e303adbf7e4733c53568d7038038919
diff --git a/sys-auth/libfprint/files/libfprint-0.5.0-automake-1.13.patch b/sys-auth/libfprint/files/libfprint-0.5.0-automake-1.13.patch
new file mode 100644
index 000000000000..e82082ab6d6a
--- /dev/null
+++ b/sys-auth/libfprint/files/libfprint-0.5.0-automake-1.13.patch
@@ -0,0 +1,24 @@
+From 43eca622cd49b58c87157e1ff1a2fcfdfba0934e Mon Sep 17 00:00:00 2001
+From: Vasily Khoruzhick <anarsoul@gmail.com>
+Date: Sun, 13 Jan 2013 13:42:13 +0000
+Subject: configure.ac: Use AC_CONFIG_HEADERS
+
+AM_CONFIG_HEADER is obsolete, use AC_CONFIG_HEADERS instead of it.
+
+https://bugs.freedesktop.org/show_bug.cgi?id=59320
+---
+diff --git a/configure.ac b/configure.ac
+index 6737256..978ef0d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2,7 +2,7 @@ AC_INIT([libfprint], [0.5.0])
+ AM_INIT_AUTOMAKE([1.11 no-dist-gzip dist-xz check-news])
+ AC_CONFIG_MACRO_DIR([m4])
+ AC_CONFIG_SRCDIR([libfprint/core.c])
+-AM_CONFIG_HEADER([config.h])
++AC_CONFIG_HEADERS([config.h])
+
+ # Enable silent build when available (Automake 1.11)
+ m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/sys-auth/libfprint/files/libfprint-0.5.0-support-147e_2020.patch b/sys-auth/libfprint/files/libfprint-0.5.0-support-147e_2020.patch
new file mode 100644
index 000000000000..98f72aed5a0d
--- /dev/null
+++ b/sys-auth/libfprint/files/libfprint-0.5.0-support-147e_2020.patch
@@ -0,0 +1,48 @@
+From 3b3679c900f6739f7067f8d720e15d548bb39be9 Mon Sep 17 00:00:00 2001
+From: Vasily Khoruzhick <anarsoul@gmail.com>
+Date: Sun, 13 Jan 2013 13:43:38 +0000
+Subject: upeke2: Add support for 147e:2020 ID
+
+https://bugs.freedesktop.org/show_bug.cgi?id=59320
+---
+diff --git a/libfprint/drivers/upeke2.c b/libfprint/drivers/upeke2.c
+index ed8f43d..a7db54d 100644
+--- a/libfprint/drivers/upeke2.c
++++ b/libfprint/drivers/upeke2.c
+@@ -46,6 +46,11 @@
+ #define MSG_READ_BUF_SIZE 0x40
+ #define MAX_DATA_IN_READ_BUF (MSG_READ_BUF_SIZE - 9)
+
++enum {
++ UPEKE2_2016,
++ UPEKE2_2020,
++};
++
+ struct upeke2_dev {
+ gboolean enroll_passed;
+ gboolean first_verify_iteration;
+@@ -848,8 +853,10 @@ static struct fpi_ssm *deinitsm_new(struct fp_dev *dev)
+
+ static int discover(struct libusb_device_descriptor *dsc, uint32_t *devtype)
+ {
+- /* Revision 2 is what we're interested in */
+- if (dsc->bcdDevice == 2)
++ if (dsc->idProduct == 0x2016 && dsc->bcdDevice == 2)
++ return 1;
++
++ if (dsc->idProduct == 0x2020 && dsc->bcdDevice == 1)
+ return 1;
+
+ return 0;
+@@ -1453,7 +1460,8 @@ static int verify_stop(struct fp_dev *dev, gboolean iterating)
+ }
+
+ static const struct usb_id id_table[] = {
+- { .vendor = 0x147e, .product = 0x2016 },
++ { .vendor = 0x147e, .product = 0x2016, .driver_data = UPEKE2_2016 },
++ { .vendor = 0x147e, .product = 0x2020, .driver_data = UPEKE2_2020 },
+ { 0, 0, 0, }, /* terminating entry */
+ };
+
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/sys-auth/libfprint/files/libfprint-0.6.0-fix-udev-rules.patch b/sys-auth/libfprint/files/libfprint-0.6.0-fix-udev-rules.patch
new file mode 100644
index 000000000000..128ac8ce311b
--- /dev/null
+++ b/sys-auth/libfprint/files/libfprint-0.6.0-fix-udev-rules.patch
@@ -0,0 +1,23 @@
+Remove spurious \n to fix udev rule generation
+
+Steven Newbury <steve@snewbury.org.uk>:
+libfprint generates 60-fprint-autosuspend.rules for all supported devices,
+however there's a spurious \n before the ', MODE="0666"' which results in it
+appearing on a new line after the match criteria. At least on current
+systemd/udev this results in MODE="0666" being applied unconditionally to all
+device nodes. This is an extremely serious security problem and effectively
+gives root access to all users simply by having the ebuild emerged.
+
+https://bugs.gentoo.org/562218
+
+--- a/libfprint/fprint-list-udev-rules.c
++++ b/libfprint/fprint-list-udev-rules.c
+@@ -74,7 +74,7 @@
+ if (num_printed == 0)
+ printf ("# %s\n", driver->full_name);
+
+- printf ("SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"%04x\", ATTRS{idProduct}==\"%04x\", ATTRS{dev}==\"*\", TEST==\"power/control\", ATTR{power/control}=\"auto\"\n, MODE=\"0666\"\n", driver->id_table[i].vendor, driver->id_table[i].product);
++ printf ("SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"%04x\", ATTRS{idProduct}==\"%04x\", ATTRS{dev}==\"*\", TEST==\"power/control\", ATTR{power/control}=\"auto\", MODE=\"0666\"\n", driver->id_table[i].vendor, driver->id_table[i].product);
+ printf ("SUBSYSTEM==\"usb\", ATTRS{idVendor}==\"%04x\", ATTRS{idProduct}==\"%04x\", ENV{LIBFPRINT_DRIVER}=\"%s\"\n", driver->id_table[i].vendor, driver->id_table[i].product, driver->full_name);
+ num_printed++;
+ }
diff --git a/sys-auth/libfprint/libfprint-0.4.0-r1.ebuild b/sys-auth/libfprint/libfprint-0.4.0-r1.ebuild
new file mode 100644
index 000000000000..d6f8ebcf26e0
--- /dev/null
+++ b/sys-auth/libfprint/libfprint-0.4.0-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit autotools eutils udev
+
+MY_PV="v_${PV//./_}"
+DESCRIPTION="library to add support for consumer fingerprint readers"
+HOMEPAGE="https://cgit.freedesktop.org/libfprint/libfprint/"
+SRC_URI="https://cgit.freedesktop.org/${PN}/${PN}/snapshot/${MY_PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ia64 ppc ppc64 sparc x86"
+IUSE="debug static-libs"
+
+RDEPEND="virtual/libusb:1
+ dev-libs/nss
+ || ( virtual/imagemagick-tools x11-libs/gdk-pixbuf )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_PV}
+
+src_prepare() {
+ mkdir m4 || die
+ eautoreconf
+}
+
+pkg_setup() {
+ einfo
+ elog "This version does not support fdu2000 and upektc (yet)."
+ einfo
+}
+
+src_configure() {
+ econf \
+ $(use_enable debug debug-log) \
+ $(use_enable static-libs static)
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ udev_rulesdir="$(get_udevdir)/rules.d" \
+ install
+
+ prune_libtool_files
+ dodoc AUTHORS HACKING NEWS README THANKS TODO
+}
diff --git a/sys-auth/libfprint/libfprint-0.5.0-r2.ebuild b/sys-auth/libfprint/libfprint-0.5.0-r2.ebuild
new file mode 100644
index 000000000000..6a9a3d3d00a8
--- /dev/null
+++ b/sys-auth/libfprint/libfprint-0.5.0-r2.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit autotools eutils udev vcs-snapshot
+
+MY_PV="v_${PV//./_}"
+DESCRIPTION="library to add support for consumer fingerprint readers"
+HOMEPAGE="https://cgit.freedesktop.org/libfprint/libfprint/"
+SRC_URI="https://cgit.freedesktop.org/${PN}/${PN}/snapshot/${MY_PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="alpha amd64 ia64 ppc ppc64 x86"
+IUSE="debug static-libs"
+
+RDEPEND="virtual/libusb:1
+ dev-libs/nss
+ || ( virtual/imagemagick-tools x11-libs/gdk-pixbuf )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-automake-1.13.patch"
+ epatch "${FILESDIR}/${P}-support-147e_2020.patch"
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --with-drivers=all \
+ $(use_enable debug debug-log) \
+ $(use_enable static-libs static) \
+ -enable-udev-rules \
+ --with-udev-rules-dir=$(get_udevdir)/rules.d
+ # --disable-udev-rules fails https://bugs.freedesktop.org/show_bug.cgi?id=59076
+ # $(use_enable udev udev-rules) \
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ prune_libtool_files
+
+ dodoc AUTHORS HACKING NEWS README THANKS TODO
+}
diff --git a/sys-auth/libfprint/libfprint-0.5.1-r2.ebuild b/sys-auth/libfprint/libfprint-0.5.1-r2.ebuild
new file mode 100644
index 000000000000..88858c64dcfd
--- /dev/null
+++ b/sys-auth/libfprint/libfprint-0.5.1-r2.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit autotools eutils udev vcs-snapshot
+
+MY_PV="v_${PV//./_}"
+DESCRIPTION="library to add support for consumer fingerprint readers"
+HOMEPAGE="https://cgit.freedesktop.org/libfprint/libfprint/"
+SRC_URI="https://cgit.freedesktop.org/${PN}/${PN}/snapshot/${MY_PV}.tar.bz2 -> ${P}.tar.bz2
+ https://dev.gentoo.org/~patrick/libfprint-0.5.1-add-vfs5011-driver.patch"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~x86"
+IUSE="debug static-libs"
+
+RDEPEND="virtual/libusb:1
+ dev-libs/glib:2
+ dev-libs/nss
+ || ( virtual/imagemagick-tools x11-libs/gdk-pixbuf )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${DISTDIR}/${P}-add-vfs5011-driver.patch" || die
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --with-drivers=all \
+ $(use_enable debug debug-log) \
+ $(use_enable static-libs static) \
+ -enable-udev-rules \
+ --with-udev-rules-dir=$(get_udevdir)/rules.d
+ # --disable-udev-rules fails https://bugs.freedesktop.org/show_bug.cgi?id=59076
+ # $(use_enable udev udev-rules) \
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ prune_libtool_files
+
+ dodoc AUTHORS HACKING NEWS README THANKS TODO
+}
diff --git a/sys-auth/libfprint/libfprint-0.6.0-r2.ebuild b/sys-auth/libfprint/libfprint-0.6.0-r2.ebuild
new file mode 100644
index 000000000000..140d84083302
--- /dev/null
+++ b/sys-auth/libfprint/libfprint-0.6.0-r2.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools eutils udev vcs-snapshot
+
+MY_PV="V_${PV//./_}"
+DESCRIPTION="library to add support for consumer fingerprint readers"
+HOMEPAGE="https://cgit.freedesktop.org/libfprint/libfprint/"
+SRC_URI="https://cgit.freedesktop.org/${PN}/${PN}/snapshot/${MY_PV}.tar.bz2 -> ${P}.tar.bz2
+ https://dev.gentoo.org/~xmw/${P}_vfs0050.patch.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~x86"
+IUSE="debug static-libs vanilla"
+
+RDEPEND="virtual/libusb:1
+ dev-libs/glib:2
+ dev-libs/nss
+ x11-libs/pixman"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}/${P}-fix-udev-rules.patch"
+)
+
+src_prepare() {
+ if ! use vanilla ; then
+ eapply "${WORKDIR}"/${P}_vfs0050.patch
+ fi
+
+ default
+
+ # upeke2 and fdu2000 were missing from all_drivers.
+ sed -e '/^all_drivers=/s:"$: upeke2 fdu2000":' \
+ -i configure.ac || die
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --with-drivers=all \
+ $(use_enable debug debug-log) \
+ $(use_enable static-libs static) \
+ -enable-udev-rules \
+ --with-udev-rules-dir=$(get_udevdir)/rules.d
+}
+
+src_install() {
+ default
+
+ prune_libtool_files
+
+ dodoc AUTHORS HACKING NEWS README THANKS TODO
+}
diff --git a/sys-auth/libfprint/metadata.xml b/sys-auth/libfprint/metadata.xml
new file mode 100644
index 000000000000..8fe32539538d
--- /dev/null
+++ b/sys-auth/libfprint/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+<email>xmw@gentoo.org</email>
+<name>Michael Weber</name>
+</maintainer>
+<upstream>
+ <bugs-to>https://bugs.freedesktop.org/enter_bug.cgi?product=libfprint</bugs-to>
+</upstream>
+</pkgmetadata>
diff --git a/sys-auth/libnss-cache/Manifest b/sys-auth/libnss-cache/Manifest
new file mode 100644
index 000000000000..f5dbf81b62a4
--- /dev/null
+++ b/sys-auth/libnss-cache/Manifest
@@ -0,0 +1,7 @@
+AUX libnss-cache-0.10-fix-shadow-test.patch 410 SHA256 fcd1ff350031c42fff90a4adf7af2702b83db97dc150c9113ecd5db3464a17b7 SHA512 c7ba933a1383d2d7d42967217f8bbaf6fe99c3b9694e725a141d0cd07e94368243806224b3f8137d78ef73b054fcef2bec4695d13b3e88a83afcb34c05940137 WHIRLPOOL e710141adfa90dbf2413318d12d29566ee681f9293d1e520cb75424fffabdf2c627f9b9677612f1fca85dcdb5794f6da31b8161739ad55e876f3f73a01d4edb9
+AUX libnss-cache-0.10.1-make.patch 1640 SHA256 5493b5b9fd1df896a39c982ab5f4e320f0123ea9a73675aeca69bf0f6d7f728a SHA512 baa2000a08e03807b6afd9145c1bbe98e448de909c9aa6d62c88052f33a7a50b6c19691aca64b5c04737fb7281880578c55d10f94bc0856c6ce4af0f24bccb48 WHIRLPOOL d48d4c2e2d34a0e552598edfb47ae8a15edc87687afb3b4030b6fb1437f35fa5eb18623035f139c70b6d503d8361275cc59a9021d036b7e7982eecfae35ff474
+DIST libnss-cache-0.10.2.tar.gz 11967 SHA256 8f0bd1583a0368534ae537552ffb667720134d94375d66b11898faf5cfba7728 SHA512 453624e85ff2692f0724f578ad72df76c96ecb2657eb3a701349025811af4e0c3ecf8e42c35a9a4eddabf4e731c361f4235d7cef34a61aec2e80e1b8728ea98f WHIRLPOOL 00f68545ac5f1a7b7cdb814650fadd29780006786e55398b5d1c6f0767c6039ab91685664f5471dadd7990195414ab7bb73fe7e50cfa5b74d38fc8758576c9f3
+EBUILD libnss-cache-0.10.2.ebuild 878 SHA256 6341b763ebbf3576aa52e9a7c0cc13ff372354700aaebd014a3fe7595af3f961 SHA512 8653304481ca9cb3822fff542a06e89e2985f72441eba57180c40bb98abe504f467c84976a3356502d25b17c0c1d9b20a0d57489edcdec0857062957b1bbb50a WHIRLPOOL 0350f9631f7bc823797310577f133c8a439288994239d9d14fac78b6b84a0bf3b6695485f5bdbc6b3212e1c7c250542f147d06c31bca52bec19e0433b8be7635
+MISC ChangeLog 3456 SHA256 4db73009ffd52c811e6c8a0246a38776ead0122a2f5cb2be5e3053d39fb145d3 SHA512 ad57e071e8adc6fabce850b81b9a4f1ca9c81236478b62df6ffc9ac5d26520e3659d548e3b374ac1d33ab0de719658633b382801991ac74116e21ed1706d353a WHIRLPOOL 347bfe080c9d247b443d90c997afa3505e366f4dd27b9890168864e4b3474faa12d6b6f1c95366b3185053373f0d595a8a9489a3de69979a85519ce9853cd618
+MISC ChangeLog-2015 2037 SHA256 6842d396edf589c05f50cddf17f71964285ffbcbcad44494b4631a7e0bfb343b SHA512 f6668fe63fe014a8e488e3fea9a5d0c47a85b7664a3f34f99a01fa14cab8eca8545e8d98cab56960626a7ced8b4348118595734462b19645aeb5a0ecf36525f7 WHIRLPOOL 7d8633b4d1e749b8adc0a96fe76c190115a15ce85905fa87e7a38a7aebe4120230337544279bd727d36eac706e50f012e2e0b79ad6ccacd7e5a3e2a9a59399a5
+MISC metadata.xml 376 SHA256 d63a5f1e03000dc4cd1212c46885d5ce784670600fceab7415ee64c6d89e54cb SHA512 f5d1c811ef8d4dacf1e440d7a06b90cd36d6f60f8b790021ddd1744f64b08a5632a466179abf5ba2db61701f14384d95b95062a8932ea21b9d0b621c189220da WHIRLPOOL 48580887768a767734fa9292dd8ed28d821e66d7e2978be5c33a94aa396d7f80820035da55338a6cd319c76c1fc837f7a33e312a4ebc09247010bcd7f42ab7da
diff --git a/sys-auth/libnss-cache/files/libnss-cache-0.10-fix-shadow-test.patch b/sys-auth/libnss-cache/files/libnss-cache-0.10-fix-shadow-test.patch
new file mode 100644
index 000000000000..e68546c603a2
--- /dev/null
+++ b/sys-auth/libnss-cache/files/libnss-cache-0.10-fix-shadow-test.patch
@@ -0,0 +1,12 @@
+diff -Nuar libnss-cache-0.10.orig//gen_getent.c libnss-cache-0.10//gen_getent.c
+--- libnss-cache-0.10.orig//gen_getent.c 2011-01-10 19:56:01.000000000 +0000
++++ libnss-cache-0.10//gen_getent.c 2011-01-13 06:43:05.475875153 +0000
+@@ -133,7 +133,7 @@
+ int errnop;
+ enum nss_status ret;
+
+- _nss_cache_setpwent_path(SHADOW_FILE);
++ _nss_cache_setspent_path(SHADOW_FILE);
+
+ buffer = malloc(buflen);
+
diff --git a/sys-auth/libnss-cache/files/libnss-cache-0.10.1-make.patch b/sys-auth/libnss-cache/files/libnss-cache-0.10.1-make.patch
new file mode 100644
index 000000000000..b1ba149529c3
--- /dev/null
+++ b/sys-auth/libnss-cache/files/libnss-cache-0.10.1-make.patch
@@ -0,0 +1,49 @@
+diff --git a/Makefile b/Makefile
+index 1e34d3b..563e467 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,16 +1,16 @@
+-CC=gcc
++CC?=gcc
+ #CFLAGS=-Wall -Wstrict-prototypes -Werror -fPIC -DDEBUG -g -O0
+-CFLAGS=-Wall -Wstrict-prototypes -Werror -fPIC
++CFLAGS+=-Wall -Wstrict-prototypes -fPIC
+ LIBRARY=libnss_cache.so.2.0
+ LINKS=libnss_cache.so.2 libnss_cache.so
+-DESTDIR=/
+-PREFIX=$(DESTDIR)/usr
++DESTDIR?=
++PREFIX?=$(DESTDIR)/usr
+ BUILD=.libs
+ BUILD64=.libs64
+ BUILD32=.libs32
+-LIBDIR=$(PREFIX)/lib
+-LIBDIR64=$(PREFIX)/lib64
+-LIBDIR32=$(PREFIX)/lib32
++LIBDIR?=$(PREFIX)/lib
++LIBDIR64?=$(PREFIX)/lib64
++LIBDIR32?=$(PREFIX)/lib32
+ SONAME=libnss_cache.so.2
+ LD_SONAME=-Wl,-soname,$(SONAME)
+ TESTBIN=.testbin
+@@ -97,17 +97,17 @@ install_amd64: install32
+ nss_cache:
+ [ -d $(BUILD) ] || mkdir $(BUILD)
+ $(CC) $(CFLAGS) -c nss_cache.c -o $(BUILD)/nss_cache.o
+- $(CC) -shared $(LD_SONAME) -o $(BUILD)/$(LIBRARY) $(BUILD)/nss_cache.o
++ $(CC) $(LDFLAGS) -shared $(LD_SONAME) -o $(BUILD)/$(LIBRARY) $(BUILD)/nss_cache.o
+
+ nss_cache64: nss_cache
+ [ -d $(BUILD64) ] || mkdir $(BUILD64)
+ $(CC) $(CFLAGS) -m64 -c nss_cache.c -o $(BUILD64)/nss_cache.o
+- $(CC) -m64 -shared $(LD_SONAME) -o $(BUILD64)/$(LIBRARY) $(BUILD64)/nss_cache.o
++ $(CC) $(LDFLAGS) -m64 -shared $(LD_SONAME) -o $(BUILD64)/$(LIBRARY) $(BUILD64)/nss_cache.o
+
+ nss_cache32: nss_cache
+ [ -d $(BUILD32) ] || mkdir $(BUILD32)
+ $(CC) $(CFLAGS) -m32 -c nss_cache.c -o $(BUILD32)/nss_cache.o
+- $(CC) -m32 -shared $(LD_SONAME) -o $(BUILD32)/$(LIBRARY) $(BUILD32)/nss_cache.o
++ $(CC) $(LDFLAGS) -m32 -shared $(LD_SONAME) -o $(BUILD32)/$(LIBRARY) $(BUILD32)/nss_cache.o
+
+ clean:
+ rm -rf $(BUILD)
diff --git a/sys-auth/libnss-cache/libnss-cache-0.10.2.ebuild b/sys-auth/libnss-cache/libnss-cache-0.10.2.ebuild
new file mode 100644
index 000000000000..0c1a0b837148
--- /dev/null
+++ b/sys-auth/libnss-cache/libnss-cache-0.10.2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=3
+
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="libnss-cache is a library that serves nss lookups"
+HOMEPAGE="https://github.com/google/nsscache"
+SRC_URI="https://nsscache.googlecode.com/files/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="multilib"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.10.1-make.patch
+ epatch "${FILESDIR}"/${PN}-0.10-fix-shadow-test.patch
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" nss_cache || die
+ if use multilib && has_multilib_profile; then
+ emake CC="$(tc-getCC)" nss_cache32 || die
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" LIBDIR="${D}/usr/$(get_libdir)" install || die
+ if use multilib && has_multilib_profile; then
+ emake DESTDIR="${D}" LIBDIR="${D}/usr/$(get_libdir)" install32 || die
+ fi
+}
diff --git a/sys-auth/libnss-cache/metadata.xml b/sys-auth/libnss-cache/metadata.xml
new file mode 100644
index 000000000000..b52fc03c3e48
--- /dev/null
+++ b/sys-auth/libnss-cache/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xmw@gentoo.org</email>
+ <name>Michael Weber</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="google-code">nsscache</remote-id>
+ <remote-id type="github">google/nsscache</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/libnss-mysql/Manifest b/sys-auth/libnss-mysql/Manifest
new file mode 100644
index 000000000000..551ffa99619f
--- /dev/null
+++ b/sys-auth/libnss-mysql/Manifest
@@ -0,0 +1,7 @@
+AUX libnss-mysql-1.5_p20060915-no-automagic-debug.diff 610 SHA256 db5a4f5ad01f34db17c1f755ccbd20a8861c00674be2d8ab7b8481afa1d32ecd SHA512 f8e33bd221dd1662933510ccf9648a152e78c38e6b0d155ae82c3eff49f0f621b3661aa07bf8d8d84b53e14a048ea6765561c16c38e07286cb93bee6a51a91e7 WHIRLPOOL 37412fd1ee609d9a977b22aca49d95b04d81e1387a87b027179a7a93a012875d3de0a6c60ec867ed2cdc46a6706ad2d7aa45459ce05c5ca771ec8470a90dc72f
+DIST libnss-mysql-20060915.tgz 689970 SHA256 d0705ab7a185146d050a9ef486c4af03d66fb61fb511c4e0d29714b4c3e5848f SHA512 fc92438b413b175b9bcead222013eab3bf63088a33ece0c4b6cc69edbefb9cc9145138ce786059acf502c2378a2af45588a5a506e45928b9ac600fe05e62e0c7 WHIRLPOOL ca817d9ce10394455cee6ba5790d02ce658c184700706fbb9ccc90cdf67a57003bb47795c63023e18a0e79b4bfcdeaf1b001ba45f2242d0a664e3705a57040d0
+EBUILD libnss-mysql-1.5_p20060915-r2.ebuild 1220 SHA256 bc6e5954b38dead133d9c1ca74fd0ab51ad780ad37fa5aac4be57037e6e0e607 SHA512 6001953dfc5233d31fdbc84f60f63ce6103814157335f7d70c84ef22a47f6ef63c147718d1961414cc00f1252451e3e3848797a396672e39dd757c4340f52e38 WHIRLPOOL 54a06628ccd219abaf16b97f0942816231b82f7c5fb7bc41ce10b5244f6ed78c55266ef7ca232752cb749b9e78006b936252555755051745b6e47b0d03384aa7
+EBUILD libnss-mysql-1.5_p20060915-r3.ebuild 1195 SHA256 fad7549f810dea34a9b73faf1a918878cc56410bb5ca88b7c7cc505fcd7bd479 SHA512 f88a76eb69ab1c94b5bc32ed07e486e81ffda2935aa0071a374ea4408a13d2114aad9fc75caddb05d96f096ff42c2031b43bc8e3f8212bc74b1f2091a5ce5efe WHIRLPOOL 85a68d457ee5eb0050178ac82d392bde2fbe295e5209c8f459fa757f80d020e34115aa8c9be47f56f41b0d96eeb92d51bc2ae18b0ccea4d648f91ed862d7b460
+MISC ChangeLog 3157 SHA256 f7e709df386ca1219d79e854f8e88feafe83699863a201178fe00684f3005948 SHA512 9ef0d6371075e22fe30008e9f5f6a9c86b6f0fcfa5be92637d4d012f314eabcc424310a4fe9bdeb543874b502474111268794f259777340cc480ecc49c32ea62 WHIRLPOOL 15ae7ef9b28b0ed2852257049547d7298ba64e84655ef9a54ffd59472bae7a44f99801fc52055ec33e0fdabc3665d9fb002daedc774db95ca95eae243c76f5c4
+MISC ChangeLog-2015 6273 SHA256 3f440d9e20b2f867799db2ae03d89a86a07117f3cd594d928258b222eff61afd SHA512 38462ea21a37bbef4d064f276ffbda36525af498d6acc069b5837e26affa1baee1608db07c4f3dfc3665ff3eb6ebbf7760dbb654501e7116cb0de86eccac3454 WHIRLPOOL b09ed997b87bfac0777c826fae64169f58460b009bb76e0f442fe91ba9336b481716bab0ad75cced8f649b83b5c55bd1bd8f8e9d3b6f0a95af324c72bbfa96b5
+MISC metadata.xml 402 SHA256 6f07d44e79709341b380a1b7f5a52622506559fba502de6e9e0c93dc9e63104c SHA512 aa5fef79114433f7b68a3b4d67d60edc5012a874f5dc59166634abb1d10298f7d5b2c27ead34d7df2d8dd9b603aee2d8a5e75697dcd861e2da94183b4b17723e WHIRLPOOL 79ba92b2fe16344bd7fb76a985dd396b262e2402b28fff42cf94d6901c919acfbc46df2c754d43e273fd53c7665e30380c438419e03f3f5e4972eadbc5513125
diff --git a/sys-auth/libnss-mysql/files/libnss-mysql-1.5_p20060915-no-automagic-debug.diff b/sys-auth/libnss-mysql/files/libnss-mysql-1.5_p20060915-no-automagic-debug.diff
new file mode 100644
index 000000000000..292ae9e19476
--- /dev/null
+++ b/sys-auth/libnss-mysql/files/libnss-mysql-1.5_p20060915-no-automagic-debug.diff
@@ -0,0 +1,14 @@
+diff -NuarwPbB libnss-mysql.orig/configure.in libnss-mysql/configure.in
+--- libnss-mysql.orig/configure.in 2005-09-04 03:34:00.000000000 +0000
++++ libnss-mysql/configure.in 2010-09-08 18:12:24.577317098 +0000
+@@ -38,7 +38,9 @@
+ AC_ARG_WITH(mysql,
+ [ --with-mysql=DIR Location of your MySQL installation])
+ AC_ARG_ENABLE(debug,
+- [ --enable-debug Enable debug (see DEBUGGING)],
++ [ --enable-debug Enable debug (see DEBUGGING)])
++
++AS_IF([test "x$enable_debug" = "xyes"],
+ [AC_DEFINE([DEBUG], 1, [Enable debug])])
+
+ case "$target_os" in
diff --git a/sys-auth/libnss-mysql/libnss-mysql-1.5_p20060915-r2.ebuild b/sys-auth/libnss-mysql/libnss-mysql-1.5_p20060915-r2.ebuild
new file mode 100644
index 000000000000..aa1ec7dbf985
--- /dev/null
+++ b/sys-auth/libnss-mysql/libnss-mysql-1.5_p20060915-r2.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=2
+
+inherit eutils multilib autotools
+
+KEYWORDS="amd64 ppc ~sparc x86"
+
+DESCRIPTION="NSS MySQL Library"
+HOMEPAGE="http://libnss-mysql.sourceforge.net/"
+SRC_URI="http://libnss-mysql.sourceforge.net/snapshot/${PN}-${PV/1.5_p/}.tgz"
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug"
+
+DEPEND="virtual/mysql"
+RDEPEND="${DEPEND}"
+S="${WORKDIR}/${PN}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-no-automagic-debug.diff
+ eautoconf
+}
+
+src_configure() {
+ # Usually, authentication libraries don't belong into usr.
+ # But here, it's required that the lib is in the same dir
+ # as libmysql, because else failures may occur on boot if
+ # udev tries to access a user / group that doesn't exist
+ # on the system before /usr is mounted.
+ econf --libdir="/usr/$(get_libdir)" \
+ $(use_enable debug)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+
+ find "${D}" -name '*.la' -delete
+
+ newdoc sample/README README.sample
+ dodoc AUTHORS DEBUGGING FAQ INSTALL NEWS README THANKS \
+ TODO UPGRADING ChangeLog
+
+ for subdir in sample/{linux,freebsd,complex,minimal} ; do
+ docinto "${subdir}"
+ dodoc "${subdir}/"{*.sql,*.cfg}
+ done
+}
diff --git a/sys-auth/libnss-mysql/libnss-mysql-1.5_p20060915-r3.ebuild b/sys-auth/libnss-mysql/libnss-mysql-1.5_p20060915-r3.ebuild
new file mode 100644
index 000000000000..5be867817484
--- /dev/null
+++ b/sys-auth/libnss-mysql/libnss-mysql-1.5_p20060915-r3.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils multilib autotools
+
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+
+DESCRIPTION="NSS MySQL Library"
+HOMEPAGE="http://libnss-mysql.sourceforge.net/"
+SRC_URI="http://libnss-mysql.sourceforge.net/snapshot/${PN}-${PV/1.5_p/}.tgz"
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug"
+
+DEPEND="virtual/mysql"
+RDEPEND="${DEPEND}"
+S="${WORKDIR}/${PN}"
+
+DOCS=( AUTHORS DEBUGGING FAQ INSTALL NEWS README THANKS
+ TODO UPGRADING ChangeLog
+)
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-no-automagic-debug.diff
+ eautoconf
+}
+
+src_configure() {
+ # Usually, authentication libraries don't belong into usr.
+ # But here, it's required that the lib is in the same dir
+ # as libmysql, because else failures may occur on boot if
+ # udev tries to access a user / group that doesn't exist
+ # on the system before /usr is mounted.
+ econf --libdir="/usr/$(get_libdir)" \
+ $(use_enable debug)
+}
+
+src_install() {
+ default
+
+ find "${D}" -name '*.la' -delete
+
+ newdoc sample/README README.sample
+
+ for subdir in sample/{linux,freebsd,complex,minimal} ; do
+ docinto "${subdir}"
+ dodoc "${subdir}/"{*.sql,*.cfg}
+ done
+}
diff --git a/sys-auth/libnss-mysql/metadata.xml b/sys-auth/libnss-mysql/metadata.xml
new file mode 100644
index 000000000000..7061f94bfe60
--- /dev/null
+++ b/sys-auth/libnss-mysql/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>hanno@gentoo.org</email>
+ </maintainer>
+ <maintainer type="project">
+ <email>mysql-bugs@gentoo.org</email>
+ <name>MySQL</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">libnss-mysql</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/libnss-pgsql/Manifest b/sys-auth/libnss-pgsql/Manifest
new file mode 100644
index 000000000000..c25eaf6266cf
--- /dev/null
+++ b/sys-auth/libnss-pgsql/Manifest
@@ -0,0 +1,10 @@
+AUX libnss-pgsql-1.4.0-gentoo.patch 398 SHA256 9c6d4f5cc7f0006ab8045a501ab07321bd4e873d278f517919f12381423cc7ae SHA512 a9865c1d5325937d02f5684f1e69238a3e6b5a2234a36d60c1825285fbe6ea2612a9254d3d5312f6c804b488ecefc9425745ce4ca2ca333fc874dc1ba6e7ad05 WHIRLPOOL a6ddcd699731c3ffe01aa81ba2c685a56232575690e14a12b3a48da833d50fbbd87536e071aa52912740adce31af910b78db584963869a3f0ae593a00c095878
+AUX libnss-pgsql-1.4.0-schema.patch 811 SHA256 0ff80679cde52330ff4decdd3e739817e0ab57ecfe425dc7adb117b7bbd2f5a6 SHA512 07f08fdec30b46426a27a01dccc0d01dbe90a1d535333b6260fdf515e3159325b48994a98e12d9eee7fcbe6b3f63c71a187a327e0dab26a91208ff5531daf346 WHIRLPOOL b967bdac1439d570ca9999417f10595cc5cb66497139a96d3b7e83d6a862e208387d0f68a7bb42f5ce90b3a221d0a1917b8e5928fe564c609cb8a0fb09ef1bd2
+AUX libnss-pgsql-1.5.0_beta-gentoo.patch 1479 SHA256 d03b1c30c8e547838e99015a1d3dc74356abde73487b3acaf2e41d83b5aff6d0 SHA512 b02b7cdfb711bf1b857c313df73c89544338917c0cccae2bedce43e85c0d6bfd3d15128c6024dad23f1ce23f9041e36f8c1644e3b5b24cbae9677b12c63e506b WHIRLPOOL e410dad981c2badc9fe13992bbeaf7c7c4acce30a5031befc29a121403cdb79e93a87aa9dc64570c87c74565fb2f5236dc1b1287ce76abb0c9c562b94ab24094
+DIST libnss-pgsql-1.4.0.tgz 244076 SHA256 776efc43b21323380f9b1cf32b4463eddd7050d19912418ea58b856b96c9ee25 SHA512 e7d0ea5198e44c1cad2c22f8346ff7198c028bf664fe5dbd23ec4d4a0ade32ba4aa5174eae071982a2cc385782d3d7e1a804650e4ed25c2b2b2fb5187bc8f5f8 WHIRLPOOL 79360c93cf6613dc11d5b3b1779717eab7ff0263119a9b56367b3d7e65d78dcf1f002a993c04553932939d89b4f3cb79e54fde32e7356cb3664ecd43e63728b3
+DIST libnss-pgsql-1.5.0-beta.tgz 305543 SHA256 84808c47fd21a09e2c487a0efc72cc18b352275082335be8c6de39d325e6c000 SHA512 cabc09337841aadb27790fb66bb55f7da70b52d4e28c717d83ad63b440ac65d8e72505e602b1324d8091ace8b9fe90510492ce0dec17148b74288a2524726cc8 WHIRLPOOL 34f4c79b738c96c07be2cc562b63a127c63428c32aa811e1e42d272845736ab1385427e13472349a5a181caa2927c05164950491106dfd8e0d1cb636ce37901a
+EBUILD libnss-pgsql-1.4.0.ebuild 1488 SHA256 cbe01294e20bbd631e97925cfacda61aeab7e3fcbbd6fa419d27d7f23a40096e SHA512 eb85ca9e04d1a1df7546917e494c93fb342292008d6b67dd71eaaa684805f9f410aeb65176cfeccda6e68ab4ea5275174a89ec3268a1048d8d720eeede9b2ec4 WHIRLPOOL ba2a299526191cea4d10458ad0951643d72a43e9bdb916899889b154750005b27ae2bfe98e7d06d8b985b3d267df500d3fe6aba3c55e9145c918a5e4b0457639
+EBUILD libnss-pgsql-1.5.0_beta.ebuild 1371 SHA256 3b55358411b8bd07e0a48ce8c47df318bc9dd0ff5de30b87b448ada2e6b6a2a3 SHA512 b9fd2fef2337c1f79b2de9fdba54b84725db983c71e098d7347aaec9df38fb18e20a7c09c6c24143b02f4f85b8a0f94c286b5353c142e929ead4d138244c7406 WHIRLPOOL b22799031f9b9a2431da326bb761fd11f5ca3a2bc541f61039e46a421e74d2f814e5afccfd6b210423cde0ec6b471579ce605b0c5048171955b180f6e9b1e1df
+MISC ChangeLog 2645 SHA256 e5be11988b16b5781d3bd919a3ed436b5479112cd7d4a608697bc98433949d30 SHA512 19805e4e0f79a94aee50f40b7036e2e1909f4c3afbc5ae909d28560550d4dbf3430642f9c046df7457f3ec690099a60562c3561891e76b3ed1284b43c3912838 WHIRLPOOL 8b80b3278a759bd1d37cf78330f6da16b9ca9a8bc0b3d3b20f1841e61fa08d727b90a7243b7449e64c22e5ac6632e1ae4a519f1f84aa6497f3d19b5d2fb8996e
+MISC ChangeLog-2015 2553 SHA256 3e52dd9a9cae61e3cba1cd1cb09056a68b600057dbad06df425e12fca6fcc5c3 SHA512 e7f00758ea75a21bad4a5530574885bd5bf87489c87c9b7686cf95f18e9baa616ce308de44df5f5d089fdd4513a8cb7e41765645825385bb0851b6a7fa446aaf WHIRLPOOL 644afb60137aad0649e52c437c0fda8bcc8b1dc31626b83873336e3b5f43f0cf154a61fbd90e7241c431b2fa9ea57474f7a0cb5118523b5e6ad8f82262bbd9b2
+MISC metadata.xml 276 SHA256 209456996c1a24f1f3f20ac3ae0bd554c5fe6b4f80419f5ddd3b0629c7c91705 SHA512 9baebf6fa9794fac7cdd2157f9bddcf341cf8cbddcc63f24db64322a662eddb6ff9940d85b2f9fc7809af0554ae6a038b7916c5ccea7ccce30ff7bf6aca33db1 WHIRLPOOL 9854a94d916d1666359889b827e010413840aa8f50ed01658ed3ac5d48edcab7b1086b3f2a02b83ac4e7114c13c62bef2def43f7c92e876a5390a26af80ee2cd
diff --git a/sys-auth/libnss-pgsql/files/libnss-pgsql-1.4.0-gentoo.patch b/sys-auth/libnss-pgsql/files/libnss-pgsql-1.4.0-gentoo.patch
new file mode 100644
index 000000000000..7a2a938b5c78
--- /dev/null
+++ b/sys-auth/libnss-pgsql/files/libnss-pgsql-1.4.0-gentoo.patch
@@ -0,0 +1,12 @@
+diff -Nur libnss-pgsql-1.4.0.orig/src/backend.c libnss-pgsql-1.4.0/src/backend.c
+--- libnss-pgsql-1.4.0.orig/src/backend.c 2001-10-18 13:32:52.000000000 +0200
++++ libnss-pgsql-1.4.0/src/backend.c 2003-11-28 16:14:38.000000000 +0100
+@@ -9,7 +9,7 @@
+ */
+
+ #include "nss-pgsql.h"
+-#include <postgresql/libpq-fe.h>
++#include <libpq-fe.h>
+ #include <stdlib.h>
+ #include <string.h>
+ #include <stdio.h>
diff --git a/sys-auth/libnss-pgsql/files/libnss-pgsql-1.4.0-schema.patch b/sys-auth/libnss-pgsql/files/libnss-pgsql-1.4.0-schema.patch
new file mode 100644
index 000000000000..6d2b338f45cf
--- /dev/null
+++ b/sys-auth/libnss-pgsql/files/libnss-pgsql-1.4.0-schema.patch
@@ -0,0 +1,22 @@
+--- conf/dbschema.sql.orig 2005-05-04 04:27:51.000000000 +0200
++++ conf/dbschema.sql 2006-11-11 22:37:01.000000000 +0100
+@@ -19,15 +19,16 @@
+ "gecos" character varying(128),
+ "homedir" character varying(256) NOT NULL,
+ "shell" character varying DEFAULT '/bin/bash' NOT NULL,
+- PRIMARY KEY ("username")
++ PRIMARY KEY ("username"),
++ UNIQUE ("uid")
+ );
+
+ CREATE TABLE "usergroups" (
+ "gid" int4 NOT NULL,
+ "uid" int4 NOT NULL,
+ PRIMARY KEY ("gid", "uid"),
+- CONSTRAINT "ug_gid_fkey" FOREIGN KEY ("gid") REFERENCES "groups"("gid"),
+- CONSTRAINT "ug_uid_fkey" FOREIGN KEY ("uid") REFERENCES "accounts"("uid")
++ CONSTRAINT "ug_gid_fkey" FOREIGN KEY ("gid") REFERENCES "group_table"("gid"),
++ CONSTRAINT "ug_uid_fkey" FOREIGN KEY ("uid") REFERENCES "passwd_table"("uid")
+ );
+
+ CREATE TABLE "shadow_table" (
diff --git a/sys-auth/libnss-pgsql/files/libnss-pgsql-1.5.0_beta-gentoo.patch b/sys-auth/libnss-pgsql/files/libnss-pgsql-1.5.0_beta-gentoo.patch
new file mode 100644
index 000000000000..69aefa8c6064
--- /dev/null
+++ b/sys-auth/libnss-pgsql/files/libnss-pgsql-1.5.0_beta-gentoo.patch
@@ -0,0 +1,44 @@
+Index: libnss-pgsql-1.5.0-beta/src/backend.c
+===================================================================
+--- libnss-pgsql-1.5.0-beta.orig/src/backend.c
++++ libnss-pgsql-1.5.0-beta/src/backend.c
+@@ -11,7 +11,7 @@
+ */
+
+ #include "nss-pgsql.h"
+-#include <postgresql/libpq-fe.h>
++#include <libpq-fe.h>
+ #include <stdlib.h>
+ #include <string.h>
+ #include <stdio.h>
+Index: libnss-pgsql-1.5.0-beta/doc/Makefile.am
+===================================================================
+--- libnss-pgsql-1.5.0-beta.orig/doc/Makefile.am
++++ libnss-pgsql-1.5.0-beta/doc/Makefile.am
+@@ -1,14 +1,6 @@
+ TARGETS = nss-pgsql.html
+
+-all html: $(TARGETS)
+-
+-install-data-local: $(TARGETS)
+- $(mkinstalldirs) $(DESTDIR)$(docdir)
+- $(INSTALL_DATA) nss-pgsql.html $(DESTDIR)$(docdir)
+- $(INSTALL_DATA) $(srcdir)/caution.png $(DESTDIR)$(docdir)
+-
+-clean-local:
+- rm -f $(TARGETS)
++html_DATA = $(TARGETS) caution.png
+
+ nss-pgsql.html: config.xsl nss-pgsql.xml
+ xmlto xhtml-nochunks -m $(srcdir)/config.xsl $(srcdir)/nss-pgsql.xml
+Index: libnss-pgsql-1.5.0-beta/src/Makefile.am
+===================================================================
+--- libnss-pgsql-1.5.0-beta.orig/src/Makefile.am
++++ libnss-pgsql-1.5.0-beta/src/Makefile.am
+@@ -1,5 +1,5 @@
+ lib_LTLIBRARIES = libnss_pgsql.la
+ libnss_pgsql_la_SOURCES = interface.c config.c backend.c util.c
+-libnss_pgsql_la_LDFLAGS = -module -version-info 2
++libnss_pgsql_la_LDFLAGS = -module -version-info 2 -shared
+ EXTRA_DIST = nss-pgsql.h
+
diff --git a/sys-auth/libnss-pgsql/libnss-pgsql-1.4.0.ebuild b/sys-auth/libnss-pgsql/libnss-pgsql-1.4.0.ebuild
new file mode 100644
index 000000000000..00300cdb9c3e
--- /dev/null
+++ b/sys-auth/libnss-pgsql/libnss-pgsql-1.4.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit autotools eutils multilib
+
+KEYWORDS="~x86"
+
+DESCRIPTION="Name Service Switch module for use with PostgreSQL"
+HOMEPAGE="http://pgfoundry.org/projects/sysauth/"
+SRC_URI="http://pgfoundry.org/frs/download.php/605/${P}.tgz"
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+DEPEND="dev-db/postgresql
+ app-text/xmlto"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/${P}-gentoo.patch"
+ epatch "${FILESDIR}/${P}-schema.patch"
+ eautoreconf
+}
+
+src_compile() {
+ econf \
+ --libdir=/lib \
+ --with-docdir=/usr/share/doc/${PF}/html || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ insinto /$(get_libdir)
+ doins src/.libs/libnss_pgsql.so.2.0.0
+ dosym libnss_pgsql.so.2.0.0 /lib/libnss_pgsql.so.2
+ dosym libnss_pgsql.so.2.0.0 /lib/libnss_pgsql.so
+
+ dodoc AUTHORS ChangeLog NEWS README
+ dohtml doc/*.{png,html}
+ insinto /usr/share/doc/${PF}/examples
+ doins conf/*
+}
+
+pkg_postinst() {
+ elog "Next steps:"
+ elog "1. Create the required tables in the database:"
+ elog " $ psql a_database -f ${ROOT}usr/share/${PN}/conf/dbschema.sql"
+ elog "2. Create the configuration file '/etc/nss-pgsql.conf'"
+ elog " You can copy the example from ${ROOT}usr/share/doc/${PF}/examples/nss-pgsql.conf"
+ elog "3. Edit /etc/nsswitch.conf to use the NSS service 'pgsql'"
+ elog " An example is available here: ${ROOT}usr/share/doc/${PF}/examples/nsswitch.conf"
+}
diff --git a/sys-auth/libnss-pgsql/libnss-pgsql-1.5.0_beta.ebuild b/sys-auth/libnss-pgsql/libnss-pgsql-1.5.0_beta.ebuild
new file mode 100644
index 000000000000..5a7e23e6b5d2
--- /dev/null
+++ b/sys-auth/libnss-pgsql/libnss-pgsql-1.5.0_beta.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit autotools eutils multilib
+
+KEYWORDS="~amd64 ~x86"
+
+DESCRIPTION="Name Service Switch module for use with PostgreSQL"
+HOMEPAGE="http://pgfoundry.org/projects/sysauth/"
+
+MY_P="${P/_/-}"
+SRC_URI="http://pgfoundry.org/frs/download.php/1878/${MY_P}.tgz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+RDEPEND="dev-db/postgresql"
+DEPEND="${RDEPEND}
+ app-text/xmlto"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/${P}-gentoo.patch"
+ eautoreconf
+}
+
+src_compile() {
+ econf \
+ --htmldir=/usr/share/doc/${PF}/html || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+ find "${D}" -name '*.la' -delete || die
+
+ dodoc AUTHORS ChangeLog NEWS README || die
+ insinto /usr/share/doc/${PF}/examples
+ doins conf/* || die
+}
+
+pkg_postinst() {
+ elog "Next steps:"
+ elog "1. Create the required tables in the database:"
+ elog " $ psql a_database -f /usr/share/doc/${PF}/examples/dbschema.sql"
+ elog "2. Create the configuration file '/etc/nss-pgsql.conf'"
+ elog " You can copy the example from /usr/share/doc/${PF}/examples/nss-pgsql.conf"
+ elog "3. Edit /etc/nsswitch.conf to use the NSS service 'pgsql'"
+ elog " An example is available here: /usr/share/doc/${PF}/examples/nsswitch.conf"
+}
diff --git a/sys-auth/libnss-pgsql/metadata.xml b/sys-auth/libnss-pgsql/metadata.xml
new file mode 100644
index 000000000000..3ff7fac5a02a
--- /dev/null
+++ b/sys-auth/libnss-pgsql/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>pgsql-bugs@gentoo.org</email>
+ <name>PostgreSQL and Related Package Development</name>
+</maintainer>
+</pkgmetadata>
diff --git a/sys-auth/libyubikey/Manifest b/sys-auth/libyubikey/Manifest
new file mode 100644
index 000000000000..6db48d9e59b6
--- /dev/null
+++ b/sys-auth/libyubikey/Manifest
@@ -0,0 +1,7 @@
+DIST libyubikey-1.12.tar.gz 346729 SHA256 b95387f791dad4d2544282299800f016736c363838e1e732f199bf90eba717b8 SHA512 dcfe0f0f33e98a56ca0971140e9fb0d7689236c0062f38eb92b6c3f6df3d576882aaffc153f5fc1c6f5edca5781c34801aa6a87e63c726999f5de003ad366d27 WHIRLPOOL 558f8b4664ce888b8871f214c7022d14ecca7c12bd1550b74e1810a421381ae29ef1064d7ed1726680d5847facdb48f1a3065dc9bde9b5093ff3f648706710fa
+DIST libyubikey-1.13.tar.gz 347337 SHA256 04edd0eb09cb665a05d808c58e1985f25bb7c5254d2849f36a0658ffc51c3401 SHA512 28f45cb9817c30a70d168ae507d3f8014051058d730eed92b31d92e96784138dea291bda4275511c5f92a6427cb4249d76c802b8abb867cec50e62fb770950f2 WHIRLPOOL c961fb9efa5eea9c5256b62c4363c9c5cfae8623518e9cbff851dce698d90880e0b6443739da7c955d869428a12b226ad52da55bcd7d64199619315d1495bfc8
+EBUILD libyubikey-1.12.ebuild 472 SHA256 c2f477bdd4ea862486ae8fed5a7d30d7816b53a265d4af741d916cd95eaa2a82 SHA512 b89f450c4a0f62b0a9ab5ba29935226a38f37ca7b550c95012a1e8de39634fef795fd7c5af0d23d8907e01ee89477d825d0fe8ebe1987d4eae0ded3dc5f4ccb9 WHIRLPOOL 954cb33f9a8e06e63063e3f14d9903326b31f25a7f3ace96c9e6159ebf0e781f81118ad170c39d7b86046fe7dad0e4d1a5a1b9dd2c9ddd8335acd882640a635c
+EBUILD libyubikey-1.13.ebuild 472 SHA256 75c9c4c0d7c60f802a9e063d5303b61920003da11e1707d62b99e314b831c2ff SHA512 578b97bb7e83aa067cb3463f8e4e68234db6c020efdf00cbdae5099e3f660b2bc84e2c1e60a7d4e874039a38591903460e8cef62e0e8f8e8895a19a9eb05dedc WHIRLPOOL ad7efbf6c5576cd74bf766e6d80bbc0c0890a9ff853e4174b119b4279835a248d8927a56cf8462439e4a129707394aff5c61b316e0c3d6ca69baffbd64df43b0
+MISC ChangeLog 2610 SHA256 17260c9aede3ffaf3d72ec3802d1ffc371ef186a937ea6662a8e76abca82101c SHA512 dcce67275623cbe41019871b5a71a2d0e339b9f58a37f5f4a0816732453c2aaa9eb9f344c659892adc744e41b99ebf37fb0411134114b44d9aad015300aa3444 WHIRLPOOL 500d91448ba597388a4e0223026545ed9c33225ba74c77faed9d2d6d5e190a352ee70dc65cc782a1cc85363318fcc0e72ddadeaa416d92b386e2a9a54f12a0d4
+MISC ChangeLog-2015 1743 SHA256 ba2823f43d74ab3bb913ca98356ace41328f05f5118f99fdcdb68de3315523b5 SHA512 9b0009133bf5a6e54cd2186e2f7e3493e917858450a8f08f96d49c99431b86f4cd2c3716a49514f3510756456506afadbcb7b68d15ef302a6ddd977a4fa3f312 WHIRLPOOL 1c975411936e9c850f24cf0c6a69d73963e5fce7c20be14848e410cda363d1dd600c471ad4eaf7f32bc9eef85f4f6379ddac5a72f057b65c5172171631ea7965
+MISC metadata.xml 396 SHA256 8c3dbd9fa5770dd1451f63ff34b2cd5535bd3c5befd67f82033b41d873ea2035 SHA512 87cbf3538d70332da7b2ffb4019b62aa4cd330cc6bda41141c4afcd352e3bf25880004364b0aafa790d2c66db9c1a80cd7f94e2207abe713c3adfadbd369b7e1 WHIRLPOOL 9bc50c2b578df4b340bc28a99b5323de41059f5b013698c425ece7cc1219174a2f7504a2532d185123d5009d7b4fb16aaad1c59975812df05d2df30856141d19
diff --git a/sys-auth/libyubikey/libyubikey-1.12.ebuild b/sys-auth/libyubikey/libyubikey-1.12.ebuild
new file mode 100644
index 000000000000..7885ff68700c
--- /dev/null
+++ b/sys-auth/libyubikey/libyubikey-1.12.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils autotools-utils
+
+DESCRIPTION="Yubico C low-level library"
+HOMEPAGE="https://github.com/Yubico/yubico-c"
+#http://opensource.yubico.com/yubico-c/releases.html
+SRC_URI="http://opensource.yubico.com/yubico-c/releases/${P}.tar.gz"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+LICENSE="BSD-2"
+IUSE="static-libs"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS )
diff --git a/sys-auth/libyubikey/libyubikey-1.13.ebuild b/sys-auth/libyubikey/libyubikey-1.13.ebuild
new file mode 100644
index 000000000000..d59885a9cd42
--- /dev/null
+++ b/sys-auth/libyubikey/libyubikey-1.13.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils autotools-utils
+
+DESCRIPTION="Yubico C low-level library"
+HOMEPAGE="https://github.com/Yubico/yubico-c"
+#http://opensource.yubico.com/yubico-c/releases.html
+SRC_URI="http://opensource.yubico.com/yubico-c/releases/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="BSD-2"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS )
diff --git a/sys-auth/libyubikey/metadata.xml b/sys-auth/libyubikey/metadata.xml
new file mode 100644
index 000000000000..53cbf8b403b0
--- /dev/null
+++ b/sys-auth/libyubikey/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gokturk@gentoo.org</email>
+ <name>Göktürk Yüksek</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="google-code">yubico-c</remote-id>
+ <remote-id type="github">Yubico/yubico-c</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/metadata.xml b/sys-auth/metadata.xml
new file mode 100644
index 000000000000..4b8897c1fd72
--- /dev/null
+++ b/sys-auth/metadata.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The sys-auth category contains applications and libraries to support
+ authentication and authorization facilities.
+ Here belongs PAM modules, NSS modules and login apps.
+ </longdescription>
+ <longdescription lang="ja">
+ sys-authカテゴリには確認を採用するアプリケーションとライブラリが
+ 含まれます。これはPAMとNSSモジュールとログインアプリケーションの場所です。
+ </longdescription>
+ <longdescription lang="vi">
+ Nhóm sys-auth chứa các ứng dụng và thư viện hỗ trợ xác thực và phân quyền.
+ Ở đây bao gồm các module PAM, NSS và các ứng dụng đăng nhập.
+ </longdescription>
+ <longdescription lang="de">
+ Die Kategorie sys-auth enthält Programme und Bibliotheken die Funktionen
+ zur Authentifizierung und Authorisierung zur Verfügung stellen. Module für PAM
+ und NSS sowie Loginapplikationen finden sich hier.
+ </longdescription>
+ <longdescription lang="it">
+ La categoria sys-auth contiene applicazioni e librerie di supporto per
+ gli strumenti di autenticazione e autorizzazione. Appartengono a questa categoria
+ i moduli PAM, i moduli NSS e le applicazioni di login.
+ </longdescription>
+ <longdescription lang="pt">
+ A categoria sys-auth contém aplicações e bibliotecas para
+ suportar instrumentos de autenticação e autorização.
+ Nesta categoria pertencem módulos de PAM, módulos de NSS e
+ aplicações de login.
+ </longdescription>
+ <longdescription lang="pl">
+ Kategoria sys-auth zawiera biblioteki oraz programy związane z
+ autoryzacją i uwierzytelnianiem. Znajdują się tu moduły PAM, NSS oraz
+ aplikacje służące do logowania.
+ </longdescription>
+ <longdescription lang="es">
+ La categoría sys-auth contiene aplicaciones y librerías para dar
+ soporte a los servicios de autenticación y autorización.
+ A esta categoría pertenecen los módulos PAM, NSS y las aplicaciones
+ para ingresar en el sistema.
+ </longdescription>
+</catmetadata>
diff --git a/sys-auth/munge/Manifest b/sys-auth/munge/Manifest
new file mode 100644
index 000000000000..a4ffeb0cca59
--- /dev/null
+++ b/sys-auth/munge/Manifest
@@ -0,0 +1,12 @@
+AUX fixed-recursive-use-of-make-in-makefiles.patch 4543 SHA256 7e3a4ba4f3fd32c9705fe3798c7c000a79f0e7171b30c537cfa853e944f003f2 SHA512 40b4a1c63283be83ed8355af31478e03f1aaf5de5e1c0fc2670e42a970a4097ff33e8885edcbea0e2ddd08ebc9a4f682a2df6f60a881eb1140c362d0e024bf4e WHIRLPOOL f0ce96c57d96ada5a3b3bddbe2646fc24453dc711d6f28a97718c215c3d53e24bc5c9e52ca77821472ea09f4e19199cbc060644827b8f5a5d25ba5c474ed47ef
+AUX munged.confd 410 SHA256 da77587b40217b6a5e0cff2c9d8a405cff34c42496d14626710934cb08e662c1 SHA512 571e9d1862be1e0389e1a45685853a1819f44cd7a89188223099703268f788f3097f8ee4e8abf36f30bb5fe81e7c57a9ec7981867b3528a37e63eb11f5b2e232 WHIRLPOOL 8712f18b444741d5a8550994e3c1cc20f6f8de17931f5dbbd7e096eb911b41c1209f1e2c344f27bc36b7b9a4312fc4726c8475b4c16055ddfb1d3696c741f92a
+AUX munged.initd 1100 SHA256 92201f35b10c076447a74e4b8bda86285014e9cf487c487ee37d3ebd26695771 SHA512 b3d95e7ccb18f75a4b19d6f2bd11c3484a82c0dc79dd58caaa74107bc6bbaf2d950c14123d5cec32e3762d7c3be89b20d8ef915796717bee82b953169b41793f WHIRLPOOL bc590e6f5b6f7a30e97de429600071864fac3314f500704377204acd279818f6a9fe873a3dd96732bd85abd69b29cb150322453090ee1fec41c6b35fe1e0ee77
+DIST munge-0.5.10.tar.bz2 424285 SHA256 00e0125c2895877b555872647b0a98d13838a54acda78614bb6c6e70daadabc6 SHA512 b1b780d205d6cfbadfe6096156840d559c70de5b0023cbd604acfc29e1135036c98a949981d5c022e994c77213ee3d8d70e8fe825b645b030ad1adef92ed9479 WHIRLPOOL 72bb331f3651473b482b3ad5b4f0e934537d93911e8c55e5d253511de273da7719a26f2f9d98ee6bee7968a705f41f648f52cdf67107edbc2565cadd473d0d46
+DIST munge-0.5.11.tar.bz2 423232 SHA256 8e075614f81cb0a6df21a0aafdc825498611a04429d0876f074fc828739351a5 SHA512 b9d4cd76c4fe605ad67934af48809205de0f0e5fa1a10dd3b6e382da2cb8bc274bd2a8c0d4bc49d1d58155bf008945a584afd0b6e01cc8052aa1d21c8de2815b WHIRLPOOL 00898e86b05955109799d81b1da7cdb9300c8af6f73a7d0d2d9f678c8fce6878f093b77ce1406797b7814a7c099d3f22d2c93b08e4cdbf77cc61ec624604b87c
+DIST munge-0.5.12.tar.xz 370160 SHA256 e972e3c3e947995a99e023f5758047db16cfe2f0c2c9ca76399dc1511fa71be8 SHA512 088f5ee7f5f37011d90666b87db05de6a2b8bb7cec1b43167bc3459cb365a45ebdf09d583095fabdc1e547c3c96433ca9d71a79ff05b983e8623f8d429a6852b WHIRLPOOL d8fb1693174b2aec76ce2defa5f0c02e4074970c51ca6ab68033ee03a4b5cb25546b465e7912b0d08132e086b9bfcef226d20530425953038786ad69d1118520
+EBUILD munge-0.5.10-r2.ebuild 1276 SHA256 de65d5529543cefa722f66ca082f355d8cef812392793da0c5479f6844ffae8e SHA512 a98d5281f0fbc2caec9a0f0d0c0e03397cdaf94e33492acce388c5519cf7dafc381da452976563512e9c20fe473b127e1219695aff0c648a853a33fe33def39f WHIRLPOOL 301012a69bb5bddee5cfe28a6ebeaf67f069ef49e8cdb12ce866e53dc768c68f0a946bc7dcf31e49cc384172a68a0e674b3350ee9332602e8f23ab2230ae6304
+EBUILD munge-0.5.11-r1.ebuild 1383 SHA256 488c47b4ba67c401d81a274a849a72e0a36dc3f9c38c748df715969b3803ff59 SHA512 db099ee999fbd574b87c1a719f63a033b89465e0a58f0ec2612f40d683603cbf78e35fcfc2f12f682c6c0382435e2af472917a721414f841bac65f336d266be5 WHIRLPOOL e04f9d17d937ffebc62d3aab8067d88528954f8703ff71986685decc478d49bd0d0db853fcfc37877a82cea959ddf3047dc079fb0f2c3051ccfc55665eacf450
+EBUILD munge-0.5.12.ebuild 1258 SHA256 75665e5b57a6f362dc7e3baf70dd9db6268230a255934f82e478d7ee5274a02f SHA512 4eb06ac12e9d401be7458827a7e463f3504024be0f88cb064933c06280a52c1d5dd4b67744a230e869bd712a9c1c5566975f721b0263a443feb10db9c19d1828 WHIRLPOOL 9a73428d37867e41911d97893722a60b86272b64bc5c7dc62475d5b04e1893e5c32d7ffa37ee540a5256260d7eda93ccd609421b7b1261b76e5c2d995e5f636d
+MISC ChangeLog 3612 SHA256 7284411bacf2d459bebd47736b029d2a3061d1efcfdee52573b2b82b6faddb0e SHA512 cc872baac7e0ad83e183dfbdb8fcd4260b42c878edcccb8de36dbd84941d80141a5fad136edf32b0a6caa381fa3601c6b47d572b08604851ea8f3caff552deb8 WHIRLPOOL d68053c5c00967f60feb890fddcf82e548c92ff62a9801caeaa1bf8562734d56c3fa879b61b2ca434578497bde835bf92431146f64afa0fc7a4d1a1a208c1fb3
+MISC ChangeLog-2015 3117 SHA256 c875ad6c221146e329d72e6637f7ddbb2c1fde85abe77acc3a53feca5131f6a5 SHA512 97317ca67788531d808ebb82c47725f81eee1c3981aa5fa811de97d2f9f38e6256d69eec061bafb433e680e62dda1c9c6112feadb7d09fe4983fddd5f0a07d7d WHIRLPOOL 1906d4c71894c40c5b84437a64ea57c7b15385cb80864755224103c9a68780e8b764e5de20a53fc6869ca5fa1a0295aa3599b2c6aa05622c0a1908e6246de592
+MISC metadata.xml 1059 SHA256 4476661a4ed6a67cd78689323d87f0209f9f8a7c41f852aa02f6a94f40c85d84 SHA512 0018c8101643023b01f621e7d5c23cfe6a3946dcb0f6e57ca05c998dc413b8cd1725eec88c5a6bdb5ddf2d6041793879aa04de6d53802f102b12070d0114c59d WHIRLPOOL 59469ad682eb9fee74d6d67c41fb5e15f029ab9cd14442ff570836d01ea2df26dd366198edc3333e12a89d4c33bc846ea62459cd9da8c13c6d70825e2b9cb1cc
diff --git a/sys-auth/munge/files/fixed-recursive-use-of-make-in-makefiles.patch b/sys-auth/munge/files/fixed-recursive-use-of-make-in-makefiles.patch
new file mode 100644
index 000000000000..1810abc91f4a
--- /dev/null
+++ b/sys-auth/munge/files/fixed-recursive-use-of-make-in-makefiles.patch
@@ -0,0 +1,134 @@
+From 5634ce9890da48f9ea88feece856361ce8f1563c Mon Sep 17 00:00:00 2001
+From: Brendan Horan <brendan@horan.hk>
+Date: Tue, 23 Jun 2015 09:32:31 +0800
+Subject: [PATCH] Fixed recursive use of make in makefiles [ make -> $(MAKE) ]
+
+---
+ Makefile.in | 2 +-
+ config/Make-inc.mk | 2 +-
+ src/Makefile.in | 2 +-
+ src/etc/Makefile.in | 2 +-
+ src/libcommon/Makefile.in | 2 +-
+ src/libmissing/Makefile.in | 2 +-
+ src/libmunge/Makefile.in | 2 +-
+ src/munge/Makefile.in | 2 +-
+ src/munged/Makefile.in | 2 +-
+ 9 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 8b8ca76..df53ff1 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -830,7 +830,7 @@ $(top_builddir)/src/libcommon/libcommon.la \
+ $(top_builddir)/src/libmissing/libmissing.la \
+ $(top_builddir)/src/libmunge/libmunge.la \
+ : force-dependency-check
+- @cd `dirname $@` && make `basename $@`
++ @cd `dirname $@` && $(MAKE) `basename $@`
+
+ force-dependency-check:
+
+diff --git a/config/Make-inc.mk b/config/Make-inc.mk
+index 03a9622..edffea1 100644
+--- a/config/Make-inc.mk
++++ b/config/Make-inc.mk
+@@ -31,7 +31,7 @@ $(top_builddir)/src/libcommon/libcommon.la \
+ $(top_builddir)/src/libmissing/libmissing.la \
+ $(top_builddir)/src/libmunge/libmunge.la \
+ : force-dependency-check
+- @cd `dirname $@` && make `basename $@`
++ @cd `dirname $@` && $(MAKE) `basename $@`
+
+ force-dependency-check:
+
+diff --git a/src/Makefile.in b/src/Makefile.in
+index c89ec9c..38c32da 100644
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -648,7 +648,7 @@ $(top_builddir)/src/libcommon/libcommon.la \
+ $(top_builddir)/src/libmissing/libmissing.la \
+ $(top_builddir)/src/libmunge/libmunge.la \
+ : force-dependency-check
+- @cd `dirname $@` && make `basename $@`
++ @cd `dirname $@` && $(MAKE) `basename $@`
+
+ force-dependency-check:
+
+diff --git a/src/etc/Makefile.in b/src/etc/Makefile.in
+index ffd41a0..d1eed84 100644
+--- a/src/etc/Makefile.in
++++ b/src/etc/Makefile.in
+@@ -451,7 +451,7 @@ $(top_builddir)/src/libcommon/libcommon.la \
+ $(top_builddir)/src/libmissing/libmissing.la \
+ $(top_builddir)/src/libmunge/libmunge.la \
+ : force-dependency-check
+- @cd `dirname $@` && make `basename $@`
++ @cd `dirname $@` && $(MAKE) `basename $@`
+
+ force-dependency-check:
+
+diff --git a/src/libcommon/Makefile.in b/src/libcommon/Makefile.in
+index 45419a8..8512b74 100644
+--- a/src/libcommon/Makefile.in
++++ b/src/libcommon/Makefile.in
+@@ -683,7 +683,7 @@ $(top_builddir)/src/libcommon/libcommon.la \
+ $(top_builddir)/src/libmissing/libmissing.la \
+ $(top_builddir)/src/libmunge/libmunge.la \
+ : force-dependency-check
+- @cd `dirname $@` && make `basename $@`
++ @cd `dirname $@` && $(MAKE) `basename $@`
+
+ force-dependency-check:
+
+diff --git a/src/libmissing/Makefile.in b/src/libmissing/Makefile.in
+index 10b1a78..187f4b3 100644
+--- a/src/libmissing/Makefile.in
++++ b/src/libmissing/Makefile.in
+@@ -572,7 +572,7 @@ $(top_builddir)/src/libcommon/libcommon.la \
+ $(top_builddir)/src/libmissing/libmissing.la \
+ $(top_builddir)/src/libmunge/libmunge.la \
+ : force-dependency-check
+- @cd `dirname $@` && make `basename $@`
++ @cd `dirname $@` && $(MAKE) `basename $@`
+
+ force-dependency-check:
+
+diff --git a/src/libmunge/Makefile.in b/src/libmunge/Makefile.in
+index 69dc54f..ab21fdc 100644
+--- a/src/libmunge/Makefile.in
++++ b/src/libmunge/Makefile.in
+@@ -752,7 +752,7 @@ $(top_builddir)/src/libcommon/libcommon.la \
+ $(top_builddir)/src/libmissing/libmissing.la \
+ $(top_builddir)/src/libmunge/libmunge.la \
+ : force-dependency-check
+- @cd `dirname $@` && make `basename $@`
++ @cd `dirname $@` && $(MAKE) `basename $@`
+
+ force-dependency-check:
+
+diff --git a/src/munge/Makefile.in b/src/munge/Makefile.in
+index f411d7e..411ec3b 100644
+--- a/src/munge/Makefile.in
++++ b/src/munge/Makefile.in
+@@ -752,7 +752,7 @@ $(top_builddir)/src/libcommon/libcommon.la \
+ $(top_builddir)/src/libmissing/libmissing.la \
+ $(top_builddir)/src/libmunge/libmunge.la \
+ : force-dependency-check
+- @cd `dirname $@` && make `basename $@`
++ @cd `dirname $@` && $(MAKE) `basename $@`
+
+ force-dependency-check:
+
+diff --git a/src/munged/Makefile.in b/src/munged/Makefile.in
+index c14fd0b..5112da3 100644
+--- a/src/munged/Makefile.in
++++ b/src/munged/Makefile.in
+@@ -1243,7 +1243,7 @@ $(top_builddir)/src/libcommon/libcommon.la \
+ $(top_builddir)/src/libmissing/libmissing.la \
+ $(top_builddir)/src/libmunge/libmunge.la \
+ : force-dependency-check
+- @cd `dirname $@` && make `basename $@`
++ @cd `dirname $@` && $(MAKE) `basename $@`
+
+ force-dependency-check:
+
diff --git a/sys-auth/munge/files/munged.confd b/sys-auth/munge/files/munged.confd
new file mode 100644
index 000000000000..8ab2f69284a3
--- /dev/null
+++ b/sys-auth/munge/files/munged.confd
@@ -0,0 +1,13 @@
+# Specify secret key file. If the keyfile does not already exist
+# it will be created on first startup using pseudorandom data via
+# dd if=/dev/urandom bs=1 count=1024 >/etc/munge/munge.key
+KEYFILE="/etc/munge/munge.key"
+
+# Specify whether to check "/etc/group" mtime
+GROUP_CHECK_MTIME=1
+
+# Specify seconds between group info updates
+GROUP_UPDATE_TIME=3600
+
+# Specify number of threads to spawn
+NUM_THREADS=2
diff --git a/sys-auth/munge/files/munged.initd b/sys-auth/munge/files/munged.initd
new file mode 100644
index 000000000000..e028d4ffd166
--- /dev/null
+++ b/sys-auth/munge/files/munged.initd
@@ -0,0 +1,47 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ after localmount
+}
+
+check_key() {
+ [ -s "${KEYFILE}" ] && return 0
+ local old_umask=$(umask)
+ local ret
+ umask 037
+ dd if=/dev/urandom bs=1024 count=1 of="${KEYFILE}" 2>/dev/null; ret=$?
+ umask $old_umask
+ return $ret
+}
+
+start() {
+ ebegin "Starting munged"
+ if ! check_key; then
+ eerror "Failed to create munge key"
+ eend 1 && exit 1
+ fi
+ checkpath -d -m 755 -o munge:munge /var/run/munge
+ checkpath -d -m 711 -o munge:munge /var/lib/munge
+ checkpath -d -m 700 -o munge:munge /var/log/munge
+ checkpath -f -m 640 -o root:munge "${KEYFILE}"
+ start-stop-daemon -S /usr/sbin/munged \
+ --user munge \
+ --group munge \
+ --pidfile /var/run/munge/munged.pid \
+ -- \
+ --key-file="${KEYFILE}" \
+ --group-check-mtime="${GROUP_CHECK_MTIME}" \
+ --group-update-time="${GROUP_UPDATE_TIME}" \
+ --num-threads="${NUM_THREADS}"
+ eend ${?}
+}
+
+stop() {
+ ebegin "Stopping munged"
+ start-stop-daemon -K /usr/sbin/munged \
+ --pidfile /var/run/munge/munged.pid
+ eend ${?}
+}
+
diff --git a/sys-auth/munge/metadata.xml b/sys-auth/munge/metadata.xml
new file mode 100644
index 000000000000..256d50b25e9f
--- /dev/null
+++ b/sys-auth/munge/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cluster@gentoo.org</email>
+ <name>Gentoo Cluster Project</name>
+ </maintainer>
+ <use>
+ <flag name="gcrypt">Use libgcrypt instead of openssl</flag>
+ </use>
+ <longdescription>MUNGE (MUNGE Uid 'N' Gid Emporium) is an authentication service for creating
+ and validating credentials. It is designed to be highly scalable for use in
+ an HPC cluster environment. It allows a process to authenticate the UID and
+ GID of another local or remote process within a group of hosts having common
+ users and groups. These hosts form a security realm that is defined by a
+ shared cryptographic key. Clients within this security realm can create and
+ validate credentials without the use of root privileges, reserved ports, or
+ platform-specific methods.</longdescription>
+ <upstream>
+ <remote-id type="google-code">munge</remote-id>
+ <remote-id type="github">dun/munge</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/munge/munge-0.5.10-r2.ebuild b/sys-auth/munge/munge-0.5.10-r2.ebuild
new file mode 100644
index 000000000000..90cbf190d6a5
--- /dev/null
+++ b/sys-auth/munge/munge-0.5.10-r2.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+inherit user
+
+DESCRIPTION="An authentication service for creating and validating credentials"
+HOMEPAGE="https://code.google.com/p/munge/"
+SRC_URI="https://munge.googlecode.com/files/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="alpha amd64 hppa ia64 ~mips ppc ppc64 sparc x86"
+IUSE="gcrypt"
+
+DEPEND="app-arch/bzip2
+ sys-libs/zlib
+ gcrypt? ( dev-libs/libgcrypt:0 )
+ !gcrypt? ( dev-libs/openssl )"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ enewgroup munge
+ enewuser munge -1 -1 /var/lib/munge munge
+}
+
+src_configure() {
+ local conf=""
+
+ if use gcrypt; then
+ conf="${conf} --with-crypto-lib=libgcrypt"
+ else
+ conf="${conf} --with-crypto-lib=openssl"
+ fi
+
+ econf ${conf} \
+ --localstatedir=/var
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+
+ # 450830
+ if [ -d "${D}"/var/run ]; then
+ rm -rf "${D}"/var/run || die
+ fi
+
+ dodir /etc/munge || die
+
+ [ -d "${D}"/etc/init.d ] && rm -r "${D}"/etc/init.d
+ [ -d "${D}"/etc/default ] && rm -r "${D}"/etc/default
+ [ -d "${D}"/etc/sysconfig ] && rm -r "${D}"/etc/sysconfig
+
+ newconfd "${FILESDIR}"/${PN}d.confd ${PN}d || die
+ newinitd "${FILESDIR}"/${PN}d.initd ${PN}d || die
+}
+
+src_test() {
+ emake check || die
+}
diff --git a/sys-auth/munge/munge-0.5.11-r1.ebuild b/sys-auth/munge/munge-0.5.11-r1.ebuild
new file mode 100644
index 000000000000..d42b3e72b897
--- /dev/null
+++ b/sys-auth/munge/munge-0.5.11-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit autotools eutils user prefix
+
+DESCRIPTION="An authentication service for creating and validating credentials"
+HOMEPAGE="https://github.com/dun/munge"
+SRC_URI="https://github.com/dun/munge/releases/download/munge-${PV}/munge-${PV}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+
+IUSE="gcrypt"
+
+DEPEND="app-arch/bzip2
+ sys-libs/zlib
+ gcrypt? ( dev-libs/libgcrypt:0 )
+ !gcrypt? ( dev-libs/openssl:0 )"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ enewgroup munge
+ enewuser munge -1 -1 /var/lib/munge munge
+}
+
+src_prepare() {
+ # Accepted upstream, https://github.com/dun/munge/pull/40
+ epatch "${FILESDIR}"/fixed-recursive-use-of-make-in-makefiles.patch
+
+ hprefixify config/x_ac_path_openssl.m4
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --localstatedir="${EPREFIX}"/var \
+ --with-crypto-lib=$(usex gcrypt libgcrypt openssl)
+}
+
+src_install() {
+ local d
+
+ default
+
+ # 450830
+ if [ -d "${ED}"/var/run ]; then
+ rm -rf "${ED}"/var/run || die
+ fi
+
+ dodir /etc/munge
+
+ for d in "init.d" "default" "sysconfig"; do
+ if [ -d "${ED}"/etc/${d} ]; then
+ rm -r "${ED}"/etc/${d} || die
+ fi
+ done
+
+ newconfd "$(prefixify_ro "${FILESDIR}"/${PN}d.confd)" ${PN}d
+ newinitd "$(prefixify_ro "${FILESDIR}"/${PN}d.initd)" ${PN}d
+}
diff --git a/sys-auth/munge/munge-0.5.12.ebuild b/sys-auth/munge/munge-0.5.12.ebuild
new file mode 100644
index 000000000000..be4d2881ee1f
--- /dev/null
+++ b/sys-auth/munge/munge-0.5.12.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools user prefix
+
+DESCRIPTION="An authentication service for creating and validating credentials"
+HOMEPAGE="https://github.com/dun/munge"
+SRC_URI="https://github.com/dun/munge/releases/download/munge-${PV}/munge-${PV}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="gcrypt"
+
+DEPEND="
+ app-arch/bzip2
+ sys-libs/zlib
+ gcrypt? ( dev-libs/libgcrypt:0 )
+ !gcrypt? ( dev-libs/openssl:0 )"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ enewgroup munge
+ enewuser munge -1 -1 /var/lib/munge munge
+}
+
+src_prepare() {
+ default
+
+ hprefixify config/x_ac_path_openssl.m4
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --localstatedir="${EPREFIX}"/var \
+ --with-crypto-lib=$(usex gcrypt libgcrypt openssl)
+}
+
+src_install() {
+ local d
+
+ default
+
+ # 450830
+ if [ -d "${ED}"/var/run ]; then
+ rm -rf "${ED}"/var/run || die
+ fi
+
+ dodir /etc/munge
+
+ for d in "init.d" "default" "sysconfig"; do
+ if [ -d "${ED}"/etc/${d} ]; then
+ rm -r "${ED}"/etc/${d} || die
+ fi
+ done
+
+ newconfd "$(prefixify_ro "${FILESDIR}"/${PN}d.confd)" ${PN}d
+ newinitd "$(prefixify_ro "${FILESDIR}"/${PN}d.initd)" ${PN}d
+}
diff --git a/sys-auth/nss-mdns/Manifest b/sys-auth/nss-mdns/Manifest
new file mode 100644
index 000000000000..4a0c0bc98f66
--- /dev/null
+++ b/sys-auth/nss-mdns/Manifest
@@ -0,0 +1,9 @@
+AUX mdns.allow 29 SHA256 9fde506c70de0983039fc17b705fd40a2e43fbb8d426a74f662a09136458bc40 SHA512 a89d2f8288acd653192ac463f784cdd8a8e8e014094e997d99c4ad5c6522cd3cf1f161714d15b28d9db2cfba60b55302f20a0e810bcf5c9ba633a5ee42dc3f50 WHIRLPOOL 2ab9ded2d87fd20bb3fca341331ab0c0bc6546748924242c4ff3e9d2d8224a47b0130f5888048fe83eab178a22e44b966293d50b4353d4404e544abfc6f518a9
+AUX nss-mdns-0.10-avahi-socket.patch 394 SHA256 2fa66e3e110dcbf2b99ae08416850c086325b69a45e985d3d472bcd72ba892d6 SHA512 79bfccaab009a3affc44ea5d02b572adbe3637aca27064e6cc5d347a74d36c0244b31f7d95b68f9771af02dc1baa788d041ecbaf5d3632dd3507b52f1559f661 WHIRLPOOL cae18aa8c05bab993c424ebb2ac39b251f6ddef4a6ff2535e082623d04edfe7511f47a3b0e683cad11226b80957f3841ddc229188664ed8f98668ffaf3265000
+AUX nss-mdns-0.10-ipv6.patch 15651 SHA256 d3a7745cf7cf2d357d2f41a93165296b09be94805899258be679b555594c6b92 SHA512 8021b5dbb7e484fc29041e54d88a01346ee1dac7840b1bc13caacb4460e7b6baa99d079f34e0b28e9d665e821ccddccc83580f315454c63bf7ba1b2f6ab4c230 WHIRLPOOL ea64de447f2986c59032aeaa8dfb8156a296bfddfc17bdc0140d76beed634d4b6b4d3eebc79d9ba36aeb10cd0b26cc898f1eb55d81c68afaf574d386e37e0fdc
+DIST nss-mdns-0.10.tar.gz 353130 SHA256 1e683c2e7c3921814706d62fbbd3e9cbf493a75fa00255e0e715508d8134fa6d SHA512 7c9f4150648dfab34bc6f8551e5b58b0b7065e4c1472efb8ce1b00b2bd75627e5928b2c199d9dae742abe839968a8774e39c7646f8ce855d342b4d90252efc0e WHIRLPOOL 27298dd51e307d0c3798096b1e8ccfc7b0f454ebca15e1abea1502326f17e8850af789cb8fa926be4d4918cc81819487603e3f8eb3ad76605325da97be23db66
+EBUILD nss-mdns-0.10-r3.ebuild 1840 SHA256 349483a567e6fb3b413f8b132f5c1ae16317eaf3d3fb166d167ac62dcef9740e SHA512 50265452786edd3ac7b554904a57fdf38b9a121641363bc14587633efada2017d7b36c7f131740ce69e2a5389fc4be2d4a6b5c52bb6193dd0320891748f3ce5a WHIRLPOOL 58af0569d4c45e2fa1fabbc112d0710d759caa0aa0b7cd190ce3fced2a268d02d5301e63793363257c39379395fc659086b3fcae3564ab4c7570ed317f169ede
+EBUILD nss-mdns-9999.ebuild 1596 SHA256 07c9a5f71a179ea5dae7e39edc8474aa2448b07f5bf7f228009650ada7689f97 SHA512 bdb772d5fcb650405dff7baa52049d1cc1943489b65ba0f786c8fb6ab22ea3ab14425a259e04515879b354db918efbc14cb32dbd22d9d628d18eb2fa7a7a1c21 WHIRLPOOL 8e67abd65301c8637371d1032e40c9e13e7bd065cd7131089c097eb8cecabe848643e2f677f86217c498472bd2aa4ed91af78cc8c2ba9412551d5df6e14b2d9e
+MISC ChangeLog 3349 SHA256 8cdd36fa8e0b20657bb96ebc97b934bb6f5d112c8b7d65a3ec9b92ca6fcea67c SHA512 36ec5420116e2046c52894aa2b44e4a1cb897cc548535bbe75d9947ff1ffe40ebf303435825987f46b668205cde640165e6700316267dfa8c8dc20bdc2af8b4f WHIRLPOOL d2ce84b9fa5d160c23ee19906cec1b0f9d10a5c697e42575430d91a300b0f5ac55dd31749046a960204cbc93f611a20e635b59ea5eb46e0f254ad4dbebdb59a2
+MISC ChangeLog-2015 5873 SHA256 2d3335e0a5495f28c0e09c375de68f403b33d3b2b61d1b290be6ac6d27d2f753 SHA512 e9768343daf3139f0e177c26698065051ab43b6143f0e9b750bfc0301fc089dfb25e93a3d7abe62e5df521b91c62dd169f81b050838f077c08c200cb4ffaf274 WHIRLPOOL 8c6a6df56c079ef52792bbcf91f36b319d3b17737cd85753efa5db79263bc52523142afea8d0c607995b3c2f0f5171c9bc809cacf813f37e622003464bda6172
+MISC metadata.xml 795 SHA256 87db4ce4778525f76fbd326e52c5f1a7f6b4542dfb40463b839e17247e8ba73a SHA512 912e8a154a0672a58bd89ee1f52efd8d43cfbeff1f1c40def47d6bd7600fb9b74e1b11dd633ea1ad6f75ef9ae9979ac5b741cfd5df97ea6b0055b060df33c977 WHIRLPOOL 686871660b786586ef5aaea8661cc8a08e909121ef4f39dd825c7436acd71659a3c73a6154307ddbe9561ea56eff5782b8ef3203b905add361a7418fd5536d24
diff --git a/sys-auth/nss-mdns/files/mdns.allow b/sys-auth/nss-mdns/files/mdns.allow
new file mode 100644
index 000000000000..80b49b097b03
--- /dev/null
+++ b/sys-auth/nss-mdns/files/mdns.allow
@@ -0,0 +1,3 @@
+# mdns.allow:
+.local.
+.local
diff --git a/sys-auth/nss-mdns/files/nss-mdns-0.10-avahi-socket.patch b/sys-auth/nss-mdns/files/nss-mdns-0.10-avahi-socket.patch
new file mode 100644
index 000000000000..9ada93d2b8fb
--- /dev/null
+++ b/sys-auth/nss-mdns/files/nss-mdns-0.10-avahi-socket.patch
@@ -0,0 +1,14 @@
+https://bugs.gentoo.org/159341
+
+fix the full path to the socket run dir
+
+--- src/Makefile.am
++++ src/Makefile.am
+@@ -20,7 +20,7 @@
+ AM_CFLAGS = \
+ -DMDNS_ALLOW_FILE=\"$(sysconfdir)/mdns.allow\" \
+ -DRESOLV_CONF_FILE=\"$(sysconfdir)/resolv.conf\" \
+- -DAVAHI_SOCKET=\"$(localstatedir)/run/avahi-daemon/socket\"
++ -DAVAHI_SOCKET=\"/var/run/avahi-daemon/socket\"
+
+ #AM_CFLAGS += -DNDEBUG=1 -Os
diff --git a/sys-auth/nss-mdns/files/nss-mdns-0.10-ipv6.patch b/sys-auth/nss-mdns/files/nss-mdns-0.10-ipv6.patch
new file mode 100644
index 000000000000..6d6dbc9eab58
--- /dev/null
+++ b/sys-auth/nss-mdns/files/nss-mdns-0.10-ipv6.patch
@@ -0,0 +1,528 @@
+diff -u src/avahi.c src/avahi.c
+--- src/avahi.c 2006-04-29 05:14:09.000000000 +0800
++++ src/avahi.c 2013-01-04 10:00:05.025558790 +0800
+@@ -26,6 +26,7 @@
+ #include <sys/socket.h>
+ #include <string.h>
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <sys/types.h>
+ #include <arpa/inet.h>
+ #include <sys/un.h>
+@@ -34,6 +35,7 @@
+
+ #include "avahi.h"
+ #include "util.h"
++#include "query.h"
+
+ #define WHITESPACE " \t"
+
+@@ -93,7 +95,8 @@
+ p = ln+1;
+ p += strspn(p, WHITESPACE);
+
+- /* Skip interface */
++ /* Parse interface */
++ if (af == AF_INET6) ((ipv6_address_t*)data)->if_idx = strtoul(p, 0, 10);
+ p += strcspn(p, WHITESPACE);
+ p += strspn(p, WHITESPACE);
+
+diff -u src/avahi-test.c src/avahi-test.c
+--- src/avahi-test.c 2007-02-09 00:42:23.000000000 +0800
++++ src/avahi-test.c 2013-01-04 09:59:06.174017729 +0800
+@@ -24,6 +24,7 @@
+ #include <stdio.h>
+
+ #include "avahi.h"
++#include "query.h"
+
+ int main(int argc, char *argv[]) {
+ uint8_t data[64];
+@@ -35,15 +36,20 @@
+ else
+ printf("AF_INET: failed (%i).\n", r);
+
+-/* if ((r = avahi_resolve_name(AF_INET6, argc >= 2 ? argv[1] : "cocaine.local", data)) == 0) */
+-/* printf("AF_INET6: %s\n", inet_ntop(AF_INET6, data, t, sizeof(t))); */
+-/* else */
+-/* printf("AF_INET6: failed (%i).\n", r); */
+-
+ if ((r = avahi_resolve_address(AF_INET, data, t, sizeof(t))) == 0)
+ printf("REVERSE: %s\n", t);
+ else
+ printf("REVERSE: failed (%i).\n", r);
++
++ if ((r = avahi_resolve_name(AF_INET6, argc >= 2 ? argv[1] : "cocaine.local", data)) == 0)
++ printf("AF_INET6: %s, %u\n", inet_ntop(AF_INET6, data, t, sizeof(t)), ((ipv6_address_t*)data)->if_idx);
++ else
++ printf("AF_INET6: failed (%i).\n", r);
++
++ if ((r = avahi_resolve_address(AF_INET6, data, t, sizeof(t))) == 0)
++ printf("REVERSE: %s\n", t);
++ else
++ printf("REVERSE: failed (%i).\n", r);
+
+ return 0;
+ }
+diff -u src/bsdnss.c src/bsdnss.c
+--- src/bsdnss.c 2007-02-09 00:42:23.000000000 +0800
++++ src/bsdnss.c 2013-01-04 09:49:45.566389491 +0800
+@@ -258,6 +258,8 @@
+ ai->ai_addrlen = sizeof(struct sockaddr_in6);
+ memcpy(&((struct sockaddr_in6 *)psa)->sin6_addr, hap,
+ ai->ai_addrlen);
++ if (((struct sockaddr_in6 *)psa)->sin6_addr[0] == 0xfe && ((struct sockaddr_in6 *)psa)->sin6_addr[0] == 0x80)
++ ((struct sockaddr_in6 *)psa)->sin6_scope_id = ((struct ipv6_address_t*) hap)->if_idx;
+ break;
+ default:
+ ai->ai_addrlen = sizeof(struct sockaddr_storage);
+diff -u src/map-file src/map-file
+--- src/map-file 2007-01-02 02:36:21.000000000 +0800
++++ src/map-file 2013-01-07 08:56:56.406478774 +0800
+@@ -18,6 +18,12 @@
+ _nss_mdns_minimal_gethostbyname2_r;
+ _nss_mdns4_minimal_gethostbyname2_r;
+ _nss_mdns6_minimal_gethostbyname2_r;
++_nss_mdns_gethostbyname4_r;
++_nss_mdns4_gethostbyname4_r;
++_nss_mdns6_gethostbyname4_r;
++_nss_mdns_minimal_gethostbyname4_r;
++_nss_mdns4_minimal_gethostbyname4_r;
++_nss_mdns6_minimal_gethostbyname4_r;
+ local:
+ *;
+ };
+diff -u src/nss.c src/nss.c
+--- src/nss.c 2013-01-07 15:14:23.000000000 +0800
++++ src/nss.c 2013-01-07 16:52:38.399842517 +0800
+@@ -41,22 +41,27 @@
+
+ #if defined(NSS_IPV4_ONLY) && ! defined(MDNS_MINIMAL)
+ #define _nss_mdns_gethostbyname2_r _nss_mdns4_gethostbyname2_r
++#define _nss_mdns_gethostbyname4_r _nss_mdns4_gethostbyname4_r
+ #define _nss_mdns_gethostbyname_r _nss_mdns4_gethostbyname_r
+ #define _nss_mdns_gethostbyaddr_r _nss_mdns4_gethostbyaddr_r
+ #elif defined(NSS_IPV4_ONLY) && defined(MDNS_MINIMAL)
+ #define _nss_mdns_gethostbyname2_r _nss_mdns4_minimal_gethostbyname2_r
++#define _nss_mdns_gethostbyname4_r _nss_mdns4_minimal_gethostbyname4_r
+ #define _nss_mdns_gethostbyname_r _nss_mdns4_minimal_gethostbyname_r
+ #define _nss_mdns_gethostbyaddr_r _nss_mdns4_minimal_gethostbyaddr_r
+ #elif defined(NSS_IPV6_ONLY) && ! defined(MDNS_MINIMAL)
+ #define _nss_mdns_gethostbyname2_r _nss_mdns6_gethostbyname2_r
++#define _nss_mdns_gethostbyname4_r _nss_mdns6_gethostbyname4_r
+ #define _nss_mdns_gethostbyname_r _nss_mdns6_gethostbyname_r
+ #define _nss_mdns_gethostbyaddr_r _nss_mdns6_gethostbyaddr_r
+ #elif defined(NSS_IPV6_ONLY) && defined(MDNS_MINIMAL)
+ #define _nss_mdns_gethostbyname2_r _nss_mdns6_minimal_gethostbyname2_r
++#define _nss_mdns_gethostbyname4_r _nss_mdns6_minimal_gethostbyname4_r
+ #define _nss_mdns_gethostbyname_r _nss_mdns6_minimal_gethostbyname_r
+ #define _nss_mdns_gethostbyaddr_r _nss_mdns6_minimal_gethostbyaddr_r
+ #elif defined(MDNS_MINIMAL)
+ #define _nss_mdns_gethostbyname2_r _nss_mdns_minimal_gethostbyname2_r
++#define _nss_mdns_gethostbyname4_r _nss_mdns_minimal_gethostbyname4_r
+ #define _nss_mdns_gethostbyname_r _nss_mdns_minimal_gethostbyname_r
+ #define _nss_mdns_gethostbyaddr_r _nss_mdns_minimal_gethostbyaddr_r
+ #endif
+@@ -81,6 +86,12 @@
+ char *name[MAX_ENTRIES];
+ } data;
+ };
++struct user_gai_buf {
++ struct gaih_addrtuple *list_base;
++ int list_size;
++ int list_idx;
++ int wrote_name;
++};
+
+ #ifndef NSS_IPV6_ONLY
+ static void ipv4_callback(const ipv4_address_t *ipv4, void *userdata) {
+@@ -93,6 +104,21 @@
+ u->data.ipv4[u->count++] = *ipv4;
+ u->data_len += sizeof(ipv4_address_t);
+ }
++static void ipv4_gai_callback(const ipv4_address_t *ipv4, void *userdata) {
++ struct user_gai_buf *u = userdata;
++ assert(ipv4 && userdata);
++
++ if (u->list_idx+1 >= u->list_size)
++ return;
++
++ u->list_base[u->list_idx].name = 0;
++ u->list_base[u->list_idx].family = AF_INET;
++ u->list_base[u->list_idx].addr[0] = ipv4->address;
++ u->list_base[u->list_idx].scopeid = 0;
++ if (u->list_idx > 0) u->list_base[u->list_idx-1].next = &u->list_base[u->list_idx];
++ u->list_base[u->list_idx].next = 0;
++ u->list_idx += 1;
++}
+ #endif
+
+ #ifndef NSS_IPV4_ONLY
+@@ -106,6 +132,21 @@
+ u->data.ipv6[u->count++] = *ipv6;
+ u->data_len += sizeof(ipv6_address_t);
+ }
++static void ipv6_gai_callback(const ipv6_address_t *ipv6, void *userdata) {
++ struct user_gai_buf *u = userdata;
++ assert(ipv6 && userdata);
++
++ if (u->list_idx+1 >= u->list_size)
++ return;
++
++ u->list_base[u->list_idx].name = 0;
++ u->list_base[u->list_idx].family = AF_INET6;
++ memcpy(u->list_base[u->list_idx].addr, ipv6->address, sizeof(u->list_base[u->list_idx].addr));
++ u->list_base[u->list_idx].scopeid = ipv6->if_idx;
++ if (u->list_idx > 0) u->list_base[u->list_idx-1].next = &u->list_base[u->list_idx];
++ u->list_base[u->list_idx].next = 0;
++ u->list_idx += 1;
++}
+ #endif
+
+ static void name_callback(const char*name, void *userdata) {
+@@ -538,6 +579,265 @@
+
+ status = NSS_STATUS_SUCCESS;
+
++finish:
++#ifdef ENABLE_LEGACY
++ if (fd >= 0)
++ close(fd);
++#endif
++
++ return status;
++}
++
++enum nss_status _nss_mdns_gethostbyname4_r(
++ const char *name,
++ struct gaih_addrtuple **pat,
++ char *buffer,
++ size_t buflen,
++ int *errnop,
++ int *h_errnop,
++ int32_t *ttlp) {
++
++ struct user_gai_buf u;
++ enum nss_status status = NSS_STATUS_UNAVAIL;
++ int i;
++ size_t l, idx;
++ void (*ipv4_func)(const ipv4_address_t *ipv4, void *userdata);
++ void (*ipv6_func)(const ipv6_address_t *ipv6, void *userdata);
++ int name_allowed;
++ int af = AF_UNSPEC;
++
++#ifdef ENABLE_AVAHI
++ int avahi_works = 1;
++ void * data[32];
++#endif
++
++#ifdef ENABLE_LEGACY
++ int fd = -1;
++#endif
++
++ if (pat) {
++ af = (*pat)->family;
++ }
++
++/* DEBUG_TRAP; */
++
++#ifdef NSS_IPV6_ONLY
++ if (af == AF_UNSPEC)
++ af = AF_INET6;
++#endif
++
++#ifdef NSS_IPV4_ONLY
++ if (af == AF_UNSPEC)
++ af = AF_INET;
++#endif
++
++#ifdef NSS_IPV4_ONLY
++ if (af != AF_INET)
++#elif NSS_IPV6_ONLY
++ if (af != AF_INET6)
++#else
++ if (af != AF_INET && af != AF_INET6 && af != AF_UNSPEC)
++#endif
++ {
++ *errnop = EINVAL;
++ *h_errnop = NO_RECOVERY;
++
++ goto finish;
++ }
++
++ if (buflen <
++ sizeof(struct gaih_addrtuple)) {
++
++ *errnop = ERANGE;
++ *h_errnop = NO_RECOVERY;
++ status = NSS_STATUS_TRYAGAIN;
++
++ goto finish;
++ }
++
++ u.list_base = (struct user_gai_buf*) buffer;
++ u.list_size = buflen / sizeof( struct user_gai_buf );
++ u.list_idx = 0;
++ u.wrote_name = 0;
++
++#ifdef NSS_IPV6_ONLY
++ ipv4_func = NULL;
++#else
++ ipv4_func = (af == AF_INET || af == AF_UNSPEC) ? ipv4_gai_callback : NULL;
++#endif
++
++#ifdef NSS_IPV4_ONLY
++ ipv6_func = NULL;
++#else
++ ipv6_func = (af == AF_INET6 || af == AF_UNSPEC) ? ipv6_gai_callback : NULL;
++#endif
++
++ name_allowed = verify_name_allowed(name);
++
++#ifdef ENABLE_AVAHI
++
++ if (avahi_works && name_allowed) {
++ int r;
++
++ if (af == AF_INET || af == AF_UNSPEC) {
++ if ((r = avahi_resolve_name(AF_INET, name, data)) < 0)
++ avahi_works = 0;
++ else if (r == 0) {
++ if (ipv4_func) {
++ ipv4_func((ipv4_address_t*) data, &u);
++ }
++ }
++ else
++ status = NSS_STATUS_NOTFOUND;
++ }
++ if (af == AF_INET6 || af == AF_UNSPEC) {
++ if ((r = avahi_resolve_name(AF_INET6, name, data)) < 0)
++ avahi_works = 0;
++ else if (r == 0) {
++ if (ipv6_func)
++ ipv6_func((ipv6_address_t*)data, &u);
++ }
++ else
++ status = NSS_STATUS_NOTFOUND;
++ }
++ }
++
++#ifdef HONOUR_SEARCH_DOMAINS
++ if (u.list_idx == 0 && avahi_works && !ends_with(name, ".")) {
++ char **domains;
++
++ if ((domains = get_search_domains())) {
++ char **p;
++
++ /* Try to concatenate host names */
++ for (p = domains; *p; p++) {
++ int fullnamesize;
++ char *fullname;
++
++ fullnamesize = strlen(name) + strlen(*p) + 2;
++
++ if (!(fullname = malloc(fullnamesize)))
++ break;
++
++ snprintf(fullname, fullnamesize, "%s.%s", name, *p);
++
++ if (verify_name_allowed(fullname)) {
++ int r;
++
++ if (af == AF_INET || af == AF_UNSPEC) {
++ r = avahi_resolve_name(AF_INET, fullname, data);
++
++ if (r < 0) {
++ /* Lookup failed */
++ avahi_works = 0;
++ free(fullname);
++ break;
++ } else if (r == 0) {
++ /* Lookup succeeded */
++ if (ipv4_func)
++ ipv4_func((ipv4_address_t*) data, &u);
++ }
++ }
++ if (af == AF_INET6 || af == AF_UNSPEC) {
++ r = avahi_resolve_name(AF_INET6, fullname, data);
++
++ if (r < 0) {
++ /* Lookup failed */
++ avahi_works = 0;
++ free(fullname);
++ break;
++ } else if (r == 0) {
++ /* Lookup succeeded */
++ if (ipv6_func)
++ ipv6_func((ipv6_address_t*)data, &u);
++ }
++ }
++ free(fullname);
++ if (u.list_idx > 0) break;
++
++ } else
++ free(fullname);
++ }
++
++ free_domains(domains);
++ }
++ }
++#endif /* HONOUR_SEARCH_DOMAINS */
++#endif /* ENABLE_AVAHI */
++
++#if defined(ENABLE_LEGACY) && defined(ENABLE_AVAHI)
++ if (u.list_idx == 0 && !avahi_works)
++#endif
++
++#if defined(ENABLE_LEGACY)
++ {
++ if ((fd = mdns_open_socket()) < 0) {
++ *errnop = errno;
++ *h_errnop = NO_RECOVERY;
++ goto finish;
++ }
++
++ if (name_allowed) {
++ /* Ignore return value */
++ mdns_query_name(fd, name, ipv4_func, ipv6_func, &u);
++
++ if (!u.list_idx)
++ status = NSS_STATUS_NOTFOUND;
++ }
++
++#ifdef HONOUR_SEARCH_DOMAINS
++ if (u.list_idx == 0 && !ends_with(name, ".")) {
++ char **domains;
++
++ /* Try the search domains if the user did not use a traling '.' */
++
++ if ((domains = get_search_domains())) {
++ char **p;
++
++ for (p = domains; *p; p++) {
++ int fullnamesize = 0;
++ char *fullname = NULL;
++
++ fullnamesize = strlen(name) + strlen(*p) + 2;
++ if (!(fullname = malloc(fullnamesize)))
++ break;
++
++ snprintf(fullname, fullnamesize, "%s.%s", name, *p);
++
++ if (verify_name_allowed(fullname)) {
++
++ /* Ignore return value */
++ mdns_query_name(fd, fullname, ipv4_func, ipv6_func, &u);
++
++ if (u.list_idx > 0) {
++ /* We found something, so let's quit */
++ free(fullname);
++ break;
++ } else
++ status = NSS_STATUS_NOTFOUND;
++
++ }
++
++ free(fullname);
++ }
++
++ free_domains(domains);
++ }
++ }
++#endif /* HONOUR_SEARCH_DOMAINS */
++ }
++#endif /* ENABLE_LEGACY */
++
++ if (u.list_idx == 0) {
++ *errnop = ETIMEDOUT;
++ *h_errnop = HOST_NOT_FOUND;
++ goto finish;
++ }
++
++ *pat = (struct gaih_addrtuple*) buffer;
++
++ status = NSS_STATUS_SUCCESS;
++
+ finish:
+ #ifdef ENABLE_LEGACY
+ if (fd >= 0)
+diff -u src/query.c src/query.c
+--- src/query.c 2007-02-09 00:42:23.000000000 +0800
++++ src/query.c 2013-01-04 09:57:03.778972196 +0800
+@@ -263,7 +263,7 @@
+ return n_sent;
+ }
+
+-static int recv_dns_packet(int fd, struct dns_packet **ret_packet, uint8_t *ret_ttl, struct timeval *end) {
++static int recv_dns_packet(int fd, struct dns_packet **ret_packet, uint8_t *ret_ttl, uint32_t *if_idx, struct timeval *end) {
+ struct dns_packet *p= NULL;
+ struct msghdr msg;
+ struct iovec io;
+@@ -286,6 +286,10 @@
+ msg.msg_controllen = sizeof(aux);
+ msg.msg_flags = 0;
+
++#ifndef IP_PKTINFO
++ *if_idx = 0;
++#endif
++
+ for (;;) {
+ ssize_t l;
+ int r;
+@@ -304,6 +308,14 @@
+ *ret_ttl = (uint8_t) (*(uint32_t*) CMSG_DATA(cmsg));
+ break;
+ }
++#ifdef IP_PKTINFO
++ if (cmsg->cmsg_level == IPPROTO_IP && cmsg->cmsg_type == IP_PKTINFO)
++ {
++ *if_idx = ((struct in_pktinfo*) CMSG_DATA(cmsg))->ipi_ifindex;
++ break;
++ }
++#endif
++
+ }
+
+ if (!cmsg)
+@@ -427,9 +439,10 @@
+
+ while (!done) {
+ uint8_t ttl;
++ uint32_t if_idx;
+ int r;
+
+- if ((r = recv_dns_packet(fd, &p, &ttl, &end)) < 0)
++ if ((r = recv_dns_packet(fd, &p, &ttl, &if_idx, &end)) < 0)
+ return -1;
+ else if (r > 0) /* timeout */
+ return 1;
+@@ -488,6 +501,7 @@
+ rdlength == sizeof(ipv6_address_t)) {
+
+ ipv6_address_t ipv6;
++ ipv6.if_idx = if_idx;
+
+ if (dns_packet_consume_bytes(p, &ipv6, sizeof(ipv6_address_t)) < 0)
+ break;
+@@ -584,9 +598,10 @@
+
+ while (!done) {
+ uint8_t ttl;
++ uint32_t if_idx;
+ int r;
+
+- if ((r = recv_dns_packet(fd, &p, &ttl, &end)) < 0)
++ if ((r = recv_dns_packet(fd, &p, &ttl, &if_idx, &end)) < 0)
+ return -1;
+ else if (r > 0) /* timeout */
+ return 1;
+diff -u src/query.h src/query.h
+--- src/query.h 2005-06-21 22:43:23.000000000 +0800
++++ src/query.h 2013-01-03 14:09:22.138018327 +0800
+@@ -30,6 +30,7 @@
+
+ typedef struct {
+ uint8_t address[16];
++ uint32_t if_idx;
+ } ipv6_address_t;
+
diff --git a/sys-auth/nss-mdns/metadata.xml b/sys-auth/nss-mdns/metadata.xml
new file mode 100644
index 000000000000..a409ede683e9
--- /dev/null
+++ b/sys-auth/nss-mdns/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>amynka@gentoo.org</email>
+ </maintainer>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+ <use>
+ <flag name="search-domains">Honour search domains from
+ /etc/resolv.conf (see bug #201948 for possible side effects)</flag>
+ </use>
+ <longdescription lang="en">
+ Name service switch module for multicast dns.
+ </longdescription>
+ <longdescription lang="ja">
+ マルチキャスト DNS 向けネーム・サービス・スイッチのモジュールです。
+ </longdescription>
+ <upstream>
+ <remote-id type="github">lathiat/nss-mdns</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/nss-mdns/nss-mdns-0.10-r3.ebuild b/sys-auth/nss-mdns/nss-mdns-0.10-r3.ebuild
new file mode 100644
index 000000000000..8183106781f9
--- /dev/null
+++ b/sys-auth/nss-mdns/nss-mdns-0.10-r3.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+inherit autotools eutils multilib-minimal
+
+DESCRIPTION="Name Service Switch module for Multicast DNS"
+HOMEPAGE="http://0pointer.de/lennart/projects/nss-mdns/"
+SRC_URI="http://0pointer.de/lennart/projects/nss-mdns/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~hppa ~mips ppc x86"
+IUSE="search-domains"
+
+RDEPEND=">=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}"
+RDEPEND="${RDEPEND}
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508-r7
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.10-avahi-socket.patch \
+ "${FILESDIR}"/${PN}-0.10-ipv6.patch
+ epatch_user
+ eautoreconf
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE=${S} \
+ econf \
+ $(use_enable search-domains) \
+ --enable-avahi
+}
+
+multilib_src_install_all() {
+ dodoc README
+
+ insinto /etc
+ doins "${FILESDIR}"/mdns.allow
+}
+
+pkg_postinst() {
+ ewarn
+ ewarn "You must modify your name service switch look up file to enable"
+ ewarn "multicast DNS lookups. If you wish to resolve only IPv6 addresses"
+ ewarn "use mdns6. For IPv4 addresses only, use mdns4. To resolve both"
+ ewarn "use mdns. Keep in mind that mdns will be slower if there are no"
+ ewarn "IPv6 addresses published via mDNS on the network. There are also"
+ ewarn "minimal (mdns?_minimal) libraries which only lookup .local hosts"
+ ewarn "and 169.254.x.x addresses."
+ ewarn
+ ewarn "Add the appropriate mdns into the hosts line in /etc/nsswitch.conf"
+ ewarn "An example line looks like:"
+ ewarn "hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4"
+ ewarn
+ ewarn "If you want to perform mDNS lookups for domains other than the ones"
+ ewarn "ending in .local, add them to /etc/mdns.allow"
+ ewarn
+}
diff --git a/sys-auth/nss-mdns/nss-mdns-9999.ebuild b/sys-auth/nss-mdns/nss-mdns-9999.ebuild
new file mode 100644
index 000000000000..22527697c7c8
--- /dev/null
+++ b/sys-auth/nss-mdns/nss-mdns-9999.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+EGIT_REPO_URI="https://github.com/lathiat/nss-mdns"
+inherit autotools git-r3 multilib-minimal
+
+DESCRIPTION="Name Service Switch module for Multicast DNS"
+HOMEPAGE="https://github.com/lathiat/nss-mdns"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE=""
+
+RDEPEND=">=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+multilib_src_configure() {
+ local myconf=(
+ # $(localstatedir)/run/... is used to locate avahi-daemon socket
+ --localstatedir=/var
+ )
+
+ ECONF_SOURCE=${S} \
+ econf "${myconf[@]}"
+}
+
+multilib_src_install_all() {
+ dodoc *.md
+
+ insinto /etc
+ doins "${FILESDIR}"/mdns.allow
+}
+
+pkg_postinst() {
+ ewarn "You have to modify your name service switch look up file to enable"
+ ewarn "multicast DNS lookups. If you wish to resolve only IPv6 addresses"
+ ewarn "use mdns6. For IPv4 addresses only, use mdns4. To resolve both"
+ ewarn "use mdns. Keep in mind that mdns will be slower if there are no"
+ ewarn "IPv6 addresses published via mDNS on the network. There are also"
+ ewarn "minimal (mdns?_minimal) libraries which only lookup .local hosts"
+ ewarn "and 169.254.x.x addresses."
+ ewarn
+ ewarn "Add the appropriate mdns into the hosts line in /etc/nsswitch.conf."
+ ewarn "An example line looks like:"
+ ewarn "hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4"
+ ewarn
+ ewarn "If you want to perform mDNS lookups for domains other than the ones"
+ ewarn "ending in .local, add them to /etc/mdns.allow."
+}
diff --git a/sys-auth/nss-myhostname/Manifest b/sys-auth/nss-myhostname/Manifest
new file mode 100644
index 000000000000..751b3979f98b
--- /dev/null
+++ b/sys-auth/nss-myhostname/Manifest
@@ -0,0 +1,5 @@
+DIST nss-myhostname-0.3.tar.gz 330031 SHA256 2ba744ea8d578d1c57c85884e94a3042ee17843a5294434d3a7f6c4d67e7caf2 SHA512 8f14091f887991532bc3cedcdee607c89f403c7869063919c299cdd7ee8207a9759ab9105093bae151a79e08944053598104a59e9987949ee146d742a12e8c34 WHIRLPOOL 9161372c1e5dea6ea925f96fadfbb955786e812a079fea621b3c212bafe6fcbb6a20f6979d3cb474ccba73ce9e2ebdd7d51ef7f994413dcdc20fb0f1572f6d9d
+EBUILD nss-myhostname-0.3.ebuild 1015 SHA256 342c96827c1836ab1aeb7382e4f5c3be7581a457b6dfc8f0f4b9944d2839e82c SHA512 4f9514e28ab82979212a1b320cd5c1fb362168bba9148a5798168ef65281e8076cf2b74fccdfc9280670832459f07293e6b46f7742c4d33851acd6b282ba3291 WHIRLPOOL 39c7e18b6abb21676e5a1439dd75c39f37d055fcc83a6890ebb8b0fbb81d710136bed55be550bbdf2e7e331555d39447b7619eb9324c4a712370ef631f7f35b5
+MISC ChangeLog 2444 SHA256 fd542ae430b77ba3709e8fe9f9c150cf11e150c3d7e4199a51970d84a0fcded0 SHA512 0a348d7d7b25a8b1dae0cecaf50aa3773a19f1d807c7f6c35e9a7c9ce535891b3b90f191a9de662d175469c605fcfe3a97ea66201161d3b9b5d322a8a7c9f521 WHIRLPOOL 38ebd8ded8944f9d8597459e8b0e119e5723dba9bc900b7cabb68db16dd791574b9f97b029df40a407a6ff9b7411d4e87ef2c7016745447df79206cd6bb0f075
+MISC ChangeLog-2015 2311 SHA256 ed0992bc2ec758907c63520427630a371a74373ca9f97868f5a3f1d5882e6fd9 SHA512 7ff90aa0e1bc1f7330a00b9a24adec6d525e6dece471301e4fc084cb692544fcad8ecdc27190860710ceca78711480dc9b886c3f2e466e853724664afd664ac5 WHIRLPOOL 4ddf732c0ee610e08c18bb6e444768059a6375d2cfc56ac9c80130c2649d4457a32e66e23772362ec3c97455274cf72c3030b55c55ee8e34a530d0029f2c46e0
+MISC metadata.xml 1187 SHA256 a8ef0f975bfbb0ef1416b0a93805ce34616cd06db3ab87423213ed77803d7a15 SHA512 deb1bfd5da4994856f51f0394aa6cd3604aec1e64a707e12504a910efa7a6642fcea645fada8209d56e2cd6e748c07c95cc9b149de8fdd5704934b00eebb1587 WHIRLPOOL 33784be2734ed5fa3bca04f4bc41b5c9f1276e2fdc9322a74bcabec27479345e2b2f92b50a0c734c5d11932ffcd6c9273db26abddd561ca3b5c837bc8bde0458
diff --git a/sys-auth/nss-myhostname/metadata.xml b/sys-auth/nss-myhostname/metadata.xml
new file mode 100644
index 000000000000..3016d789c532
--- /dev/null
+++ b/sys-auth/nss-myhostname/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>freedesktop-bugs@gentoo.org</email>
+ <name>Gentoo Freedesktop Project</name>
+</maintainer>
+<longdescription lang="en">
+nss-myhostname is a plugin for the GNU Name Service Switch (NSS) functionality
+of the GNU C Library (glibc) providing host name resolution for the locally
+configured system hostname as returned by gethostname(2). Various software
+relies on an always resolvable local host name. When using dynamic hostnames
+this is usually achieved by patching /etc/hosts at the same time as changing
+the host name. This however is not ideal since it requires a writable /etc
+file system and is fragile because the file might be edited by the
+administrator at the same time. nss-myhostname simply returns all locally
+configure public IP addresses, or -- if none are configured -- the IPv4
+address 127.0.0.2 (wich is on the local loopback) and the IPv6 address ::1
+(which is the local host) for whatever system hostname is configured locally.
+Patching /etc/hosts is thus no longer necessary.
+</longdescription>
+</pkgmetadata>
diff --git a/sys-auth/nss-myhostname/nss-myhostname-0.3.ebuild b/sys-auth/nss-myhostname/nss-myhostname-0.3.ebuild
new file mode 100644
index 000000000000..6dda0b42a910
--- /dev/null
+++ b/sys-auth/nss-myhostname/nss-myhostname-0.3.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+
+DESCRIPTION="Name Service Switch module for resolving the local hostname"
+HOMEPAGE="http://0pointer.de/lennart/projects/nss-myhostname/"
+SRC_URI="http://0pointer.de/lennart/projects/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 ia64 ppc ppc64 sparc x86"
+IUSE=""
+
+COMMON_DEPEND=""
+RDEPEND="${COMMON_DEPEND}
+ !>=sys-apps/systemd-197"
+DEPEND="${COMMON_DEPEND}"
+
+src_prepare() {
+ # The documentation in doc/ is just the README file in other formats
+ sed -e 's:SUBDIRS *= *doc:SUBDIRS =:' -i Makefile.{am,in} ||
+ die "sed failed"
+}
+
+src_configure() {
+ econf --disable-lynx
+}
+
+pkg_postinst() {
+ elog "You must modify your name service switch lookup file to enable"
+ elog "nss-myhostname. To do so, add 'myhostname' to the hosts line in"
+ elog "/etc/nsswitch.conf"
+ elog
+ elog "An example hosts line looks like this:"
+ elog "hosts: files dns myhostname"
+ elog
+}
diff --git a/sys-auth/nss-pam-ldapd/Manifest b/sys-auth/nss-pam-ldapd/Manifest
new file mode 100644
index 000000000000..378f21e3c9ab
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/Manifest
@@ -0,0 +1,18 @@
+AUX nslcd-init-r1 742 SHA256 0899c987c05df413c0a7b1c4a20503f39b9b703b176482c29a967cda7b64df6d SHA512 3a3af1ab32d3af9de0fa8275c76a46c854ce1fad071aaba93b2f4d4c3de67feb7a6479546a510300696eecdb83fd6519c4eff02c6890f7614cd18b3aababc50f WHIRLPOOL 8c2cc307cb4507611edfa0074c71418621bfd1a4d2a322e1ec95af37759f5beb3a82db5219ca24cdcfb2879e666dfcb11a62014b4c843beedddf2a105a1db96c
+AUX nslcd-init-r2 520 SHA256 b87b0d010e52bdbe95f551fd9458b65a2588b74eb78c9a2af0bdfe4514e665d0 SHA512 be04068d174747a808eceb194cea7b805cefb04809000cc022ef7a63e3d628cecd427c2f2c61ad4c8f71313db8faa8b3b13f78aef80c4bfa32e35e5e166b6f01 WHIRLPOOL 0254a4be1b1d15ac5b9281e7d6304fcdacea843888c334b7977d5ee5c3f84b2b45bd90041a4a15575fec9ea103c97b9b3b743092619d0c98ab0bedf4d2a0e529
+AUX nslcd-run-s6 44 SHA256 3be41774e701ee9c041b3ad296fb06c649ad0f855b0fb7e47624b2f942da0c82 SHA512 190cd1440ab30dc32d09d7de9dee783d5d149547e491930d5f514b4bd53197e45a307906762d0e650ef802aa18ba266b40f61483569208c57709b2cbd74d3ae9 WHIRLPOOL 55c0806aca13eaf43a7a128dfca3b572b627caca82d7e7f669553d9fab30cd7b3967b085070f8e41a9081746e76d0d03495960204e0ed73b1cba561ed302e158
+AUX nslcd-tmpfiles.conf 32 SHA256 670cad7afe9938464a1e2edd6bbb588e138318795ed6895493c64fa7e666164a SHA512 ccffd327cfa015ec746f4e1506c02beb514763625b0e5818455491b911d9328b19f17620926c15aaf18f5cd9268ea71f5ef35ce7a427aefab950579d5629ee5d WHIRLPOOL fdae80405339264b9c9a491b80d5e68990f2a8c5a42ab2b8b2fc60ea00ee4a5a47ca1b74a256caacb376292302b6e44a888e2d201d9ad2b698e65974ec52aba5
+AUX nslcd.service 324 SHA256 9a194c0cc0f43fac5de3ac974cf8efef1911e233c05d7cdef22a9922161d940a SHA512 8055407704c445b4b90046cc4f6b68544d8955bf65fc6b4a2fdf986548a353c2292de70edcf7cb2356619cb122cd3341a82156b6f71eec914471406447cb26a7 WHIRLPOOL bfe549b354ebe56aeb8442a081fdecd7326391d789bb733933606dac8a118a66f169561ea07e389206f971dc93b6d665ae9f8d374a6e36160db218c1b5c0f973
+AUX nss-pam-ldapd-0.9.4-disable-py3-only-linters.patch 403 SHA256 d47afa040e8c282bf7f294583ae2c11a66c12cc702082c138eebaf972afcfa68 SHA512 c8cccb044a641f673f12db9717bda4c0c4d91bd1933342595d8f3f540449459c5cf14263133487195b223670d450873f608e3ce5b6f1ca775ca7fe0180a9f962 WHIRLPOOL 916c2b506e9133864c4063bc6ab420b6c6a7759b8b7adc6f6964b9b33bbcd5966b89135bf37eb3a511646806a11073210a68be9ea379fb214539f4a41934cc22
+AUX nss-pam-ldapd-0.9.8-pynslcd-module-paths.patch 589 SHA256 f8d4d7b90ba1e971aa401382dc903ceee17f7ec66aea77567aa91b89f0f1deb0 SHA512 1bec5eb2376a85b0885b47e9ae560e9fcacb67b2d7a7170777f9e74c4cc8f9e1d57267cc122312f7df8cad05568f6dfcccd1cc6a62478c4d5c90459846e07706 WHIRLPOOL 3120821469e15e30e2fa1cb463549a49e60bebe4d438bd91e2f879f10f00591faa5e1900f14e78d4b3d389ead286d62afdf3d1f23c8197d317e37f20b970d15c
+AUX pynslcd.initd 522 SHA256 d78b8822c09b035854282f3f7aa0c6cbbcee196b1987abf014d371d7c60bcb4c SHA512 2b737990a54b55c04de76fb295c466afbd029e44252372b0ca7a03407d059dfb200c63bfcbf55b1183d8c4f9f90a4f1130d8f5332f4fbde783d92c9ac0ce29b0 WHIRLPOOL 2660c2ebc0b645667f51706bdaa1f755303ffecb5407721039159b1e5ab2c9355cf8bd6606e69852b8ccf874ed98800c282c073841658770fbdb607b419bdda9
+DIST nss-pam-ldapd-0.8.14.tar.gz 508949 SHA256 a29ceb9b7eda386ca38f16115ffec61425462cca6b5e560c44c3d51edc03a63f SHA512 70abb1836b5b3304e583fd3b71f11fee7586e181b26f4630779ec1d90b856da6e4fcc76327c51b20a158aa36708dd12ceb5f543a33c826881f2ad3e092f542c9 WHIRLPOOL 5d30088d73e464bf380dd5e7d34f8c5200680712693c97ee1f1df1880b4680236d9168ac7ec08b161ae463236c0feddc2171442a956c872113caa6e2b07a6bb8
+DIST nss-pam-ldapd-0.9.7.tar.gz 762743 SHA256 0db88d6518bf7ffb01b44f8f8841ece5162906982ce2c9e45e6afff90d3783eb SHA512 2117262f41c4fc54987f9f663ed71126100420ecff391cc280e98d7864094db201a81a4ebf7e5634436982092be3c751971d8aee53e39c42a8572ab57b561284 WHIRLPOOL be1a3a1a5a2eec6fe1e75f5fd40e741fd5dd013534c05898c0498090983632a17931bcf6d3f9e53f583a584d7e02b74c6844343e05617c61e03c0c92b792e044
+DIST nss-pam-ldapd-0.9.8.tar.gz 771247 SHA256 ef7362e7f2003da8c7beb7bcc03c30494acf712625aaac8badc6e7eb16f3453f SHA512 f0d24afd4cb5cea8155aa719b598448d3d81a896f7bc431f7d73e0617a7b2aa7e0ceb6de0b50163848c5554d96a3c415226e32a92e64ed91772fec4c64ad135b WHIRLPOOL 59452c03795d334210fda4b5fbdc23f02e2dfa39e464b6507a8d5f1b8a9caf4033117446d1416de436445f8dc0272252220b1d3cd6f132cbdbba4e3950727fe1
+EBUILD nss-pam-ldapd-0.8.14-r2.ebuild 1997 SHA256 46b100890c73c72747041018a72767f3c1e55948f05d5367544cedeab9a86dea SHA512 c9991819449891bc75b941388345871bc047f3f2202569265d9075ba6bd6bc095aca494f22f3411c59197f9401d0d0b109929ad2d0e287d2094c736aa2bcd8d4 WHIRLPOOL 98c2127c76c3e3d68fb82c90c6224a41515262b95c5f7cdcc8cd703f6dd5e7ab651b9d4c4db45c4d8acbec8e578a831531e6be35a96f32a7ef748ecc83a4dace
+EBUILD nss-pam-ldapd-0.9.7.ebuild 3293 SHA256 fe0acee4cbe18dbdbf6265d7a0c7a08b7138a83b779105b72d691ce75ce0ac73 SHA512 7d2fd134c80785da1c05b0a544f2e87291fa64ca797326410eeb628dd6c11422819f46d922ba0ea2eaf2cc5a3d487f902858f0498de0ced4898b77f491b6e2fb WHIRLPOOL 75973066efc4680873a491c3200c36d0434cabbdf104b0d6bfb78f434badbda4b836f7f54e2e9cc1aefdc39e72c3b7e960812f0a32640fd1ac21842d2ff10508
+EBUILD nss-pam-ldapd-0.9.8-r2.ebuild 4177 SHA256 30a419be4047d65ac22fdb69edf9db5a0b1f4d80e707fb74a5aa12a31fdd96bf SHA512 49c3933587dfa82f93502985dca355f3d311df3b887aac26fee83060d7b68cb317874b378aff13ea7b22782d34a45bab3d98915fa03c43af258bbbcf879ac7c4 WHIRLPOOL 58a377f49962ac038ddedf7505599fc3340cabdd48dace5b3b2aee84af5d95d08219bdb6d1acfe1cfc649a559b11c4e13d23e88ddf427d24bc76462a160d9862
+EBUILD nss-pam-ldapd-0.9.8.ebuild 3335 SHA256 f3386bbb5fbfe936d179201a5ff69f7facf8877882981dba52b6e858304740d5 SHA512 e7d4c7a05f10d4fb3d3f7ec5a570a63eec8b7adeda6e3474f5a54112d3112495a837c19f78f03db410c79978002e91cb76bd254abd99edcf8d17c5af9f1d5833 WHIRLPOOL cec8c2dfa92d7e83cc10fa70129f5f6df4622ce62c005f69145f2f497efcbc866bf27cc58903a88b87717955553df664880c725d7f986aed6016fcfaacc36892
+MISC ChangeLog 3365 SHA256 7418c42c675e5947478ad25e4b74ca559d811dd5d9788d4120ee8c7bd7d18d19 SHA512 454dae4a7873ee257153491cbc0c68b1e4432aaef98f208295cc4f914dca61ef5fcbc1be085ab8b2c1e837d1fab3c14da7b7856d50ca57e7bda69c35a4926329 WHIRLPOOL a931235565ae9db3cf8be76db6137dfb137743fa60449e5f80a92aeebeb3d37f850babd29c118d7942117e2adef6accc9967c8ea93398ebab01f1fedac22613d
+MISC ChangeLog-2015 6693 SHA256 ff494096a5f8ec4b52add7754685dc5a3fb41e1c710565a754a42a5603dccd3e SHA512 42871289ce3643b6c08c96f9a032f79ff386b6a50fcf90bea2e715caa04d3141d81c33309bf5cfece26af1ccc1002da21a000830dd80c543e8e7a60173425362 WHIRLPOOL 010434df9374d3e51d7c534a9210fcfe3c63b53553228f2a50f9f3e4800c51ab9b1f0c51caeefad4962dc979d440ba0f45bfd946b2a8ed9e22fcf3977f131304
+MISC metadata.xml 1169 SHA256 30cefa0ba2355a59d3b96d5e63515136028e13c80cd14cab1b7885643ecf0551 SHA512 ab658f7d791db370920a4eb57da8ead2713b1cabda6f2dccd24478855043802e7c70a07c3aeaa33829b19dc94a4317d8b5ebec07d1caebe07b4fb3bc59b27b4c WHIRLPOOL 7887c4f170072b3bdb8a8dae8fdd65ee19fa8216b6bebe82066181bcf3f181063177183a2f20d16564ae157419b235540458a355bf99a0913f229becca71f416
diff --git a/sys-auth/nss-pam-ldapd/files/nslcd-init-r1 b/sys-auth/nss-pam-ldapd/files/nslcd-init-r1
new file mode 100644
index 000000000000..776a7b3009e0
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/files/nslcd-init-r1
@@ -0,0 +1,36 @@
+#!/sbin/openrc-run
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+extra_commands="checkconfig"
+cfg="/etc/nslcd.conf"
+
+depend() {
+ need net
+ use dns logger
+}
+
+checkconfig() {
+ if [ ! -f "$cfg" ] ; then
+ eerror "Please create $cfg"
+ eerror "Example config: /usr/share/nss-ldapd/nslcd.conf"
+ return 1
+ fi
+ return 0
+}
+
+start() {
+ checkpath -q -d /run/nslcd -o nslcd:nslcd
+ checkconfig || return $?
+
+ ebegin "Starting nslcd"
+ start-stop-daemon --start --pidfile /var/run/nslcd/nslcd.pid \
+ --exec /usr/sbin/nslcd
+ eend $? "Failed to start nslcd"
+}
+
+stop() {
+ ebegin "Stopping nslcd"
+ start-stop-daemon --stop --pidfile /var/run/nslcd/nslcd.pid
+ eend $? "Failed to stop nslcd"
+}
diff --git a/sys-auth/nss-pam-ldapd/files/nslcd-init-r2 b/sys-auth/nss-pam-ldapd/files/nslcd-init-r2
new file mode 100644
index 000000000000..55ef9a53774f
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/files/nslcd-init-r2
@@ -0,0 +1,28 @@
+#!/sbin/openrc-run
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+command=/usr/sbin/nslcd
+pidfile=/var/run/nslcd/nslcd.pid
+extra_commands="checkconfig"
+cfg="/etc/nslcd.conf"
+
+depend() {
+ need net
+ use dns logger
+}
+
+checkconfig() {
+ if [ ! -f "$cfg" ] ; then
+ eerror "Please create $cfg"
+ eerror "Example config: /usr/share/nss-ldapd/nslcd.conf"
+ return 1
+ fi
+ return 0
+}
+
+start_pre() {
+ checkpath -q -d /run/nslcd -o nslcd:nslcd
+ checkconfig
+ return $?
+}
diff --git a/sys-auth/nss-pam-ldapd/files/nslcd-run-s6 b/sys-auth/nss-pam-ldapd/files/nslcd-run-s6
new file mode 100644
index 000000000000..264da009ba11
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/files/nslcd-run-s6
@@ -0,0 +1,3 @@
+#!/bin/sh
+exec 2>&1
+exec /usr/sbin/nslcd -n
diff --git a/sys-auth/nss-pam-ldapd/files/nslcd-tmpfiles.conf b/sys-auth/nss-pam-ldapd/files/nslcd-tmpfiles.conf
new file mode 100644
index 000000000000..ac4ee0ad8649
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/files/nslcd-tmpfiles.conf
@@ -0,0 +1 @@
+d /run/nslcd 0755 nslcd nslcd -
diff --git a/sys-auth/nss-pam-ldapd/files/nslcd.service b/sys-auth/nss-pam-ldapd/files/nslcd.service
new file mode 100644
index 000000000000..030cc2c90eb1
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/files/nslcd.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=NSS and PAM LDAP client daemon
+After=network-online.target
+Wants=network-online.target nss-lookup.target syslog.service
+Before=nss-user-lookup.target
+
+[Service]
+Type=forking
+PIDFile=/var/run/nslcd/nslcd.pid
+ExecStart=/usr/sbin/nslcd
+
+[Install]
+WantedBy=multi-user.target
+RequiredBy=nss-user-lookup.target
diff --git a/sys-auth/nss-pam-ldapd/files/nss-pam-ldapd-0.9.4-disable-py3-only-linters.patch b/sys-auth/nss-pam-ldapd/files/nss-pam-ldapd-0.9.4-disable-py3-only-linters.patch
new file mode 100644
index 000000000000..06dcc2513a39
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/files/nss-pam-ldapd-0.9.4-disable-py3-only-linters.patch
@@ -0,0 +1,13 @@
+diff --git a/tests/pylint.rc b/tests/pylint.rc
+index 7f0bc13..b66d018 100644
+--- a/tests/pylint.rc
++++ b/tests/pylint.rc
+@@ -19,7 +19,7 @@ enable=
+ # can either give multiple identifier separated by comma (,) or put this option
+ # multiple time (only on the command line, not in the configuration file where
+ # it should appear only once).
+-disable=E1101
++disable=E1101,E1608,E1606,E1601
+
+
+ [REPORTS]
diff --git a/sys-auth/nss-pam-ldapd/files/nss-pam-ldapd-0.9.8-pynslcd-module-paths.patch b/sys-auth/nss-pam-ldapd/files/nss-pam-ldapd-0.9.8-pynslcd-module-paths.patch
new file mode 100644
index 000000000000..11c86eff2e24
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/files/nss-pam-ldapd-0.9.8-pynslcd-module-paths.patch
@@ -0,0 +1,25 @@
+diff --git a/pynslcd/pynslcd.py b/pynslcd/pynslcd.py
+index d367a8c..9a52120 100755
+--- a/pynslcd.py
++++ b/pynslcd.py
+@@ -30,13 +30,13 @@ import threading
+ import daemon
+ import ldap
+
+-from tio import TIOStream
+-import cfg
+-import common
+-import constants
+-import invalidator
+-import mypidfile
+-import search
++from pynslcd.tio import TIOStream
++import pynslcd.cfg as cfg
++import pynslcd.common as common
++import pynslcd.constants as constants
++import pynslcd.invalidator as invalidator
++import pynslcd.mypidfile as mypidfile
++import pynslcd.search as search
+
+
+ # the name of the program
diff --git a/sys-auth/nss-pam-ldapd/files/pynslcd.initd b/sys-auth/nss-pam-ldapd/files/pynslcd.initd
new file mode 100644
index 000000000000..7b6540810aed
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/files/pynslcd.initd
@@ -0,0 +1,28 @@
+#!/sbin/openrc-run
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+command=/usr/sbin/pynslcd
+pidfile=/var/run/nslcd/nslcd.pid
+extra_commands="checkconfig"
+cfg="/etc/nslcd.conf"
+
+depend() {
+ need net
+ use dns logger
+}
+
+checkconfig() {
+ if [ ! -f "$cfg" ] ; then
+ eerror "Please create $cfg"
+ eerror "Example config: /usr/share/nss-ldapd/nslcd.conf"
+ return 1
+ fi
+ return 0
+}
+
+start_pre() {
+ checkpath -q -d /run/nslcd -o nslcd:nslcd
+ checkconfig
+ return $?
+}
diff --git a/sys-auth/nss-pam-ldapd/metadata.xml b/sys-auth/nss-pam-ldapd/metadata.xml
new file mode 100644
index 000000000000..ad8b010a0a01
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/metadata.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>prometheanfire@gentoo.org</email>
+ <name>Matthew Thode</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>chutzpah@gentoo.org</email>
+ <name>Patrick McLean</name>
+ </maintainer>
+ <use>
+ <flag name="utils">Install the command-line utilities</flag>
+ <flag name="pynslcd">Install the python implementation along with the standard implementation</flag>
+ </use>
+ <longdescription lang="en">
+ Provides a Name Service Switch (NSS) module that allows your LDAP
+ server to provide user account, group, host name, alias, netgroup, and
+ basically any other information that you would normally get from /etc
+ flat files or NIS. It also provides a Pluggable Authentication Module
+ (PAM) to do authentication to an LDAP server.
+
+ This is implemented using thin NSS and PAM modules which delegate to a
+ dedicated service (nslcd) that queries the LDAP server with persistent
+ connections, authentication, attribute translation, etc.
+ </longdescription>
+</pkgmetadata>
diff --git a/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.8.14-r2.ebuild b/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.8.14-r2.ebuild
new file mode 100644
index 000000000000..e25cca2ef612
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.8.14-r2.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit multilib-minimal user
+
+DESCRIPTION="NSS module for name lookups using LDAP"
+HOMEPAGE="http://arthurdejong.org/nss-pam-ldapd/"
+SRC_URI="http://arthurdejong.org/nss-pam-ldapd/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="debug kerberos sasl +pam"
+
+DEPEND="
+ net-nds/openldap
+ sasl? ( dev-libs/cyrus-sasl )
+ kerberos? ( virtual/krb5 )
+ virtual/pam
+ !sys-auth/nss_ldap
+ !sys-auth/pam_ldap"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ enewgroup nslcd
+ enewuser nslcd -1 -1 -1 nslcd
+}
+
+multilib_src_configure() {
+ # nss libraries always go in /lib on Gentoo
+ myconf="
+ --enable-warnings
+ --with-ldap-lib=openldap
+ --with-ldap-conf-file=/etc/nslcd.conf
+ --with-nslcd-pidfile=/run/nslcd/nslcd.pid
+ --with-nslcd-socket=/run/nslcd/socket
+ --with-pam-seclib-dir=/$(get_libdir)/security
+ --libdir=/$(get_libdir)
+ $(use_enable debug)
+ $(use_enable kerberos)
+ $(use_enable pam)
+ $(use_enable sasl)"
+
+ if use x86-fbsd; then
+ myconf+=" --with-nss-flavour=freebsd"
+ else
+ myconf+=" --with-nss-flavour=glibc"
+ fi
+
+ ECONF_SOURCE="${S}" econf ${myconf}
+}
+
+multilib_src_install() {
+ default
+
+ # for socket and pid file (not needed bug 452992)
+ #keepdir /run/nslcd
+
+ # init script
+ newinitd "${FILESDIR}"/nslcd-init-r1 nslcd
+
+ # make an example copy
+ insinto /usr/share/nss-pam-ldapd
+ doins "${WORKDIR}/${P}/nslcd.conf"
+
+ fperms o-r /etc/nslcd.conf
+}
+
+pkg_postinst() {
+ echo
+ elog "For this to work you must configure /etc/nslcd.conf"
+ elog "This configuration is similar to pam_ldap's /etc/ldap.conf"
+ echo
+ elog "In order to use nss-pam-ldapd, nslcd needs to be running. You can"
+ elog "start it like this:"
+ elog " # /etc/init.d/nslcd start"
+ echo
+ elog "You can add it to the default runlevel like so:"
+ elog " # rc-update add nslcd default"
+ elog
+ elog "If you are upgrading, keep in mind that /etc/nss-ldapd.conf"
+ elog " is now named /etc/nslcd.conf"
+ echo
+}
diff --git a/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.7.ebuild b/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.7.ebuild
new file mode 100644
index 000000000000..22abd70bba2b
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.7.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=(python2_7)
+inherit eutils prefix user python-r1 multilib multilib-minimal systemd s6
+
+DESCRIPTION="NSS module for name lookups using LDAP"
+HOMEPAGE="http://arthurdejong.org/nss-pam-ldapd/"
+SRC_URI="http://arthurdejong.org/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="debug kerberos +pam sasl test +utils"
+
+COMMON_DEP="
+ net-nds/openldap[${MULTILIB_USEDEP}]
+ sasl? ( dev-libs/cyrus-sasl[${MULTILIB_USEDEP}] )
+ kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ virtual/pam[${MULTILIB_USEDEP}]
+ utils? ( ${PYTHON_DEPS} )
+ !sys-auth/nss_ldap
+ !sys-auth/pam_ldap"
+RDEPEND="${COMMON_DEP}"
+DEPEND="${COMMON_DEP}
+ test? (
+ ${PYTHON_DEPS}
+ dev-python/pylint[${PYTHON_USEDEP}]
+ )
+ sys-devel/automake"
+
+REQUIRED_USE="
+ utils? ( ${PYTHON_REQUIRED_USE} )
+ test? ( ${PYTHON_REQUIRED_USE} )"
+
+pkg_setup() {
+ enewgroup nslcd
+ enewuser nslcd -1 -1 -1 nslcd
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.9.4-disable-py3-only-linters.patch
+ epatch_user
+ use utils && python_setup
+}
+
+multilib_src_configure() {
+ local -a myconf
+
+ myconf=(
+ --disable-utils
+ --enable-warnings
+ --with-ldap-lib=openldap
+ --with-ldap-conf-file=/etc/nslcd.conf
+ --with-nslcd-pidfile=/run/nslcd/nslcd.pid
+ --with-nslcd-socket=/run/nslcd/socket
+ $(usex x86-fbsd '--with-nss-flavour=' '--with-nss-flavour=' 'freebsd' 'glibc')
+ $(use_enable debug)
+ $(use_enable kerberos)
+ $(use_enable pam)
+ $(use_enable sasl)
+ )
+
+ # nss libraries always go in /lib on Gentoo
+ if multilib_is_native_abi ; then
+ myconf+=("--with-pam-seclib-dir=${EPREFIX}/$(get_libdir)/security")
+ myconf+=("--libdir=${EPREFIX}/$(get_libdir)")
+ else
+ myconf+=("--with-pam-seclib-dir=/$(get_libdir)/security")
+ myconf+=("--libdir=/$(get_libdir)")
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_install_all() {
+ local script
+
+ newinitd "${FILESDIR}"/nslcd-init-r1 nslcd
+ newinitd "${FILESDIR}"/nslcd-init-r2 nslcd
+ s6_install_service nslcd "${FILESDIR}"/nslcd-run-s6
+
+ insinto /usr/share/nss-pam-ldapd
+ doins "${WORKDIR}/${P}/nslcd.conf"
+
+ fperms o-r /etc/nslcd.conf
+
+ if use utils; then
+ python_moduleinto nslcd
+ python_foreach_impl && python_domodule utils/*.py
+
+ for script in chsh getent; do
+ python_foreach_impl python_newscript utils/${script}.py ${script}.ldap
+ done
+ fi
+
+ systemd_newtmpfilesd "${FILESDIR}"/nslcd-tmpfiles.conf nslcd.conf
+ systemd_dounit "${FILESDIR}"/nslcd.service
+}
+
+multilib_src_test() {
+ python_foreach_impl emake check
+}
+
+pkg_postinst() {
+ echo
+ elog "For this to work you must configure /etc/nslcd.conf"
+ elog "This configuration is similar to pam_ldap's /etc/ldap.conf"
+ echo
+ elog "In order to use nss-pam-ldapd, nslcd needs to be running. You can"
+ elog "start it like this:"
+ elog " # /etc/init.d/nslcd start"
+ echo
+ elog "You can add it to the default runlevel like so:"
+ elog " # rc-update add nslcd default"
+ elog
+ elog "If you have >=sys-apps/openrc-0.16.3, you can also use s6"
+ elog "to supervise this service."
+ elog "To do this, emerge sys-apps/s6 then add nslcd-s6"
+ elog "default runlevel instead of nslcd."
+ elog
+ elog "If you are upgrading, keep in mind that /etc/nss-ldapd.conf"
+ elog " is now named /etc/nslcd.conf"
+ echo
+}
diff --git a/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.8-r2.ebuild b/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.8-r2.ebuild
new file mode 100644
index 000000000000..d286f5f9a46c
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.8-r2.ebuild
@@ -0,0 +1,163 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=(python2_7)
+inherit eutils prefix user python-r1 multilib multilib-minimal systemd s6
+
+DESCRIPTION="NSS module for name lookups using LDAP"
+HOMEPAGE="http://arthurdejong.org/nss-pam-ldapd/"
+SRC_URI="http://arthurdejong.org/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug kerberos +pam pynslcd sasl test +utils"
+
+COMMON_DEP="
+ net-nds/openldap[${MULTILIB_USEDEP}]
+ sasl? ( dev-libs/cyrus-sasl[${MULTILIB_USEDEP}] )
+ kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ virtual/pam[${MULTILIB_USEDEP}]
+ utils? ( ${PYTHON_DEPS} )
+ pynslcd? (
+ dev-python/python-ldap[${PYTHON_USEDEP}]
+ dev-python/python-daemon[${PYTHON_USEDEP}]
+ )
+ !sys-auth/nss_ldap
+ !sys-auth/pam_ldap"
+RDEPEND="${COMMON_DEP}"
+DEPEND="${COMMON_DEP}
+ test? (
+ ${PYTHON_DEPS}
+ dev-python/pylint[${PYTHON_USEDEP}]
+ )
+ sys-devel/automake"
+
+REQUIRED_USE="
+ utils? ( ${PYTHON_REQUIRED_USE} )
+ test? ( ${PYTHON_REQUIRED_USE} pynslcd )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.4-disable-py3-only-linters.patch
+ "${FILESDIR}"/${PN}-0.9.8-pynslcd-module-paths.patch
+)
+
+pkg_setup() {
+ enewgroup nslcd
+ enewuser nslcd -1 -1 -1 nslcd
+}
+
+src_prepare() {
+ cp pynslcd/pynslcd.py "${S}" || die "Copying pynslcd failed"
+
+ default
+ use utils && python_setup
+ touch pynslcd/__init__.py || die "Could not create __init__.py for pynslcd"
+}
+
+multilib_src_configure() {
+ local -a myconf
+
+ myconf=(
+ --disable-utils
+ --enable-warnings
+ --with-ldap-lib=openldap
+ --with-ldap-conf-file=/etc/nslcd.conf
+ --with-nslcd-pidfile=/run/nslcd/nslcd.pid
+ --with-nslcd-socket=/run/nslcd/socket
+ $(usex x86-fbsd '--with-nss-flavour=' '--with-nss-flavour=' 'freebsd' 'glibc')
+ $(use_enable pynslcd)
+ $(use_enable debug)
+ $(use_enable kerberos)
+ $(use_enable pam)
+ $(use_enable sasl)
+ )
+
+ # nss libraries always go in /lib on Gentoo
+ if multilib_is_native_abi ; then
+ myconf+=("--with-pam-seclib-dir=${EPREFIX}/$(get_libdir)/security")
+ myconf+=("--libdir=${EPREFIX}/$(get_libdir)")
+ else
+ myconf+=("--with-pam-seclib-dir=/$(get_libdir)/security")
+ myconf+=("--libdir=/$(get_libdir)")
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_install_all() {
+ local script
+
+ newinitd "${FILESDIR}"/nslcd-init-r1 nslcd
+ newinitd "${FILESDIR}"/nslcd-init-r2 nslcd
+ s6_install_service nslcd "${FILESDIR}"/nslcd-run-s6
+
+ insinto /usr/share/nss-pam-ldapd
+ doins "${WORKDIR}/${P}/nslcd.conf"
+
+ fperms o-r /etc/nslcd.conf
+
+ if use utils; then
+ python_moduleinto nslcd
+ python_foreach_impl python_domodule utils/*.py
+
+ for script in chsh getent; do
+ python_foreach_impl python_newscript utils/${script}.py ${script}.ldap
+ done
+ fi
+ if use pynslcd; then
+ rm -rf "${D}"/usr/share/pynslcd
+ python_moduleinto pynslcd
+ python_foreach_impl python_domodule pynslcd/*.py
+ python_scriptinto /usr/sbin
+ python_newscript pynslcd.py pynslcd
+ newinitd "${FILESDIR}"/pynslcd.initd pynslcd
+ fi
+
+ systemd_newtmpfilesd "${FILESDIR}"/nslcd-tmpfiles.conf nslcd.conf
+ systemd_dounit "${FILESDIR}"/nslcd.service
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+
+ if use pynslcd; then
+ python_moduleinto pynslcd
+ python_foreach_impl python_domodule pynslcd/*.py
+ fi
+}
+
+python_test() {
+ PYTHONPATH="${S}" emake check
+}
+
+multilib_src_test() {
+ pushd "${BUILD_DIR}"
+ ln -s ../pynslcd/constants.py utils/constants.py
+ python_foreach_impl python_test
+ popd
+}
+
+pkg_postinst() {
+ echo
+ elog "For this to work you must configure /etc/nslcd.conf"
+ elog "This configuration is similar to pam_ldap's /etc/ldap.conf"
+ echo
+ elog "In order to use nss-pam-ldapd, nslcd needs to be running. You can"
+ elog "start it like this:"
+ elog " # /etc/init.d/nslcd start"
+ echo
+ elog "You can add it to the default runlevel like so:"
+ elog " # rc-update add nslcd default"
+ elog
+ elog "If you have >=sys-apps/openrc-0.16.3, you can also use s6"
+ elog "to supervise this service."
+ elog "To do this, emerge sys-apps/s6 then add nslcd-s6"
+ elog "default runlevel instead of nslcd."
+ elog
+ elog "If you are upgrading, keep in mind that /etc/nss-ldapd.conf"
+ elog " is now named /etc/nslcd.conf"
+ echo
+}
diff --git a/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.8.ebuild b/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.8.ebuild
new file mode 100644
index 000000000000..edce37919103
--- /dev/null
+++ b/sys-auth/nss-pam-ldapd/nss-pam-ldapd-0.9.8.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=(python2_7)
+inherit eutils prefix user python-r1 multilib multilib-minimal systemd s6
+
+DESCRIPTION="NSS module for name lookups using LDAP"
+HOMEPAGE="http://arthurdejong.org/nss-pam-ldapd/"
+SRC_URI="http://arthurdejong.org/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="debug kerberos +pam sasl test +utils"
+
+COMMON_DEP="
+ net-nds/openldap[${MULTILIB_USEDEP}]
+ dev-python/python-ldap[${PYTHON_USEDEP}]
+ sasl? ( dev-libs/cyrus-sasl[${MULTILIB_USEDEP}] )
+ kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ virtual/pam[${MULTILIB_USEDEP}]
+ utils? ( ${PYTHON_DEPS} )
+ !sys-auth/nss_ldap
+ !sys-auth/pam_ldap"
+RDEPEND="${COMMON_DEP}"
+DEPEND="${COMMON_DEP}
+ test? (
+ ${PYTHON_DEPS}
+ dev-python/pylint[${PYTHON_USEDEP}]
+ )
+ sys-devel/automake"
+
+REQUIRED_USE="
+ utils? ( ${PYTHON_REQUIRED_USE} )
+ test? ( ${PYTHON_REQUIRED_USE} )"
+
+pkg_setup() {
+ enewgroup nslcd
+ enewuser nslcd -1 -1 -1 nslcd
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.9.4-disable-py3-only-linters.patch
+ epatch_user
+ use utils && python_setup
+}
+
+multilib_src_configure() {
+ local -a myconf
+
+ myconf=(
+ --disable-utils
+ --enable-warnings
+ --with-ldap-lib=openldap
+ --with-ldap-conf-file=/etc/nslcd.conf
+ --with-nslcd-pidfile=/run/nslcd/nslcd.pid
+ --with-nslcd-socket=/run/nslcd/socket
+ $(usex x86-fbsd '--with-nss-flavour=' '--with-nss-flavour=' 'freebsd' 'glibc')
+ $(use_enable debug)
+ $(use_enable kerberos)
+ $(use_enable pam)
+ $(use_enable sasl)
+ )
+
+ # nss libraries always go in /lib on Gentoo
+ if multilib_is_native_abi ; then
+ myconf+=("--with-pam-seclib-dir=${EPREFIX}/$(get_libdir)/security")
+ myconf+=("--libdir=${EPREFIX}/$(get_libdir)")
+ else
+ myconf+=("--with-pam-seclib-dir=/$(get_libdir)/security")
+ myconf+=("--libdir=/$(get_libdir)")
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_install_all() {
+ local script
+
+ newinitd "${FILESDIR}"/nslcd-init-r1 nslcd
+ newinitd "${FILESDIR}"/nslcd-init-r2 nslcd
+ s6_install_service nslcd "${FILESDIR}"/nslcd-run-s6
+
+ insinto /usr/share/nss-pam-ldapd
+ doins "${WORKDIR}/${P}/nslcd.conf"
+
+ fperms o-r /etc/nslcd.conf
+
+ if use utils; then
+ python_moduleinto nslcd
+ python_foreach_impl && python_domodule utils/*.py
+
+ for script in chsh getent; do
+ python_foreach_impl python_newscript utils/${script}.py ${script}.ldap
+ done
+ fi
+
+ systemd_newtmpfilesd "${FILESDIR}"/nslcd-tmpfiles.conf nslcd.conf
+ systemd_dounit "${FILESDIR}"/nslcd.service
+}
+
+multilib_src_test() {
+ python_foreach_impl emake check
+}
+
+pkg_postinst() {
+ echo
+ elog "For this to work you must configure /etc/nslcd.conf"
+ elog "This configuration is similar to pam_ldap's /etc/ldap.conf"
+ echo
+ elog "In order to use nss-pam-ldapd, nslcd needs to be running. You can"
+ elog "start it like this:"
+ elog " # /etc/init.d/nslcd start"
+ echo
+ elog "You can add it to the default runlevel like so:"
+ elog " # rc-update add nslcd default"
+ elog
+ elog "If you have >=sys-apps/openrc-0.16.3, you can also use s6"
+ elog "to supervise this service."
+ elog "To do this, emerge sys-apps/s6 then add nslcd-s6"
+ elog "default runlevel instead of nslcd."
+ elog
+ elog "If you are upgrading, keep in mind that /etc/nss-ldapd.conf"
+ elog " is now named /etc/nslcd.conf"
+ echo
+}
diff --git a/sys-auth/nss_ldap/Manifest b/sys-auth/nss_ldap/Manifest
new file mode 100644
index 000000000000..37dca3d666c0
--- /dev/null
+++ b/sys-auth/nss_ldap/Manifest
@@ -0,0 +1,34 @@
+AUX nss_ldap-239-tls-security-bug.patch 1022 SHA256 4915f034328c69dc1323cfec3a8d2e2e4eeb2a57590b0aeafa06f0cb3fafe5b4 SHA512 9700962f0844ed4e4695dd31efe2b654a646a644b401b282a0b23cb80a3eedde95b54a79cd7a9c25ea3ed319c178aef7edf84953a5cf6edbc5a4ac5bf805c603 WHIRLPOOL 18aa455bb4df4915dc75c37721d0a7682c1dcdd3d6cbf1b377789a8a9ec13ace19a4f70954afd9394033336c2d03ad7e69282bf8d48117ba28b05be21c1cd2cc
+AUX nss_ldap-249-sasl-compile.patch 282 SHA256 3da93087461fb970d5da9fe6b169f5493ca83ae2149cb03be9e8486bfcf437d6 SHA512 74af8f635a2bae5d901e685d0a9df3b92583b4480f0736b095df6091eac059226b91149d4b8a30a2ee60b948b55b87b8e6402d0e8fdcf1e84d384781c4880cea WHIRLPOOL 270c76def84be520d6c03296f186ad60eeb0cf7480682b099dc3f8ee9b6bbc86b3fdf8d199ebe907ea8f377d2a0289d609cf8b7cf9cc5115b5aaee3b1e823dc6
+AUX nss_ldap-252-reconnect-timeouts.patch 3169 SHA256 9867267fb7ae1e08f3aa872f3682b12855465bf5bfc9407d75935e54678ab90f SHA512 c3a282d422792830e8572baa05ec58868c3cda7a80591e06c54bc3fc07cabba32f2a9fbe428a5a2f9c6e76eca5c475d200ca113c58ad2cbba290adadf41de4b9 WHIRLPOOL f03073d41a71730ce1a38d90fc2ce19b1dfc63d1dc04c93b6684a6437943333c971528caa1f73f53afe0639b11d869906ab35654167a2c0361d8430f0edc226c
+AUX nss_ldap-254-nss_getgrent_skipmembers.patch 7837 SHA256 60ef4dcf7dc5d3c7449904a396d1ab1c7cf60211d202ced1202a9e2beef7c95c SHA512 38957dd652c5340dab02000b0d62dfad803bd0593c139e84ea26cc9aabbbe68fcf221cd9030b4f9a2faa1ee5ef3ef1242b96a2dd2557cd5432ab8fdb8d513ca0 WHIRLPOOL 77592627c02cc149e4e22b332b701b28ca128b4443b1a084a9c400173a36167219bd054845c72f19813959a28c8cfe4ffbe1a36b1160c9b0b923550f8c386968
+AUX nss_ldap-254-soname.patch 604 SHA256 b07482163f238d843a3a7a31008890e523dd17825bb35caaf30716c896a5bc05 SHA512 4a41f7c5507095a26fc10f2ebc9563cf50017c0e95277db20363dec92e59c2b3cfde49ada036887177d439487c1d5c406c03269f5a329c3f8a381a045d1a1ae2 WHIRLPOOL 7821f54dfc7c567369ce242b6e033558eaa82c83c0b2466c846b0bc99a75336932c2b9f2a0007283394846953023426373636db26c9e367eee9b238115dc3547
+AUX nss_ldap-257-nss_max_group_depth.patch 3551 SHA256 66286a3d097b2ac425bd7f6078701a8f5b357ee535284d3faa4e0783b974fa37 SHA512 7810f8c053c8f6b01cc61bb1953441d457bc6d90b4e985d03f6c7e8a7ef60225c86dfa0248fe1107955418a3ed205b52510fd2bee07fefc1c559300a1417d1de WHIRLPOOL afdcf317d8fad283f66008546c0858a78c0e259aa2cc5dcb881d527b3e5a319e1c0ee41bd2e429e0057aeecfa22eeacce5b2eee88e1c98c09b42e302f4409dd2
+AUX nss_ldap-257.2-gssapi-headers.patch 2343 SHA256 1b920cfc6b5d62408fee019cdf8491a8cbc9884344775d9fb57cd8a419d32fd5 SHA512 51acfb4879c242582fc6f4d8543b96ff5e2e36e5bfacc3e8d8f1648f77a16957bbb7da0fa8d09ee1eea0ea19d81b0511ce72cc1c91ca2c68709203ec60369dde WHIRLPOOL b2e40760256bf9805b718d0aba40c9d00dcd6e9a5183491ccaa4398ec580c74aa53b7025d2ab460cdaa2dee13a04bbae391f21605ba3eaae27482bb7e66845bd
+AUX nss_ldap-264-disable-automagic.patch 4357 SHA256 7e8fbaa80a3174b68991d232a214af9e6f7eae7e7aaedd92d200828a8510d0e6 SHA512 4d7fc328f90dfc189ee0784db0298434b9a91ed5a9b2828dd94c2632c2116193e22df737de9ff7044746b337c47744284371aa4f32b83be61c5f0ec86edb7d35 WHIRLPOOL 85770ba891d1e11937d253a71d8e9b3939f62fcebc82dfacabf82f7a5cfdc8ff343f58f8438a130c500c1598e7ab60cce84b87f5c073a1b00087e588fc62252d
+AUX nss_ldap-265-fbsd.patch 13987 SHA256 b6f496145fd2770b49ec1db056a2b6adc4246d90e352cae0376b441e897df340 SHA512 efb2e6c955b43743a06b7ddbda9bdf4c3a58f881a45f5d3166c87afd265399bc6da2014c17e3ef4b10a8a66532f38190fab8ddd3f970f155905372f09f6ff3e2 WHIRLPOOL f85ff1ce09a3ce7feb9b95e4b331fa120ecc2c0dc316fb5ef2b07b2fa36ad86cb8e70e91a9a22bb4bab3a1d7e229e451e887826356d52dab35fa7f7caf6de33a
+AUX nss_ldap-265-installdir.patch 1626 SHA256 68614bf9b3c6599e06a8ee2300ab9ab7266395605c683844b5ef4dd68d252b6e SHA512 7e86ff4fff320ef8132fff6f317dc58641845327c4de9be3b0d41004d27dab41fcc8752987682cee0b8e22230ab1034f0cf45a84ec405706aa37d499bbcc70b8 WHIRLPOOL 9ccd812f8a4f6d404d7fa1c6da0d9fa55caeef18e0d78b81298cc8a0468affef5dc6d9601ebb0ee1761be7a1098c12cded51ce5c4a1a47bc02a8c96aea68e855
+AUX nss_ldap-265-missing-entries-oneshot.patch 3734 SHA256 606fe41b1e1b65876cf96d2846151f42e950a1dd82852cf5f782e9bbb4a8bf0a SHA512 07136f98f5b195f4b794ede35d314db205b89e63168b14489964ad676714ecf861acdd5810fc99c2e784115af4e0e0a20f849672e7f6643dbb6e14db11c9cb05 WHIRLPOOL 38f1db40e3699b6c4df351f82e1fbc06a3d8fbdf87441fecdd4005d353c16899b310782bb6837e85bef193002cc9a232eb5cb646d2742cd5ce72283741b0c659
+AUX nss_ldap-265-pthread.patch 18698 SHA256 403d00a198f48fe5edda31fba3b09ab8898007e2885e110870b50400cb274610 SHA512 2afc8a8ee20043985b739923a4c7472f0e13c6854de6d3023ac6c843d3ba6ecf4cf7ee21da4d8dad907f27ab476eec646fa4603d8be725f079f60a4a220c025d WHIRLPOOL 4e37264f2dee13846cfac74e88d0b09ac7020e4fc04a04f1bdca0c5fab431852cd8028959ad43478ff5cc06731f6a4b8f41a29d21e1372abec98e60f9ef9a170
+AUX nss_ldap-265-reconnect-timeouts.patch 2806 SHA256 f1d3a308aac80fc1f33d4087a7839e01e45ece3aed284378adecb537bdcc53c3 SHA512 d9767cfaf32b9041d222c7b313c327a72ac2766d26fed7ce19cc1acff56cf2493d4e1e83b33852083505952f983ba64c00409e3cf09dcbf74676390968dd935b WHIRLPOOL c92858995a2d9950f47ad56a848d88470d829ecda81d5c83a55f9eb179d89750d382b05185502fae116aec9073a2115a2ceb70e13048d99b66ebf2126b656281
+AUX nsswitch.ldap.diff 575 SHA256 f3bf121d1fa4e3c0119d36ddd2445bcbbd955e2b7fe2f0fe65ebaa6d2808c43e SHA512 0d08d4dacea0213714cab864300e625158106245eeb34a7d4b983749dd4fa4156d3f36d6c2dd214efdf80cf926c37657eb00651bceb89907286a3310123399a0 WHIRLPOOL f03a8bbda19e40a4d4d6352c0f496bd32ed6e4001b14c5e169fd16638467602c2ca4620d819cfd3aa29844192f1cb5367190f2df30f920ddeec716062558cb80
+DIST nss_ldap-258.tar.gz 274694 SHA256 afa3bb64cd29557e775219585655721ac220de5804d95d0c307dab86f2308346 SHA512 0a92076214e6ffaa60929a9fdc34fe7c9a584a0789d54ea505e65a69eda88a3ee0382ea5a90c581073c95671fa3a50b8a8a529e30f4260afacb3820695773ecb WHIRLPOOL 2d9f5e950886b9714c9c8ca348df855054b9505ca0c7891ec919016c1fa8cd1ddc9723fe74c7ecadfa75504f8bb77b78c50a7e64d67f934d4064a26e3b381db1
+DIST nss_ldap-259.tar.gz 274878 SHA256 8b65a32717f6173911aaea8e89b2c89ccb901f14f1063f5e49b5ab77d45f1790 SHA512 d20514df1b8dba4ad67cf5d130aa4a2e1b0aea1ee09832bc27078f26a62ecf56b0294b5fcd3425b5b6969889afc99f7fc335a34994034dcfb10f3ab5385d3393 WHIRLPOOL 848c3a5a9d1ac42704dde5a21bccdb282d505753608357f2725dbbf93dfe45366010a339aa506ae6a92d70371c0a3ea5433ba9ab06d2b29f23b456817af8a003
+DIST nss_ldap-261.tar.gz 276065 SHA256 7e9a6e8e1f07607b63f5f61fda755778fb1257e6599ac467327b6e817de5aad7 SHA512 b44f4ad62f3d3b237370b6393ff38ab5f26608bd8996607f828e3ab32d7dbb96ae2e40398b5b1cea9a232a29ea6c30ee56d5e9b386a514b194ac2b3e94da59da WHIRLPOOL 20b04e980e25b80320394b4bcb7250f0835135c41696fef440953344fcce67230bcb81b8ab021fdf13c2011fd807010ff743b9c5bc9b011d04846934c5c41f5b
+DIST nss_ldap-262.tar.gz 274927 SHA256 179cd8458ae3cc23cb726cf15afb94089482dd22559ac503e7df5fd6fc2c4cbf SHA512 ac4781f36b0dbc9a8e00206b13598d247a3501ca0f7e1cc7e7bcc11675186199b2ea0975ce2feb311b07b50aad36efed5ba297e7c93dc741b806a94d8d051152 WHIRLPOOL 7488b81f52ad1dec32ed21722a09c3a8101ff41185efbba90139e02b2164777b02a5d45a6699457a58fb85191e9cddbe70b98472244187cc79e9f1bc146996f6
+DIST nss_ldap-264.tar.gz 278134 SHA256 556198f2774bdb61a597da3fa8a5ecc80a3271ed9ab177760df7c4f22d6b1d25 SHA512 e7decde11377f10ec98fd360a38cbf08b9af7e328e967e417367e9e501faf0868be67a6f8fc1dd9b1fe7ee2ae720ee791ed481e21e80f686e750351b3ea6e689 WHIRLPOOL 717bb86422fc93fdf157949e261858afbd61976d329d039854fab7c912b130c07ef226fa5c50ec3f2e3e7171e2ad0830017816eade377e36885cb5d0f8142245
+DIST nss_ldap-265.tar.gz 280976 SHA256 77b54d905f50d774f28d5559d49126f1bc76720f741b0864a64bb4936ec226a8 SHA512 c4584682968861dd5880992fe7d11c6005d94f0c17252ab1cda04380fd7a81b419ba7e87d0efa44c24c5ce5bf76b9fd8331034dddb4f1400f132eb2192472077 WHIRLPOOL 3e24f18cc9d40738b22f2f0747c081a70e788bc6eb4c742c4d70b153db1b500f27ea2a5bbb935438f020075a6dd198398dd335509fb523239a3f5184f92223c7
+EBUILD nss_ldap-258.ebuild 2251 SHA256 7a0c4b808549dcd062207fe635cd42f52f47a0f78b6d1a3d7d2a8ab5052b6225 SHA512 73004c7e868983baaf81dc6cfa8cf296790a7a594dba695b89845285474af8190b6801fb8976cbb63d77112de50a11f6ed0d8b565c99988c60cfbde51665cebf WHIRLPOOL d09c2506fc0440f94b1f3f647aeeaf8faa9dde71eefd798e8968e223eebe46c5e239c7fe5dc66fe697f3a8d5a2c2e0a982b7fb7e7529471cb900e7e9cf1c5e54
+EBUILD nss_ldap-259.ebuild 2258 SHA256 14583cfbe0727b71e2d864f6d18cb6e845a921e6e92954ce5b7f38d8550bbea1 SHA512 b7d2cdf5d00fc1ec03b8a05a1550a8e0c2ff034b6491e742e18cbb6c050f8a55db3f79a03058ab03d4b85cb8daf153e593a323f287ced3d870f9e2d26a59fe00 WHIRLPOOL a4abd9e3abafa3c4962a8e5c03c153b42d59c1d3210e6b176742598d62e985f6cb30e73859907d1269a92ce5827259c93fcbda5b54810d9cb1680e71d094ca61
+EBUILD nss_ldap-261.ebuild 2378 SHA256 b7506c52090de46e571df339c3f503c32889a59e300f195810073ed1357c7257 SHA512 fab05a285b546102960837dd8bd06e695147c690231a5ef107e0bbcab3f5ea1ec34058073ead753baa0c2b6155aa17357489915c7697decbb0d83279995e4d5e WHIRLPOOL 918b04d5113a004a54c9f5c0a6e27fce9313fc2f493807ce38eafb3113e3fc5e76ba1d575e1420ff0ebf599f40483b142af82740137d7f13d6a926bced054eb6
+EBUILD nss_ldap-262.ebuild 2378 SHA256 b7506c52090de46e571df339c3f503c32889a59e300f195810073ed1357c7257 SHA512 fab05a285b546102960837dd8bd06e695147c690231a5ef107e0bbcab3f5ea1ec34058073ead753baa0c2b6155aa17357489915c7697decbb0d83279995e4d5e WHIRLPOOL 918b04d5113a004a54c9f5c0a6e27fce9313fc2f493807ce38eafb3113e3fc5e76ba1d575e1420ff0ebf599f40483b142af82740137d7f13d6a926bced054eb6
+EBUILD nss_ldap-264-r1.ebuild 2608 SHA256 dc33e605e3dd7de397fec94dc2d7a66f44f7664fdad1adc4fab57eb51cf558b1 SHA512 c8245e2a64739ef4248675c463e79892e56acd3413e3e7ef6d37d38fcfd2ca4231c6f6435dd1d627f57dad6b9a7fb5869eee597b0bc2fac2315690c60280db6a WHIRLPOOL b84bbadaa5c6b2e0dd16d627f9896bc75668ac2dfda5b33c20f491762568b2dce08e5f41c8d7663fc25e4daec8576412eb1b4b6c8c563a224fb3affa4519e53e
+EBUILD nss_ldap-264.ebuild 2549 SHA256 bffb76a2536194033243b369414ec17fa422ab7b54953062b61446a1b91052c3 SHA512 9d889ae0d7c92cd28ba8fb983f7d010c5b761c9d3ddac915ba4a810b485639fea537cb6b745948780af4d6d51c749a2338de5149beb6ba6724e3c43c70c9738f WHIRLPOOL 6eb9f5a4b6f3cae4fd7618df2b190646011ce393874db1a7043ed10284fb5de23c19bdb9607bead4c94931cb71c9676983170a5a042acba4bc63a86e0b0f5c9a
+EBUILD nss_ldap-265-r1.ebuild 2946 SHA256 69f49cd24fa11ed316211b3c36a10bf2d8be64a25082fc1cb0ceeaa2b9e05fae SHA512 61c663c260eb7b75df3f1b601ea6d5f339a4b8bf22b977616ee5ebecfea7cd7295a99a6fc4afca263268605ff3a6719f8d8bf775d01b7c9b7d79899bacf198ba WHIRLPOOL 66c0afdd200d83b7f4559586ece6663e5572db38bb36abd4d7095509646c06cf4dc5c237056347f7c30b75f3f5efe8b93168b892b827e77d0a5c8f87883d1611
+EBUILD nss_ldap-265-r2.ebuild 3106 SHA256 fcb91a112c73d0a8cf6d2000376ddc71e47bbac82bcfa817b68449ee43a45191 SHA512 762e5bde4f5359d73e25b49d34ecaf24389383b378df4fd246eb7874c118a32b0720ec411fde0248a4087c8c18198edc0745380976cc4dba584d15b25291cf6b WHIRLPOOL a8bfba4898819cb01eec0f2357670a1bf6bc6d745989c02d2fcfed0144412b7c59312af64ee4579776336cee035609a28ac9097f89b4deee8f3950e210d42c3f
+EBUILD nss_ldap-265-r4.ebuild 3712 SHA256 bb9be60dad18dbc8e3d3cc6774ad67b60fd5f00f925093c131eb80c9e319b159 SHA512 d7abc453958c991123a3aaf78af929169abf6c12d9305b82d92eb1f8499e52b034a3728b076931a04b0db6ab8d54a37d6904234fd977890f10e57845d437337a WHIRLPOOL 43df3bb686fe72b3b46681a1dd00c64050e3cb3102c10c0c90b8e473d0e99b9f51c52e7612322d97f6cc5dc103ff90e52d4c6432204ee20241de89fe92301eea
+EBUILD nss_ldap-265-r5.ebuild 4116 SHA256 467cd972aa167b27e9870d3cfc5ed4f98e6a0e4100985927991dd205bb204191 SHA512 13e3539a1d6b1c022ee4ddd81a1b59ae4740311a567d26cd0fd67e71da5b111953367befe99302cad3001bbadb5f3a8081ab4181b05040b793118301133eb3a7 WHIRLPOOL 923cf7fb43ca9e2bd9bc561405cffee7de43ff2594508fa111ef4b924b93a20ee3baa2e2ec1e4116e43142a921e143d936a40eca391679f7536fb78ff905aa1b
+EBUILD nss_ldap-265.ebuild 2691 SHA256 02ec507c7f5af2782251cd5257d60cb4e0036e1651c808792807ea9394604e16 SHA512 49a654acaffd2be41061f680d339d3b5d39b3237050454769644cc7d70ce1a413e3aa38763c6938be25f1af2e1946cd3f35b84da0f0814483476e905581c4661 WHIRLPOOL 6829e84ce8d1416ea64f276e62f3d3b7d651d90d1e64eb2000b167fa4a1fd1ae93695d24a0c02f606640187a50690f96a77e2d24299ebc68278652cb5b9d0643
+MISC ChangeLog 3316 SHA256 f8783165ef6717ee5abbd94fb0cae99ca3a9a98fc787c2c84a232c5bec53c77a SHA512 3becc63ff437504b8b624ff19f31abc68ef83daa5e51908c9cfc6949abe72d9cfdf3a1f847819846c3fc3470e5bc4e61cc3d9798a1b371a2e7d74cb381706f5e WHIRLPOOL 53ed55637c6bfa1e2cdf51cbafb9fa4a5e9f3d74db065338d1d193020e132ee77098722725a7afbe741ee3dd52aaadb94e027532be55c24d3759558a38c8d30e
+MISC ChangeLog-2015 20795 SHA256 650e1d3fff47765cb0a67f39707c79501e95abeecd883030d3c4b169320f13d9 SHA512 b90163e128a58866056725120cbd5d0025fc44c567d6b3b52097a1f85caee427ed2f6d27b85765ae819bfa4b47bc19615f9a8c8a6ccce206f9cccf804b250742 WHIRLPOOL 9489dc57e6a8f70b8b322724c9e162a32c1224f92c68ba6bd293cd6d98c191a3f62595ac7bbafe932fb4fd6650582346a54e3a6f79018395d986962b61a641d6
+MISC metadata.xml 465 SHA256 cbbe729129df68a5cd6c4bea2d14bd95eab8fa189e094413306564f57751674b SHA512 af032a9425b5ee8284d50db6d4e007c55b7710e432767be5e4029efb94037900747f018a717adae58382e7a873b2e62545387d90fe1435e1501d839605925f47 WHIRLPOOL bbe901eb3bbf68831e73703e4ebe71216312332f82632255745b32f53449337bca19ab8dd763527c9cf63895727719147146965d42114684388f796edd46b189
diff --git a/sys-auth/nss_ldap/files/nss_ldap-239-tls-security-bug.patch b/sys-auth/nss_ldap/files/nss_ldap-239-tls-security-bug.patch
new file mode 100644
index 000000000000..1dbd8dc889a1
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-239-tls-security-bug.patch
@@ -0,0 +1,42 @@
+--- ldap-nss.c 2004-09-28 03:20:11.000000000 +0100
++++ ldap-nss.c.new 2005-07-04 01:32:12.000000000 +0100
+@@ -330,6 +330,39 @@
+
+ timelimit = __session.ls_config->ldc_bind_timelimit;
+
++#ifdef HAVE_LDAP_START_TLS_S
++ if (__session.ls_config->ldc_ssl_on == SSL_START_TLS)
++ {
++ int version;
++
++ if (ldap_get_option
++ (__session.ls_conn, LDAP_OPT_PROTOCOL_VERSION,
++ &version) == LDAP_OPT_SUCCESS)
++ {
++ if (version < LDAP_VERSION3)
++ {
++ version = LDAP_VERSION3;
++ ldap_set_option (__session.ls_conn, LDAP_OPT_PROTOCOL_VERSION,
++ &version);
++ }
++ }
++
++ debug ("==> start_tls");
++ if (ldap_start_tls_s (__session.ls_conn, NULL, NULL) == LDAP_SUCCESS)
++ {
++ debug ("TLS startup succeeded");
++ }
++ else
++ {
++ debug ("TLS startup failed");
++ do_close ();
++ debug ("<== do_open");
++ return NSS_UNAVAIL;
++ }
++ debug ("<== start_tls");
++ }
++#endif /* HAVE_LDAP_START_TLS_S */
++
+ return do_bind (ld, timelimit, who, cred, with_sasl);
+ }
+ #else
diff --git a/sys-auth/nss_ldap/files/nss_ldap-249-sasl-compile.patch b/sys-auth/nss_ldap/files/nss_ldap-249-sasl-compile.patch
new file mode 100644
index 000000000000..1e92c9bb6fe5
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-249-sasl-compile.patch
@@ -0,0 +1,11 @@
+--- ldap-nss.c~ 2006-02-25 02:43:33.503639826 -0800
++++ ldap-nss.c 2006-02-25 02:50:51.943806612 -0800
+@@ -72,6 +72,8 @@
+ #include <sasl/sasl.h>
+ #elif defined(HAVE_SASL_H)
+ #include <sasl.h>
++#elif defined(HAVE_SASL_SASL_H)
++#include <sasl/sasl.h>
+ #endif
+
+ #ifndef HAVE_SNPRINTF
diff --git a/sys-auth/nss_ldap/files/nss_ldap-252-reconnect-timeouts.patch b/sys-auth/nss_ldap/files/nss_ldap-252-reconnect-timeouts.patch
new file mode 100644
index 000000000000..285a34e3df4b
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-252-reconnect-timeouts.patch
@@ -0,0 +1,65 @@
+This patch changes the default timeouts, so that they are much lower, and do
+not cause major delays when booting a system. This is a workaround until the
+core /etc/{passwd,group} contain all of the data needed for a system boot.
+
+Also add a note that 'ssl on' is broken and TLS should be used instead.
+
+Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
+
+diff -Nuar --exclude '*~' nss_ldap-250.orig/ldap-nss.h nss_ldap-250/ldap-nss.h
+--- nss_ldap-250.orig/ldap-nss.h 2006-04-26 18:19:00.000000000 -0700
++++ nss_ldap-250/ldap-nss.h 2006-06-14 01:58:01.933005492 -0700
+@@ -96,9 +96,9 @@
+ * unacceptable, in which case you may wish to adjust
+ * the constants below.
+ */
+-#define LDAP_NSS_TRIES 5 /* number of sleeping reconnect attempts */
+-#define LDAP_NSS_SLEEPTIME 4 /* seconds to sleep; doubled until max */
+-#define LDAP_NSS_MAXSLEEPTIME 64 /* maximum seconds to sleep */
++#define LDAP_NSS_TRIES 4 /* number of sleeping reconnect attempts */
++#define LDAP_NSS_SLEEPTIME 1 /* seconds to sleep; doubled until max */
++#define LDAP_NSS_MAXSLEEPTIME 16 /* maximum seconds to sleep */
+ #define LDAP_NSS_MAXCONNTRIES 2 /* reconnect attempts before sleeping */
+
+ #if defined(HAVE_NSSWITCH_H) || defined(HAVE_IRS_H)
+diff -Nuar --exclude '*~' nss_ldap-250.orig/ldap.conf nss_ldap-250/ldap.conf
+--- nss_ldap-250.orig/ldap.conf 2006-04-26 18:19:00.000000000 -0700
++++ nss_ldap-250/ldap.conf 2006-06-14 02:12:02.008444745 -0700
+@@ -283,7 +283,8 @@
+ # OpenLDAP SSL mechanism
+ # start_tls mechanism uses the normal LDAP port, LDAPS typically 636
+ #ssl start_tls
+-#ssl on
++###ssl on
++# Gentoo note: Don't use 'ssl on' in 249/250. They are broken in some cases! Use start_tls instead.
+
+ # OpenLDAP SSL options
+ # Require and verify server certificate (yes/no)
+@@ -315,3 +316,27 @@
+ # Override the default Kerberos ticket cache location.
+ #krb5_ccname FILE:/etc/.ldapcache
+
++# Timeout behavior
++# Upstream nss_ldap hard-codes these values:
++#nss_reconnect_tries 5 # number of times to double the sleep time
++#nss_reconnect_sleeptime 4 # initial sleep value
++#nss_reconnect_maxsleeptime 64 # max sleep value to cap at
++#nss_reconnect_maxconntries 2 # how many tries before sleeping
++# This leads to a delay of 124 seconds (4+8+16+32+64=124) per lookup if the
++# server is not available.
++
++# For Gentoo's distribution of nss_ldap, as of 250-r1, we use these values
++# (The hardwired constants in the code are changed to them as well):
++nss_reconnect_tries 4 # number of times to double the sleep time
++nss_reconnect_sleeptime 1 # initial sleep value
++nss_reconnect_maxsleeptime 16 # max sleep value to cap at
++nss_reconnect_maxconntries 2 # how many tries before sleeping
++# This leads to a delay of 15 seconds (1+2+4+8=15)
++
++# If you are impatient, and know your LDAP server is reliable, fast or local,
++# you may wish to use these values instead:
++#nss_reconnect_tries 1 # number of times to double the sleep time
++#nss_reconnect_sleeptime 1 # initial sleep value
++#nss_reconnect_maxsleeptime 1 # max sleep value to cap at
++#nss_reconnect_maxconntries 3 # how many tries before sleeping
++# This leads to a delay of 1 second.
diff --git a/sys-auth/nss_ldap/files/nss_ldap-254-nss_getgrent_skipmembers.patch b/sys-auth/nss_ldap/files/nss_ldap-254-nss_getgrent_skipmembers.patch
new file mode 100644
index 000000000000..68809bcf1b1b
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-254-nss_getgrent_skipmembers.patch
@@ -0,0 +1,226 @@
+diff -c -r nss_ldap-250/ChangeLog nss_ldap-250.1/ChangeLog
+*** nss_ldap-250/ChangeLog Wed Apr 26 18:19:00 2006
+--- nss_ldap-250.1/ChangeLog Wed Aug 16 16:58:57 2006
+***************
+*** 1,6 ****
+--- 1,13 ----
+ $Id$
+ ===============================================================
+
++ 250.1 Paul B. Henson <henson@acm.org>
++
++ * add nss_getgrent_skipmembers parameter to ldap.conf,
++ if enabled will not request member attributes for
++ group lookups, greatly increasing performance in the
++ face of large groups
++
+ 250 Luke Howard <lukeh@padl.com>
+
+ * don't use static _nss_ldap_no_members buffer,
+diff -c -r nss_ldap-250/ldap-nss.c nss_ldap-250.1/ldap-nss.c
+*** nss_ldap-250/ldap-nss.c Wed Apr 26 18:19:00 2006
+--- nss_ldap-250.1/ldap-nss.c Wed Aug 16 16:51:49 2006
+***************
+*** 1258,1264 ****
+
+ cfg = __config;
+
+! _nss_ldap_init_attributes (cfg->ldc_attrtab);
+ _nss_ldap_init_filters ();
+
+ #ifdef HAVE_LDAP_SET_OPTION
+--- 1258,1264 ----
+
+ cfg = __config;
+
+! _nss_ldap_init_attributes (cfg->ldc_attrtab, cfg->ldc_getgrent_skipmembers);
+ _nss_ldap_init_filters ();
+
+ #ifdef HAVE_LDAP_SET_OPTION
+diff -c -r nss_ldap-250/ldap-nss.h nss_ldap-250.1/ldap-nss.h
+*** nss_ldap-250/ldap-nss.h Wed Apr 26 18:19:00 2006
+--- nss_ldap-250.1/ldap-nss.h Wed Aug 16 16:51:59 2006
+***************
+*** 390,395 ****
+--- 390,396 ----
+ time_t ldc_mtime;
+
+ char **ldc_initgroups_ignoreusers;
++ int ldc_getgrent_skipmembers;
+ };
+
+ typedef struct ldap_config ldap_config_t;
+diff -c -r nss_ldap-250/ldap-schema.c nss_ldap-250.1/ldap-schema.c
+*** nss_ldap-250/ldap-schema.c Wed Apr 26 18:19:00 2006
+--- nss_ldap-250.1/ldap-schema.c Wed Aug 16 16:54:52 2006
+***************
+*** 273,279 ****
+
+ static void init_pwd_attributes (const char ***pwd_attrs);
+ static void init_sp_attributes (const char ***sp_attrs);
+! static void init_grp_attributes (const char ***grp_attrs);
+ static void init_hosts_attributes (const char ***hosts_attrs);
+ static void init_services_attributes (const char ***services_attrs);
+ static void init_network_attributes (const char ***network_attrs);
+--- 273,279 ----
+
+ static void init_pwd_attributes (const char ***pwd_attrs);
+ static void init_sp_attributes (const char ***sp_attrs);
+! static void init_grp_attributes (const char ***grp_attrs, int ldc_getgrent_skipmembers);
+ static void init_hosts_attributes (const char ***hosts_attrs);
+ static void init_services_attributes (const char ***services_attrs);
+ static void init_network_attributes (const char ***network_attrs);
+***************
+*** 289,299 ****
+ * attribute table initialization routines
+ */
+ void
+! _nss_ldap_init_attributes (const char ***attrtab)
+ {
+ init_pwd_attributes (&attrtab[LM_PASSWD]);
+ init_sp_attributes (&attrtab[LM_SHADOW]);
+! init_grp_attributes (&attrtab[LM_GROUP]);
+ init_hosts_attributes (&attrtab[LM_HOSTS]);
+ init_services_attributes (&attrtab[LM_SERVICES]);
+ init_network_attributes (&attrtab[LM_NETWORKS]);
+--- 289,299 ----
+ * attribute table initialization routines
+ */
+ void
+! _nss_ldap_init_attributes (const char ***attrtab, int ldc_getgrent_skipmembers)
+ {
+ init_pwd_attributes (&attrtab[LM_PASSWD]);
+ init_sp_attributes (&attrtab[LM_SHADOW]);
+! init_grp_attributes (&attrtab[LM_GROUP], ldc_getgrent_skipmembers);
+ init_hosts_attributes (&attrtab[LM_HOSTS]);
+ init_services_attributes (&attrtab[LM_SERVICES]);
+ init_network_attributes (&attrtab[LM_NETWORKS]);
+***************
+*** 357,363 ****
+ }
+
+ static void
+! init_grp_attributes (const char ***grp_attrs)
+ {
+ int i = 0;
+ static const char *__grp_attrs[ATTRTAB_SIZE + 1];
+--- 357,363 ----
+ }
+
+ static void
+! init_grp_attributes (const char ***grp_attrs, int ldc_getgrent_skipmembers)
+ {
+ int i = 0;
+ static const char *__grp_attrs[ATTRTAB_SIZE + 1];
+***************
+*** 366,374 ****
+
+ (*grp_attrs)[i++] = (char *) ATM (LM_GROUP, cn);
+ (*grp_attrs)[i++] = (char *) ATM (LM_GROUP, userPassword);
+! (*grp_attrs)[i++] = (char *) AT (memberUid);
+! if (_nss_ldap_test_config_flag (NSS_LDAP_FLAGS_RFC2307BIS))
+! (*grp_attrs)[i++] = (char *) AT (uniqueMember);
+ (*grp_attrs)[i++] = (char *) ATM (LM_GROUP, gidNumber);
+ (*grp_attrs)[i] = NULL;
+ }
+--- 366,377 ----
+
+ (*grp_attrs)[i++] = (char *) ATM (LM_GROUP, cn);
+ (*grp_attrs)[i++] = (char *) ATM (LM_GROUP, userPassword);
+! if (!ldc_getgrent_skipmembers)
+! {
+! (*grp_attrs)[i++] = (char *) AT (memberUid);
+! if (_nss_ldap_test_config_flag (NSS_LDAP_FLAGS_RFC2307BIS))
+! (*grp_attrs)[i++] = (char *) AT (uniqueMember);
+! }
+ (*grp_attrs)[i++] = (char *) ATM (LM_GROUP, gidNumber);
+ (*grp_attrs)[i] = NULL;
+ }
+diff -c -r nss_ldap-250/ldap-schema.h nss_ldap-250.1/ldap-schema.h
+*** nss_ldap-250/ldap-schema.h Wed Apr 26 18:19:00 2006
+--- nss_ldap-250.1/ldap-schema.h Wed Aug 16 16:54:07 2006
+***************
+*** 30,36 ****
+ * function to initialize global lookup filters.
+ */
+ void _nss_ldap_init_filters ();
+! void _nss_ldap_init_attributes (const char ***attrtab);
+
+ /**
+ * make filters formerly declared in ldap-*.h globally available.
+--- 30,36 ----
+ * function to initialize global lookup filters.
+ */
+ void _nss_ldap_init_filters ();
+! void _nss_ldap_init_attributes (const char ***attrtab, int ldc_getgrent_skipmembers);
+
+ /**
+ * make filters formerly declared in ldap-*.h globally available.
+diff -c -r nss_ldap-250/nss_ldap.5 nss_ldap-250.1/nss_ldap.5
+*** nss_ldap-250/nss_ldap.5 Wed Apr 26 18:19:00 2006
+--- nss_ldap-250.1/nss_ldap.5 Wed Aug 16 17:07:19 2006
+***************
+*** 445,450 ****
+--- 445,458 ----
+ to return NSS_STATUS_NOTFOUND if called with a listed users as
+ its argument.
+ .TP
++ .B nss_getgrent_skipmembers <yes|no>
++ Specifies whether or not to populate the members list in
++ the group structure for group lookups. If very large groups
++ are present, enabling this option will greatly increase
++ perforance, at the cost of some lost functionality. You should
++ verify no local applications rely on this information before
++ enabling this on a production system.
++ .TP
+ .B nss_srv_domain <domain>
+ This option determines the DNS domain used for performing SRV
+ lookups.
+diff -c -r nss_ldap-250/util.c nss_ldap-250.1/util.c
+*** nss_ldap-250/util.c Wed Apr 26 18:19:00 2006
+--- nss_ldap-250.1/util.c Wed Aug 16 16:52:55 2006
+***************
+*** 660,665 ****
+--- 660,666 ----
+ result->ldc_reconnect_maxsleeptime = LDAP_NSS_MAXSLEEPTIME;
+ result->ldc_reconnect_maxconntries = LDAP_NSS_MAXCONNTRIES;
+ result->ldc_initgroups_ignoreusers = NULL;
++ result->ldc_getgrent_skipmembers = 0;
+
+ for (i = 0; i <= LM_NONE; i++)
+ {
+***************
+*** 1137,1142 ****
+--- 1138,1156 ----
+ break;
+ }
+ }
++ else if (!strcasecmp (k, NSS_LDAP_KEY_GETGRENT_SKIPMEMBERS))
++ {
++ if (!strcasecmp (v, "on") || !strcasecmp (v, "yes")
++ || !strcasecmp (v, "true"))
++ {
++ result->ldc_getgrent_skipmembers = 1;
++ }
++ else if (!strcasecmp (v, "off") || !strcasecmp (v, "no")
++ || !strcasecmp (v, "false"))
++ {
++ result->ldc_getgrent_skipmembers = 0;
++ }
++ }
+ else if (!strcasecmp (k, NSS_LDAP_KEY_CONNECT_POLICY))
+ {
+ if (!strcasecmp (v, "oneshot"))
+diff -c -r nss_ldap-250/util.h nss_ldap-250.1/util.h
+*** nss_ldap-250/util.h Wed Apr 26 18:19:00 2006
+--- nss_ldap-250.1/util.h Wed Aug 16 16:49:52 2006
+***************
+*** 83,88 ****
+--- 83,89 ----
+ #define NSS_LDAP_KEY_PAGESIZE "pagesize"
+ #define NSS_LDAP_KEY_INITGROUPS "nss_initgroups"
+ #define NSS_LDAP_KEY_INITGROUPS_IGNOREUSERS "nss_initgroups_ignoreusers"
++ #define NSS_LDAP_KEY_GETGRENT_SKIPMEMBERS "nss_getgrent_skipmembers"
+
+ /* more reconnect policy fine-tuning */
+ #define NSS_LDAP_KEY_RECONNECT_TRIES "nss_reconnect_tries"
diff --git a/sys-auth/nss_ldap/files/nss_ldap-254-soname.patch b/sys-auth/nss_ldap/files/nss_ldap-254-soname.patch
new file mode 100644
index 000000000000..e832c2f0d218
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-254-soname.patch
@@ -0,0 +1,12 @@
+Set the soname which glibc expects us to have.
+--- nss_ldap-254/configure.in 2007-02-26 16:40:53.000000000 -0500
++++ nss_ldap-254/configure.in 2007-02-26 16:40:47.000000000 -0500
+@@ -92,7 +92,7 @@
+ nss_ldap_so_LDFLAGS="-b -dynamic -G `cat exports.hpux`"
+ CPPFLAGS="$CPPFLAGS -I. -DHPUX"
+ TARGET_OS=HPUX ;;
+-linux*) nss_ldap_so_LDFLAGS="-shared -Wl,-Bdynamic -Wl,--version-script,\$(srcdir)/exports.linux" ;;
++linux*) nss_ldap_so_LDFLAGS="-shared -Wl,-Bdynamic -Wl,--version-script,\$(srcdir)/exports.linux -Wl,-soname=libnss_ldap.so.2" ;;
+ *) nss_ldap_so_LDFLAGS="-shared -Wl,-Bdynamic" ;;
+ esac
+
diff --git a/sys-auth/nss_ldap/files/nss_ldap-257-nss_max_group_depth.patch b/sys-auth/nss_ldap/files/nss_ldap-257-nss_max_group_depth.patch
new file mode 100644
index 000000000000..d2f8efeec751
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-257-nss_max_group_depth.patch
@@ -0,0 +1,92 @@
+Gentoo-Bug: 155492
+Original-Author: Heath Caldwell <hncaldwell@csupomona.edu>
+Rediffed-by: Robin H. Johnson <robbat2@gentoo.org>
+
+--- nss_ldap-257.orig/ChangeLog 2007-09-18 15:02:59.997686000 -0700
++++ nss_ldap-257/ChangeLog 2007-09-18 15:04:07.925113592 -0700
+@@ -3,2 +3,7 @@
+
++257.1 Heath Caldwell <hncaldwell@csupomona.edu>
++
++ * add configurable maximum group depth with new
++ configuration file option called nss_max_group_depth
++
+ 257 Luke Howard <lukeh@padl.com>
+--- nss_ldap-257.orig/ldap-grp.c 2007-08-02 21:51:09.000000000 -0700
++++ nss_ldap-257/ldap-grp.c 2007-09-18 15:03:23.734619150 -0700
+@@ -308,7 +308,7 @@
+ uniquemember_attrs[0] = uniquemember_attr;
+ uniquemember_attrs[1] = NULL;
+
+- if (*depth > LDAP_NSS_MAXGR_DEPTH)
++ if (*depth > _nss_ldap_max_group_depth)
+ {
+ return NSS_NOTFOUND;
+ }
+@@ -844,7 +844,7 @@
+ const char *gidnumber_attrs[2];
+ int erange;
+
+- if (lia->depth > LDAP_NSS_MAXGR_DEPTH)
++ if (lia->depth > _nss_ldap_max_group_depth)
+ return NSS_NOTFOUND;
+
+ if (_nss_ldap_namelist_find (lia->known_groups, dn))
+@@ -890,7 +890,7 @@
+ size_t memberCount, i;
+ int erange;
+
+- if (lia->depth > LDAP_NSS_MAXGR_DEPTH)
++ if (lia->depth > _nss_ldap_max_group_depth)
+ return NSS_NOTFOUND;
+
+ for (memberCount = 0; membersOf[memberCount] != NULL; memberCount++)
+--- nss_ldap-257.orig/ldap-nss.h 2007-09-18 15:02:59.997686000 -0700
++++ nss_ldap-257/ldap-nss.h 2007-09-18 15:03:23.734619150 -0700
+@@ -105,7 +105,8 @@
+ #define LDAP_NSS_MAXNETGR_DEPTH 16 /* maximum depth of netgroup nesting for innetgr() */
+ #endif /* HAVE_NSSWITCH_H */
+
+-#define LDAP_NSS_MAXGR_DEPTH 16 /* maximum depth of group nesting for getgrent()/initgroups() */
++#define LDAP_NSS_MAXGR_DEPTH 16 /* default maximum depth of group nesting for getgrent()/initgroups() */
++extern int _nss_ldap_max_group_depth; /* global variable to hold maximum group depth */
+
+ #if LDAP_NSS_NGROUPS > 64
+ #define LDAP_NSS_BUFLEN_GROUP (NSS_BUFSIZ + (LDAP_NSS_NGROUPS * (sizeof (char *) + LOGNAME_MAX)))
+--- nss_ldap-257.orig/nss_ldap.5 2007-09-18 15:03:00.001020000 -0700
++++ nss_ldap-257/nss_ldap.5 2007-09-18 15:05:42.779508238 -0700
+@@ -453,6 +453,10 @@
+ verify no local applications rely on this information before
+ enabling this on a production system.
+ .TP
++.B nss_max_group_depth <value>
++Specifies the maximum depth to which nested groups are queried.
++A value of 0 effectively disables querying for nested groups.
++.TP
+ .B nss_srv_domain <domain>
+ This option determines the DNS domain used for performing SRV
+ lookups.
+--- nss_ldap-257.orig/util.c 2007-09-18 15:03:00.001020000 -0700
++++ nss_ldap-257/util.c 2007-09-18 15:04:35.032083555 -0700
+@@ -62,2 +62,5 @@
+
++/* Initialize global maximum group depth to default. */
++int _nss_ldap_max_group_depth = LDAP_NSS_MAXGR_DEPTH;
++
+ static NSS_STATUS do_getrdnvalue (const char *dn,
+@@ -805,2 +808,5 @@
+
++ /* Reset global maximum group depth to default. */
++ _nss_ldap_max_group_depth = LDAP_NSS_MAXGR_DEPTH;
++
+ while (fgets (b, sizeof (b), fp) != NULL)
+--- nss_ldap-257.orig/util.h 2007-09-18 15:03:00.001020000 -0700
++++ nss_ldap-257/util.h 2007-09-18 15:05:11.295822638 -0700
+@@ -84,6 +84,7 @@
+ #define NSS_LDAP_KEY_INITGROUPS "nss_initgroups"
+ #define NSS_LDAP_KEY_INITGROUPS_IGNOREUSERS "nss_initgroups_ignoreusers"
+ #define NSS_LDAP_KEY_GETGRENT_SKIPMEMBERS "nss_getgrent_skipmembers"
++#define NSS_LDAP_KEY_MAX_GROUP_DEPTH "nss_max_group_depth"
+
+ /* more reconnect policy fine-tuning */
+ #define NSS_LDAP_KEY_RECONNECT_TRIES "nss_reconnect_tries"
diff --git a/sys-auth/nss_ldap/files/nss_ldap-257.2-gssapi-headers.patch b/sys-auth/nss_ldap/files/nss_ldap-257.2-gssapi-headers.patch
new file mode 100644
index 000000000000..cec5517e741c
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-257.2-gssapi-headers.patch
@@ -0,0 +1,65 @@
+http://bugs.gentoo.org/show_bug.cgi?id=165638
+http://bugzilla.padl.com/show_bug.cgi?id=308
+
+Make nss_ldap compile with gssapi/gssapi.h even if there is no
+gssapi/gssapi_krb5.h present. This seems to be needed to compile against
+heimdal. Extended header checks and modified preprocessor logic a bit.
+
+2007-02-07 Martin von Gagern <Martin.vGagern@gmx.net>
+
+diff -ruN nss_ldap-257.2.orig/config.h.in nss_ldap-257.2/config.h.in
+--- nss_ldap-257.2.orig/config.h.in 2007-10-24 14:22:55.000000000 +0200
++++ nss_ldap-257.2/config.h.in 2007-10-24 14:25:15.000000000 +0200
+@@ -87,6 +87,9 @@
+ /* Define to 1 if you have the <gssapi/gssapi_krb5.h> header file. */
+ #undef HAVE_GSSAPI_GSSAPI_KRB5_H
+
++/* Define to 1 if you have the <gssapi/gssapi.h> header file. */
++#undef HAVE_GSSAPI_GSSAPI_H
++
+ /* Define to 1 if you have the <gssapi.h> header file. */
+ #undef HAVE_GSSAPI_H
+
+diff -ruN nss_ldap-257.2.orig/configure nss_ldap-257.2/configure
+--- nss_ldap-257.2.orig/configure 2007-10-24 14:22:55.000000000 +0200
++++ nss_ldap-257.2/configure 2007-10-24 14:25:49.000000000 +0200
+@@ -8409,7 +8409,7 @@
+
+
+
+-for ac_header in gssapi/gssapi_krb5.h gssapi.h
++for ac_header in gssapi/gssapi_krb5.h gssapi/gssapi.h gssapi.h
+ do
+ as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ if eval "test \"\${$as_ac_Header+set}\" = set"; then
+diff -ruN nss_ldap-257.2.orig/configure.in nss_ldap-257.2/configure.in
+--- nss_ldap-257.2.orig/configure.in 2007-10-24 14:22:55.000000000 +0200
++++ nss_ldap-257.2/configure.in 2007-10-24 14:26:26.000000000 +0200
+@@ -182,7 +182,7 @@
+ AC_CHECK_HEADERS(strings.h)
+ AC_CHECK_HEADERS(gssldap.h)
+ AC_CHECK_HEADERS(gsssasl.h)
+-AC_CHECK_HEADERS(gssapi/gssapi_krb5.h gssapi.h)
++AC_CHECK_HEADERS(gssapi/gssapi_krb5.h gssapi/gssapi.h gssapi.h)
+ AC_CHECK_HEADERS(krb5.h)
+
+ AC_CHECK_LIB(resolv, main)
+diff -ruN nss_ldap-257.2.orig/ldap-nss.c nss_ldap-257.2/ldap-nss.c
+--- nss_ldap-257.2.orig/ldap-nss.c 2007-10-24 14:22:55.000000000 +0200
++++ nss_ldap-257.2/ldap-nss.c 2007-10-24 14:27:32.000000000 +0200
+@@ -82,10 +82,14 @@
+ #endif
+ #ifdef HAVE_GSSAPI_H
+ #include <gssapi.h>
+-#elif defined(HAVE_GSSAPI_GSSAPI_KRB5_H)
++#else
++#ifdef HAVE_GSSAPI_GSSAPI_H
+ #include <gssapi/gssapi.h>
++#endif
++#ifdef HAVE_GSSAPI_GSSAPI_KRB5_H
+ #include <gssapi/gssapi_krb5.h>
+ #endif
++#endif
+ #ifdef CONFIGURE_KRB5_CCNAME
+ #include <krb5.h>
+ #endif
diff --git a/sys-auth/nss_ldap/files/nss_ldap-264-disable-automagic.patch b/sys-auth/nss_ldap/files/nss_ldap-264-disable-automagic.patch
new file mode 100644
index 000000000000..7671574da4da
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-264-disable-automagic.patch
@@ -0,0 +1,109 @@
+Explicitly provide a way to disable Kerberos/SASL/SSL usage in nss_ldap, so
+that you can build non-kerberos versions on systems with Kerberos installed
+WITHOUT it linking due to presence.
+
+Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
+
+diff -Nuar nss_ldap-264.orig/configure.in nss_ldap-264/configure.in
+--- nss_ldap-264.orig/configure.in 2009-07-28 10:35:27.599965878 -0700
++++ nss_ldap-264/configure.in 2009-07-28 10:36:00.620375469 -0700
+@@ -10,6 +10,21 @@
+ AC_PROG_INSTALL
+
+ dnl
++dnl Turn on/off SSL
++dnl
++AC_ARG_ENABLE(ssl, [ --enable-ssl enable SSL code ], [AC_DEFINE([WANT_SSL], [1], [Define if SSL is wanted])])
++
++dnl
++dnl Turn on/off Kerberos
++dnl
++AC_ARG_ENABLE(krb, [ --enable-krb enable Kerberos code ], [AC_DEFINE([WANT_KRB], [1], [Define if Kerberos is wanted])])
++
++dnl
++dnl Turn on/off SASL
++dnl
++AC_ARG_ENABLE(sasl, [ --enable-sasl enable Kerberos code ], [AC_DEFINE([WANT_SASL], [1], [Define if SASL is wanted])])
++
++dnl
+ dnl --enable-rfc2307bis is now deprecated; if this option is set,
+ dnl then RFC2307bis support will be enabled by default. However
+ dnl it can now always be enabled at runtime with the nss_schema
+@@ -178,12 +193,18 @@
+ AC_CHECK_HEADERS(sys/un.h)
+ AC_CHECK_HEADERS(libc-lock.h)
+ AC_CHECK_HEADERS(bits/libc-lock.h)
+-AC_CHECK_HEADERS(sasl.h sasl/sasl.h)
++if test "$enable_sasl" \!= "no"; then
++ AC_CHECK_HEADERS(sasl.h sasl/sasl.h)
++fi
+ AC_CHECK_HEADERS(strings.h)
+-AC_CHECK_HEADERS(gssldap.h)
+-AC_CHECK_HEADERS(gsssasl.h)
+-AC_CHECK_HEADERS(gssapi/gssapi_krb5.h gssapi/gssapi.h gssapi.h)
+-AC_CHECK_HEADERS(krb5.h)
++if test "$enable_krb" \!= "no"; then
++ AC_CHECK_HEADERS(gssldap.h)
++ if test "$enable_sasl" \!= "no"; then
++ AC_CHECK_HEADERS(gsssasl.h)
++ fi
++ AC_CHECK_HEADERS(gssapi/gssapi_krb5.h gssapi/gssapi.h gssapi.h)
++ AC_CHECK_HEADERS(krb5.h)
++fi
+
+ AC_CHECK_LIB(resolv, main)
+ AC_CHECK_LIB(nsl, main)
+@@ -286,19 +307,25 @@
+ AC_CHECK_LIB(dl, dlopen,[LIBS="-ldl $LIBS"],,$LIBS)
+ dnl AC_CHECK_LIB(db, main,[LIBS="-ldb $LIBS"],,$LIBS)
+
+-AC_CHECK_LIB(gssapi, gss_krb5_ccache_name,[LIBS="-lgssapi $LIBS" found_gssapi_lib=yes],,$LIBS)
+-if test -z "$found_gssapi_lib"; then
+- AC_CHECK_LIB(gssapi_krb5, gss_krb5_ccache_name,[LIBS="-lgssapi_krb5 $LIBS"],,$LIBS)
++if test "$enable_krb" \!= "no"; then
++ AC_CHECK_LIB(gssapi, gss_krb5_ccache_name,[LIBS="-lgssapi $LIBS" found_gssapi_lib=yes],,$LIBS)
++ if test -z "$found_gssapi_lib"; then
++ AC_CHECK_LIB(gssapi_krb5, gss_krb5_ccache_name,[LIBS="-lgssapi_krb5 $LIBS"],,$LIBS)
++ fi
+ fi
+
+ dnl Following checks probably not strictly necessary.
+ dnl AC_CHECK_LIB(crypto, main,[LIBS="-lcrypto $LIBS"],,$LIBS)
+ dnl AC_CHECK_LIB(ssl, main,[LIBS="-lssl $LIBS"],,$LIBS)
+ AC_CHECK_LIB(com_err, main,[LIBS="-lcom_err $LIBS"],,$LIBS)
+-dnl AC_CHECK_LIB(k5crypto, main,[LIBS="-lk5crypto $LIBS"],,$LIBS)
+-AC_CHECK_LIB(krb5, main,[LIBS="-lkrb5 $LIBS"],,$LIBS)
+-dnl AC_CHECK_LIB(krb4, main,[LIBS="-lkrb4 $LIBS"],,$LIBS)
+-AC_CHECK_LIB(sasl2, sasl_client_init)
++if test "$enable_krb" \!= "no"; then
++ dnl AC_CHECK_LIB(k5crypto, main,[LIBS="-lk5crypto $LIBS"],,$LIBS)
++ AC_CHECK_LIB(krb5, main,[LIBS="-lkrb5 $LIBS"],,$LIBS)
++ dnl AC_CHECK_LIB(krb4, main,[LIBS="-lkrb4 $LIBS"],,$LIBS)
++fi
++if test "$enable_sasl" \!= "no"; then
++ AC_CHECK_LIB(sasl2, sasl_client_init)
++fi
+
+ if test -z "$found_ldap_lib" -a \( $with_ldap_lib = auto -o $with_ldap_lib = umich -o $with_ldap_lib = openldap \); then
+ AC_CHECK_LIB(lber, main)
+@@ -331,13 +358,17 @@
+ AC_CHECK_LIB(pthread, main)
+ fi
+
+-AC_CHECK_LIB(gssldap, ldap_gss_bind,[LIBS="-lgssldap $LIBS"],,$LIBS)
++if test "$enable_krb" \!= "no"; then
++ AC_CHECK_LIB(gssldap, ldap_gss_bind,[LIBS="-lgssldap $LIBS"],,$LIBS)
++fi
+
+-AC_CHECK_FUNCS(sasl_auxprop_request)
+ AC_CHECK_FUNCS(ldap_init ldap_get_lderrno ldap_parse_result ldap_memfree ldap_controls_free)
+ AC_CHECK_FUNCS(ldap_ld_free ldap_explode_rdn ldap_set_option ldap_get_option)
+-AC_CHECK_FUNCS(ldap_sasl_interactive_bind_s ldap_initialize ldap_search_ext)
++AC_CHECK_FUNCS(ldap_initialize ldap_search_ext)
+ AC_CHECK_FUNCS(ldap_create_control ldap_create_page_control ldap_parse_page_control)
++if test "$enable_sasl" \!= "no"; then
++ AC_CHECK_FUNCS(sasl_auxprop_request ldap_sasl_interactive_bind_s)
++fi
+ if test "$enable_ssl" \!= "no"; then
+ AC_CHECK_FUNCS(ldapssl_client_init ldap_start_tls_s ldap_pvt_tls_set_option ldap_start_tls)
+ fi
diff --git a/sys-auth/nss_ldap/files/nss_ldap-265-fbsd.patch b/sys-auth/nss_ldap/files/nss_ldap-265-fbsd.patch
new file mode 100644
index 000000000000..1ae1171f88e5
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-265-fbsd.patch
@@ -0,0 +1,432 @@
+--- Makefile.am.orig 2009-11-06 05:28:08.000000000 -0500
++++ Makefile.am 2010-01-12 23:24:17.000000000 -0500
+@@ -9,8 +9,12 @@
+ if AIX
+ INST_GID=system
+ else
++if FreeBSD
++INST_GID=wheel
++else
+ INST_GID=root
+ endif
++endif
+
+ EXTRA_DIST = CVSVersionInfo.txt ChangeLog \
+ AUTHORS ANNOUNCE NEWS INSTALL README LICENSE.OpenLDAP COPYING\
+@@ -23,7 +27,7 @@
+ ldap-alias.c ldap-service.c ldap-schema.c ldap-ethers.c \
+ ldap-bp.c ldap-automount.c util.c ltf.c snprintf.c resolve.c \
+ dnsconfig.c irs-nss.c pagectrl.c ldap-sldap.c ldap-init-krb5-cache.c \
+- vers.c
++ vers.c bsdnss.c
+
+ nss_ldap_so_LDFLAGS = @nss_ldap_so_LDFLAGS@
+
+@@ -103,11 +107,10 @@
+ $(mkinstalldirs) $(DESTDIR)$(dir $(NSS_LDAP_PATH_CONF)); \
+ $(INSTALL_DATA) -o $(INST_UID) -g $(INST_GID) $(srcdir)/ldap.conf $(DESTDIR)$(NSS_LDAP_PATH_CONF); \
+ fi
+- $(INSTALL_DATA) -o $(INST_UID) -g $(INST_GID) $(srcdir)/nsswitch.ldap $(DESTDIR)$(sysconfdir)/nsswitch.ldap;
+
+ uninstall-local:
+ @$(NORMAL_UNINSTALL)
+
+ vers.c: $(top_srcdir)/CVSVersionInfo.txt
+- CVSVERSIONDIR=$(top_srcdir) ./vers_string -v
++ $(top_srcdir)/vers_string -v
+
+
+--- configure.in.orig 2007-10-29 06:30:12.000000000 -0700
++++ configure.in 2008-09-26 20:38:20.000000000 -0700
+@@ -97,11 +97,15 @@
+ linux*) nss_ldap_so_LDFLAGS="-shared -Wl,-Bdynamic -Wl,--version-script,\$(srcdir)/exports.linux" ;;
+ *) nss_ldap_so_LDFLAGS="-shared -Wl,-Bdynamic" ;;
+ esac
++case "$target_os" in
++freebsd*) TARGET_OS=FreeBSD ;;
++esac
+
+ AM_CONDITIONAL(GCC, test "$GCC" = "yes")
+ AM_CONDITIONAL(GLIBC, test "$target_os" = "linux" -o "$target_os" = "linux-gnu")
+ AM_CONDITIONAL(AIX, test "$TARGET_OS" = AIX)
+ AM_CONDITIONAL(HPUX, test "$TARGET_OS" = HPUX)
++AM_CONDITIONAL(FreeBSD, test "$TARGET_OS" = FreeBSD)
+
+ AM_CONDITIONAL(USE_NATIVE_LINKER, test -n "$nss_ldap_so_LD")
+
+@@ -153,7 +157,6 @@
+ aix*) AC_CHECK_HEADERS(irs.h usersec.h) ;;
+ hpux*) AC_CHECK_HEADERS(nsswitch.h) ;;
+ *) AC_CHECK_HEADERS(nss.h)
+- AC_CHECK_HEADERS(nsswitch.h)
+ AC_CHECK_HEADERS(irs.h) ;;
+ esac
+ AC_CHECK_HEADERS(thread.h)
+@@ -232,7 +235,6 @@
+ AC_CHECK_FUNCS(gethostbyname)
+ AC_CHECK_FUNCS(nsdispatch)
+ AC_CHECK_LIB(pthread_nonshared, main)
+-AC_CHECK_FUNCS(pthread_atfork)
+ AC_CHECK_FUNCS(pthread_once)
+ AC_CHECK_FUNCS(ether_aton)
+ AC_CHECK_FUNCS(ether_ntoa)
+
+--- ldap-ethers.c.orig 2009-11-06 10:28:08.000000000 +0000
++++ ldap-ethers.c 2009-12-23 17:01:14.000000000 +0000
+@@ -217,9 +217,9 @@
+ }
+
+ snprintf(fullmac, sizeof(fullmac), "%02x:%02x:%02x:%02x:%02x:%02x",
+- addr->ether_addr_octet[0], addr->ether_addr_octet[1],
+- addr->ether_addr_octet[2], addr->ether_addr_octet[3],
+- addr->ether_addr_octet[4], addr->ether_addr_octet[5]);
++ addr->octet[0], addr->octet[1],
++ addr->octet[2], addr->octet[3],
++ addr->octet[4], addr->octet[5]);
+
+ LA_INIT(a);
+ LA_STRING(a) = ether_ntoa(addr);
+@@ -343,14 +343,14 @@
+ if (i != 6)
+ return NULL;
+ for (i = 0; i < 6; i++)
+- ep.ether_addr_octet[i] = t[i];
++ ep.octet[i] = t[i];
+
+ return &ep;
+ }
+ #endif /* !HAVE_ETHER_ATON */
+
+ #ifndef HAVE_ETHER_NTOA
+-#define EI(i) (unsigned int)(e->ether_addr_octet[(i)])
++#define EI(i) (unsigned int)(e->octet[(i)])
+ static char *ether_ntoa (const struct ether_addr *e)
+ {
+ static char s[18];
+
+--- ldap-ethers.h.orig 2009-11-06 10:28:08.000000000 +0000
++++ ldap-ethers.h 2009-12-23 17:02:06.000000000 +0000
+@@ -32,7 +32,7 @@
+
+ #ifndef HAVE_STRUCT_ETHER_ADDR
+ struct ether_addr {
+- u_char ether_addr_octet[6];
++ u_char octet[6];
+ };
+ #endif
+
+--- ldap-nss.c.orig Sat May 27 16:23:40 2006
++++ ldap-nss.c Sat May 27 16:23:52 2006
+@@ -69,7 +69,7 @@
+ #endif
+
+ /* Try to handle systems with both SASL libraries installed */
+-#if defined(HAVE_SASL_SASL_H) && defined(HAVE_SASL_AUXPROP_REQUEST)
++#if defined(HAVE_SASL_SASL_H)
+ #include <sasl/sasl.h>
+ #elif defined(HAVE_SASL_H)
+ #include <sasl.h>
+
+--- ldap-pwd.c.orig 2008-10-30 21:50:15.000000000 +0100
++++ ldap-pwd.c 2008-12-06 00:37:30.216966282 +0100
+@@ -21,7 +21,10 @@
+ static char rcsId[] =
+ "$Id$";
+
++#include <sys/types.h>
++#include <unistd.h>
+ #include "config.h"
++
+
+ #ifdef HAVE_PORT_BEFORE_H
+ #include <port_before.h>
+@@ -90,9 +93,13 @@
+ size_t tmplen;
+ char *tmp;
+
+- if (_nss_ldap_oc_check (e, "shadowAccount") == NSS_SUCCESS)
+- {
++/* if (_nss_ldap_oc_check (e, "shadowAccount") == NSS_SUCCESS)
++ * {
++ */
+ /* don't include password for shadowAccount */
++ if (geteuid() != 0)
++ {
++ /* don't include password for non-root users */
+ if (buflen < 3)
+ return NSS_TRYAGAIN;
+
+@@ -163,6 +170,15 @@
+ }
++
++#ifdef HAVE_LOGIN_CLASSES
++ stat =
++ _nss_ldap_assign_attrval (e, AT (loginClass), &pw->pw_class, &buffer,
++ &buflen);
++ if (stat != NSS_SUCCESS)
++ (void) _nss_ldap_assign_emptystring (&pw->pw_class, &buffer, &buflen);
++#endif
++
+
+ stat =
+ _nss_ldap_assign_attrval (e, AT (homeDirectory), &pw->pw_dir, &buffer,
+ &buflen);
+ if (stat != NSS_SUCCESS)
+
+--- ldap-schema.c 2009-08-29 09:21:43.000000000 -0400
++++ ldap-schema.c 2009-08-28 12:09:52.000000000 -0400
+@@ -334,6 +334,9 @@
+ #ifdef HAVE_PASSWD_PW_EXPIRE
+ (*pwd_attrs)[i++] = AT (shadowExpire);
+ #endif /* HAVE_PASSWD_PW_EXPIRE */
++#ifdef HAVE_LOGIN_CLASSES
++ (*pwd_attrs)[i++] = AT (loginClass);
++#endif
+ (*pwd_attrs)[i] = NULL;
+ }
+
+--- ldap-schema.h 2009-08-29 09:21:43.000000000 -0400
++++ ldap-schema.h 2009-08-29 06:37:18.000000000 -0400
+@@ -24,7 +24,7 @@
+ #define _LDAP_NSS_LDAP_LDAP_SCHEMA_H
+
+ /* max number of attributes per object class */
+-#define ATTRTAB_SIZE 15
++#define ATTRTAB_SIZE 16
+
+ /**
+ * function to initialize global lookup filters.
+@@ -153,6 +153,10 @@
+ #define AT_gecos "gecos"
+ #define AT_homeDirectory "homeDirectory"
+
++#ifdef HAVE_LOGIN_CLASSES
++/* FreeBSD extension -Jacob Myers <jacob@whotokspaz.org> */
++#define AT_loginClass "loginClass"
++#endif
+ /*
+ * ( nisSchema.2.1 NAME 'shadowAccount' SUP top AUXILIARY
+ * DESC 'Additional attributes for shadow passwords'
+
+--- /dev/null 2013-04-13 01:27:01.290932001 +0200
++++ bsdnss.c 2013-04-14 03:17:47.794195349 +0200
+@@ -0,0 +1,219 @@
++#include <errno.h>
++#include <stdlib.h>
++#include <sys/param.h>
++#include <netinet/in.h>
++#include <pwd.h>
++#include <grp.h>
++#include <nss.h>
++#include <nsswitch.h>
++#include <netdb.h>
++
++extern enum nss_status _nss_ldap_getgrent_r(struct group *, char *, size_t,
++ int *);
++extern enum nss_status _nss_ldap_getgrnam_r(const char *, struct group *,
++ char *, size_t, int *);
++extern enum nss_status _nss_ldap_getgrgid_r(gid_t gid, struct group *, char *,
++ size_t, int *);
++extern enum nss_status _nss_ldap_setgrent(void);
++extern enum nss_status _nss_ldap_endgrent(void);
++extern enum nss_status _nss_ldap_initgroups_dyn(const char *, gid_t, long int *,
++ long int *, gid_t **, long int, int *);
++
++extern enum nss_status _nss_ldap_getpwent_r(struct passwd *, char *, size_t,
++ int *);
++extern enum nss_status _nss_ldap_getpwnam_r(const char *, struct passwd *,
++ char *, size_t, int *);
++extern enum nss_status _nss_ldap_getpwuid_r(gid_t gid, struct passwd *, char *,
++ size_t, int *);
++extern enum nss_status _nss_ldap_setpwent(void);
++extern enum nss_status _nss_ldap_endpwent(void);
++
++extern enum nss_status _nss_ldap_gethostbyname_r (const char *name, struct hostent * result,
++ char *buffer, size_t buflen, int *errnop,
++ int *h_errnop);
++
++extern enum nss_status _nss_ldap_gethostbyname2_r (const char *name, int af, struct hostent * result,
++ char *buffer, size_t buflen, int *errnop,
++ int *h_errnop);
++extern enum nss_status _nss_ldap_gethostbyaddr_r (struct in_addr * addr, int len, int type,
++ struct hostent * result, char *buffer,
++ size_t buflen, int *errnop, int *h_errnop);
++
++NSS_METHOD_PROTOTYPE(__nss_compat_getgrnam_r);
++NSS_METHOD_PROTOTYPE(__nss_compat_getgrgid_r);
++NSS_METHOD_PROTOTYPE(__nss_compat_getgrent_r);
++NSS_METHOD_PROTOTYPE(__nss_compat_setgrent);
++NSS_METHOD_PROTOTYPE(__nss_compat_endgrent);
++static NSS_METHOD_PROTOTYPE(__freebsd_getgroupmembership);
++
++NSS_METHOD_PROTOTYPE(__nss_compat_getpwnam_r);
++NSS_METHOD_PROTOTYPE(__nss_compat_getpwuid_r);
++NSS_METHOD_PROTOTYPE(__nss_compat_getpwent_r);
++NSS_METHOD_PROTOTYPE(__nss_compat_setpwent);
++NSS_METHOD_PROTOTYPE(__nss_compat_endpwent);
++
++NSS_METHOD_PROTOTYPE(__nss_compat_gethostbyname);
++NSS_METHOD_PROTOTYPE(__nss_compat_gethostbyname2);
++NSS_METHOD_PROTOTYPE(__nss_compat_gethostbyaddr);
++
++static ns_mtab methods[] = {
++{ NSDB_GROUP, "getgrnam_r", __nss_compat_getgrnam_r, _nss_ldap_getgrnam_r },
++{ NSDB_GROUP, "getgrgid_r", __nss_compat_getgrgid_r, _nss_ldap_getgrgid_r },
++{ NSDB_GROUP, "getgrent_r", __nss_compat_getgrent_r, _nss_ldap_getgrent_r },
++{ NSDB_GROUP, "setgrent", __nss_compat_setgrent, _nss_ldap_setgrent },
++{ NSDB_GROUP, "endgrent", __nss_compat_endgrent, _nss_ldap_endgrent },
++{ NSDB_GROUP, "getgroupmembership", __freebsd_getgroupmembership, NULL },
++
++{ NSDB_PASSWD, "getpwnam_r", __nss_compat_getpwnam_r, _nss_ldap_getpwnam_r },
++{ NSDB_PASSWD, "getpwuid_r", __nss_compat_getpwuid_r, _nss_ldap_getpwuid_r },
++{ NSDB_PASSWD, "getpwent_r", __nss_compat_getpwent_r, _nss_ldap_getpwent_r },
++{ NSDB_PASSWD, "setpwent", __nss_compat_setpwent, _nss_ldap_setpwent },
++{ NSDB_PASSWD, "endpwent", __nss_compat_endpwent, _nss_ldap_endpwent },
++
++{ NSDB_HOSTS, "gethostbyname", __nss_compat_gethostbyname, _nss_ldap_gethostbyname_r },
++{ NSDB_HOSTS, "gethostbyaddr", __nss_compat_gethostbyaddr, _nss_ldap_gethostbyaddr_r },
++{ NSDB_HOSTS, "gethostbyname2", __nss_compat_gethostbyname2, _nss_ldap_gethostbyname2_r },
++
++{ NSDB_GROUP_COMPAT, "getgrnam_r", __nss_compat_getgrnam_r, _nss_ldap_getgrnam_r },
++{ NSDB_GROUP_COMPAT, "getgrgid_r", __nss_compat_getgrgid_r, _nss_ldap_getgrgid_r },
++{ NSDB_GROUP_COMPAT, "getgrent_r", __nss_compat_getgrent_r, _nss_ldap_getgrent_r },
++{ NSDB_GROUP_COMPAT, "setgrent", __nss_compat_setgrent, _nss_ldap_setgrent },
++{ NSDB_GROUP_COMPAT, "endgrent", __nss_compat_endgrent, _nss_ldap_endgrent },
++
++{ NSDB_PASSWD_COMPAT, "getpwnam_r", __nss_compat_getpwnam_r, _nss_ldap_getpwnam_r },
++{ NSDB_PASSWD_COMPAT, "getpwuid_r", __nss_compat_getpwuid_r, _nss_ldap_getpwuid_r },
++{ NSDB_PASSWD_COMPAT, "getpwent_r", __nss_compat_getpwent_r, _nss_ldap_getpwent_r },
++{ NSDB_PASSWD_COMPAT, "setpwent", __nss_compat_setpwent, _nss_ldap_setpwent },
++{ NSDB_PASSWD_COMPAT, "endpwent", __nss_compat_endpwent, _nss_ldap_endpwent },
++
++};
++
++
++ns_mtab *
++nss_module_register(const char *source, unsigned int *mtabsize,
++ nss_module_unregister_fn *unreg)
++{
++ *mtabsize = sizeof(methods)/sizeof(methods[0]);
++ *unreg = NULL;
++ return (methods);
++}
++
++int __nss_compat_gethostbyname(void *retval, void *mdata, va_list ap)
++{
++ enum nss_status (*fn)(const char *, struct hostent *, char *, size_t, int *, int *);
++ const char *name;
++ struct hostent *result;
++ char buffer[1024];
++ size_t buflen = 1024;
++ int errnop;
++ int h_errnop;
++ int af;
++ enum nss_status status;
++ fn = mdata;
++ name = va_arg(ap, const char*);
++ af = va_arg(ap,int);
++ result = va_arg(ap,struct hostent *);
++ status = fn(name, result, buffer, buflen, &errnop, &h_errnop);
++ status = __nss_compat_result(status,errnop);
++ h_errno = h_errnop;
++ return (status);
++}
++
++int __nss_compat_gethostbyname2(void *retval, void *mdata, va_list ap)
++{
++ enum nss_status (*fn)(const char *, struct hostent *, char *, size_t, int *, int *);
++ const char *name;
++ struct hostent *result;
++ char buffer[1024];
++ size_t buflen = 1024;
++ int errnop;
++ int h_errnop;
++ int af;
++ enum nss_status status;
++ fn = mdata;
++ name = va_arg(ap, const char*);
++ af = va_arg(ap,int);
++ result = va_arg(ap,struct hostent *);
++ status = fn(name, result, buffer, buflen, &errnop, &h_errnop);
++ status = __nss_compat_result(status,errnop);
++ h_errno = h_errnop;
++ return (status);
++}
++
++int __nss_compat_gethostbyaddr(void *retval, void *mdata, va_list ap)
++{
++ struct in_addr *addr;
++ int len;
++ int type;
++ struct hostent *result;
++ char buffer[1024];
++ size_t buflen = 1024;
++ int errnop;
++ int h_errnop;
++ enum nss_status (*fn)(struct in_addr *, int, int, struct hostent *, char *, size_t, int *, int *);
++ enum nss_status status;
++ fn = mdata;
++ addr = va_arg(ap, struct in_addr*);
++ len = va_arg(ap,int);
++ type = va_arg(ap,int);
++ result = va_arg(ap, struct hostent*);
++ status = fn(addr, len, type, result, buffer, buflen, &errnop, &h_errnop);
++ status = __nss_compat_result(status,errnop);
++ h_errno = h_errnop;
++ return (status);
++}
++
++static int
++__gr_addgid(gid_t gid, gid_t *groups, int maxgrp, int *groupc)
++{
++ int ret, dupc;
++
++ /* skip duplicates */
++ for (dupc = 0; dupc < MIN(maxgrp, *groupc); dupc++) {
++ if (groups[dupc] == gid)
++ return 1;
++ }
++
++ ret = 1;
++ if (*groupc < maxgrp) /* add this gid */
++ groups[*groupc] = gid;
++ else
++ ret = 0;
++ (*groupc)++;
++ return ret;
++}
++
++static int __freebsd_getgroupmembership(void *retval, void *mdata, va_list ap)
++{
++ int err;
++ enum nss_status s;
++ const char *user = va_arg(ap, const char *);
++ gid_t group = va_arg(ap, gid_t);
++ gid_t *groups = va_arg(ap, gid_t *);
++ int limit = va_arg(ap, int);
++ int *size = va_arg(ap, int*);
++ gid_t *tmpgroups;
++ long int lstart, lsize;
++ int i;
++
++ tmpgroups = malloc(limit * sizeof(gid_t));
++ if (tmpgroups == NULL)
++ return NS_TRYAGAIN;
++
++ /* insert primary membership */
++ __gr_addgid(group, groups, limit, size);
++
++ lstart = 0;
++ lsize = limit;
++ s = _nss_ldap_initgroups_dyn(user, group, &lstart, &lsize,
++ &tmpgroups, 0, &err);
++ if (s == NSS_STATUS_SUCCESS) {
++ for (i = 0; i < lstart; i++)
++ __gr_addgid(tmpgroups[i], groups, limit, size);
++ s = NSS_STATUS_NOTFOUND;
++ }
++
++ free(tmpgroups);
++
++ return __nss_compat_result(s, err);
++}
diff --git a/sys-auth/nss_ldap/files/nss_ldap-265-installdir.patch b/sys-auth/nss_ldap/files/nss_ldap-265-installdir.patch
new file mode 100644
index 000000000000..daf507ad594a
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-265-installdir.patch
@@ -0,0 +1,35 @@
+Index: nss_ldap-265/Makefile.am
+===================================================================
+--- nss_ldap-265.orig/Makefile.am
++++ nss_ldap-265/Makefile.am
+@@ -38,17 +38,13 @@ NSS_LDAP_LDFLAGS = @NSS_LDAP_LDFLAGS@
+ DEFS = @DEFS@
+ #INCLUDES = -I$(top_builddir) -I$(srcdir)
+
+-if GCC
+-MULTI_OS_DIRECTORY=$(shell $(CC) $(CFLAGS) -print-multi-os-directory)
+-else
+ MULTI_OS_DIRECTORY=.
+-endif
+
+ if GLIBC
+-LIBC_VERS = $(shell ls /lib/$(MULTI_OS_DIRECTORY)/libc-*.so | tail -n 1 | sed -e 's|.*libc-\(.*\)\.so|\1|')
++LIBC_VERS = $(shell ls @GENTOO_PORTAGE_EPREFIX@/lib/$(MULTI_OS_DIRECTORY)/libc-*.so | tail -n 1 | sed -e 's|.*libc-\(.*\)\.so|\1|')
+ NSS_LDAP_LIBC_VERSIONED = libnss_ldap-$(LIBC_VERS).so
+
+-NSS_VERS = $(shell ls /lib/$(MULTI_OS_DIRECTORY)/libnss_files.so.? | tail -n 1 | sed -e 's|.*libnss_files\.so\.\(.*\)|\1|')
++NSS_VERS = $(shell ls @GENTOO_PORTAGE_EPREFIX@/lib/$(MULTI_OS_DIRECTORY)/libnss_files.so.? | tail -n 1 | sed -e 's|.*libnss_files\.so\.\(.*\)|\1|')
+ NSS_LDAP_NSS_VERSIONED = libnss_ldap.so.$(NSS_VERS)
+ endif
+
+@@ -83,8 +79,8 @@ if GLIBC
+ $(mkinstalldirs) $(DESTDIR)$(libdir)
+ $(INSTALL_PROGRAM) -o $(INST_UID) -g $(INST_GID) nss_ldap.so $(DESTDIR)$(libdir)/$(NSS_LDAP_LIBC_VERSIONED)
+ (cd $(DESTDIR)$(libdir); ln -sf $(NSS_LDAP_LIBC_VERSIONED) $(NSS_LDAP_NSS_VERSIONED))
+- $(mkinstalldirs) $(DESTDIR)/usr$(libdir)
+- (cd $(DESTDIR)/usr$(libdir); ln -sf ../..$(libdir)/$(NSS_LDAP_NSS_VERSIONED) .)
++ $(mkinstalldirs) $(DESTDIR)$(libdir:/lib=/usr/lib)
++ (cd $(DESTDIR)/$(libdir:/lib=/usr/lib); ln -sf ../../lib/$(NSS_LDAP_NSS_VERSIONED) .)
+ else
+ $(mkinstalldirs) $(DESTDIR)$(libdir)
+ if HPUX
diff --git a/sys-auth/nss_ldap/files/nss_ldap-265-missing-entries-oneshot.patch b/sys-auth/nss_ldap/files/nss_ldap-265-missing-entries-oneshot.patch
new file mode 100644
index 000000000000..6730dc986dd1
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-265-missing-entries-oneshot.patch
@@ -0,0 +1,101 @@
+Distinguish between contexts that are somewhat persistent and one-offs
+which are used to fulfill part of a larger request.
+
+diff -up nss_ldap-253/ldap-grp.c nss_ldap-253/ldap-grp.c
+--- nss_ldap-253/ldap-grp.c 2009-05-08 13:30:43.000000000 -0400
++++ nss_ldap-253/ldap-grp.c 2009-05-08 13:34:41.000000000 -0400
+@@ -857,7 +857,7 @@ ng_chase (const char *dn, ldap_initgroup
+ LA_STRING (a) = dn;
+ LA_TYPE (a) = LA_TYPE_STRING;
+
+- if (_nss_ldap_ent_context_init_locked (&ctx) == NULL)
++ if (_nss_ldap_ent_context_init_internal_locked (&ctx) == NULL)
+ {
+ return NSS_UNAVAIL;
+ }
+@@ -930,7 +930,7 @@ ng_chase_backlink (const char ** members
+ LA_STRING_LIST (a) = filteredMembersOf;
+ LA_TYPE (a) = LA_TYPE_STRING_LIST_OR;
+
+- if (_nss_ldap_ent_context_init_locked (&ctx) == NULL)
++ if (_nss_ldap_ent_context_init_internal_locked (&ctx) == NULL)
+ {
+ free (filteredMembersOf);
+ return NSS_UNAVAIL;
+diff -up nss_ldap-253/ldap-netgrp.c nss_ldap-253/ldap-netgrp.c
+--- nss_ldap-253/ldap-netgrp.c 2009-05-08 13:31:35.000000000 -0400
++++ nss_ldap-253/ldap-netgrp.c 2009-05-08 13:33:14.000000000 -0400
+@@ -691,7 +691,7 @@ do_innetgr_nested (ldap_innetgr_args_t *
+ LA_TYPE (a) = LA_TYPE_STRING;
+ LA_STRING (a) = nested; /* memberNisNetgroup */
+
+- if (_nss_ldap_ent_context_init_locked (&ctx) == NULL)
++ if (_nss_ldap_ent_context_init_internal_locked (&ctx) == NULL)
+ {
+ debug ("<== do_innetgr_nested: failed to initialize context");
+ return NSS_UNAVAIL;
+diff -up nss_ldap-253/ldap-nss.c nss_ldap-253/ldap-nss.c
+--- nss_ldap-253/ldap-nss.c 2009-05-08 13:27:17.000000000 -0400
++++ nss_ldap-253/ldap-nss.c 2009-05-08 14:05:51.000000000 -0400
+@@ -1961,6 +1961,7 @@ _nss_ldap_ent_context_init_locked (ent_c
+ debug ("<== _nss_ldap_ent_context_init_locked");
+ return NULL;
+ }
++ ctx->ec_internal = 0;
+ *pctx = ctx;
+ }
+ else
+@@ -1990,6 +1991,15 @@ _nss_ldap_ent_context_init_locked (ent_c
+
+ return ctx;
+ }
++ent_context_t *
++_nss_ldap_ent_context_init_internal_locked (ent_context_t ** pctx)
++{
++ ent_context_t *ctx;
++ ctx = _nss_ldap_ent_context_init_locked (pctx);
++ if (ctx != NULL)
++ ctx->ec_internal = 1;
++ return ctx;
++}
+
+ /*
+ * Clears a given context; we require the caller
+@@ -2031,7 +2041,8 @@ _nss_ldap_ent_context_release (ent_conte
+
+ LS_INIT (ctx->ec_state);
+
+- if (_nss_ldap_test_config_flag (NSS_LDAP_FLAGS_CONNECT_POLICY_ONESHOT))
++ if (!ctx->ec_internal &&
++ _nss_ldap_test_config_flag (NSS_LDAP_FLAGS_CONNECT_POLICY_ONESHOT))
+ {
+ do_close ();
+ }
+diff -up nss_ldap-253/ldap-nss.h nss_ldap-253/ldap-nss.h
+--- nss_ldap-253/ldap-nss.h 2009-05-08 13:35:47.000000000 -0400
++++ nss_ldap-253/ldap-nss.h 2009-05-08 13:52:25.000000000 -0400
+@@ -560,6 +560,8 @@ struct ent_context
+ ldap_state_t ec_state; /* eg. for services */
+ int ec_msgid; /* message ID */
+ LDAPMessage *ec_res; /* result chain */
++ int ec_internal; /* this context is just a part of a larger
++ * query for information */
+ ldap_service_search_descriptor_t *ec_sd; /* current sd */
+ struct berval *ec_cookie; /* cookie for paged searches */
+ };
+@@ -744,6 +746,15 @@ ent_context_t *_nss_ldap_ent_context_ini
+ ent_context_t *_nss_ldap_ent_context_init_locked (ent_context_t **);
+
+ /*
++ * _nss_ldap_ent_context_init_internal_locked() has the same
++ * behaviour, except it marks the context as one that's being
++ * used to fetch additional data used in answering a request, i.e.
++ * that this isn't the "main" context
++ */
++
++ent_context_t *_nss_ldap_ent_context_init_internal_locked (ent_context_t **);
++
++/*
+ * _nss_ldap_ent_context_release() is used to manually free a context
+ */
+ void _nss_ldap_ent_context_release (ent_context_t *);
diff --git a/sys-auth/nss_ldap/files/nss_ldap-265-pthread.patch b/sys-auth/nss_ldap/files/nss_ldap-265-pthread.patch
new file mode 100644
index 000000000000..622ee5845e44
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-265-pthread.patch
@@ -0,0 +1,481 @@
+Index: ldap-nss.c
+===================================================================
+--- ldap-nss.c.orig
++++ ldap-nss.c
+@@ -142,7 +142,7 @@ static void (*__sigpipe_handler) (int) =
+ */
+ static ldap_session_t __session = { NULL, NULL, 0, LS_UNINITIALIZED };
+
+-#if defined(HAVE_PTHREAD_ATFORK) || defined(HAVE_LIBC_LOCK_H) || defined(HAVE_BITS_LIBC_LOCK_H)
++#if defined(HAVE_PTHREAD_ATFORK) || defined(HAVE___LIBC_ONCE)
+ static pthread_once_t __once = PTHREAD_ONCE_INIT;
+ #endif
+
+@@ -150,7 +150,7 @@ static pthread_once_t __once = PTHREAD_O
+ static FILE *__debugfile;
+ #endif /* LBER_OPT_LOG_PRINT_FILE */
+
+-#ifndef HAVE_PTHREAD_ATFORK
++#if !defined(HAVE_PTHREAD_ATFORK) || !defined(HAVE___LIBC_ONCE)
+ /*
+ * Process ID that opened the session.
+ */
+@@ -162,7 +162,7 @@ static uid_t __euid = -1;
+ static int __ssl_initialized = 0;
+ #endif /* HAVE_LDAPSSL_CLIENT_INIT */
+
+-#if defined(HAVE_PTHREAD_ATFORK) || defined(HAVE_LIBC_LOCK_H) || defined(HAVE_BITS_LIBC_LOCK_H)
++#if defined(HAVE_PTHREAD_ATFORK) || defined(HAVE___LIBC_ONCE)
+ /*
+ * Prepare for fork(); lock mutex.
+ */
+@@ -513,7 +513,7 @@ _nss_ldap_default_constr (nss_ldap_backe
+ }
+ #endif /* HAVE_NSSWITCH_H */
+
+-#if defined(HAVE_PTHREAD_ATFORK) || defined(HAVE_LIBC_LOCK_H) || defined(HAVE_BITS_LIBC_LOCK_H)
++#if defined(HAVE_PTHREAD_ATFORK) || defined(HAVE___LIBC_ONCE)
+ static void
+ do_atfork_prepare (void)
+ {
+@@ -547,7 +547,7 @@ do_atfork_setup (void)
+ #ifdef HAVE_PTHREAD_ATFORK
+ (void) pthread_atfork (do_atfork_prepare, do_atfork_parent,
+ do_atfork_child);
+-#elif defined(HAVE_LIBC_LOCK_H) || defined(HAVE_BITS_LIBC_LOCK_H)
++#elif defined(HAVE___LIBC_ATFORK)
+ (void) __libc_atfork (do_atfork_prepare, do_atfork_parent, do_atfork_child);
+ #endif
+
+@@ -1096,7 +1096,7 @@ static NSS_STATUS
+ do_init (void)
+ {
+ ldap_config_t *cfg;
+-#ifndef HAVE_PTHREAD_ATFORK
++#if !defined(HAVE_PTHREAD_ATFORK) || !defined(HAVE___LIBC_ONCE)
+ pid_t pid;
+ #endif
+ uid_t euid;
+@@ -1113,7 +1113,7 @@ do_init (void)
+ }
+
+ #ifndef HAVE_PTHREAD_ATFORK
+-#if defined(HAVE_LIBC_LOCK_H) || defined(HAVE_BITS_LIBC_LOCK_H)
++#if defined(HAVE___LIBC_ONCE)
+ /*
+ * This bogosity is necessary because Linux uses different
+ * PIDs for different threads (like IRIX, which we don't
+@@ -1145,7 +1145,7 @@ do_init (void)
+ pid = -1; /* linked against libpthreads, don't care */
+ #else
+ pid = getpid ();
+-#endif /* HAVE_LIBC_LOCK_H || HAVE_BITS_LIBC_LOCK_H */
++#endif /* HAVE___LIBC_ONCE */
+ #endif /* HAVE_PTHREAD_ATFORK */
+
+ euid = geteuid ();
+@@ -1155,7 +1155,7 @@ do_init (void)
+ syslog (LOG_DEBUG,
+ "nss_ldap: __session.ls_state=%d, __session.ls_conn=%p, __euid=%i, euid=%i",
+ __session.ls_state, __session.ls_conn, __euid, euid);
+-#elif defined(HAVE_LIBC_LOCK_H) || defined(HAVE_BITS_LIBC_LOCK_H)
++#elif defined(HAVE___LIBC_ONCE)
+ syslog (LOG_DEBUG,
+ "nss_ldap: libpthreads=%s, __session.ls_state=%d, __session.ls_conn=%p, __pid=%i, pid=%i, __euid=%i, euid=%i",
+ ((__pthread_once == NULL || __pthread_atfork == NULL) ? "FALSE" : "TRUE"),
+@@ -1179,11 +1179,11 @@ do_init (void)
+ }
+ else
+ #ifndef HAVE_PTHREAD_ATFORK
+-#if defined(HAVE_LIBC_LOCK_H) || defined(HAVE_BITS_LIBC_LOCK_H)
++#if defined(HAVE___LIBC_ONCE)
+ if ((__pthread_once == NULL || __pthread_atfork == NULL) && __pid != pid)
+ #else
+ if (__pid != pid)
+-#endif /* HAVE_LIBC_LOCK_H || HAVE_BITS_LIBC_LOCK_H */
++#endif /* HAVE___LIBC_ONCE */
+ {
+ do_close_no_unbind ();
+ }
+@@ -1244,9 +1244,9 @@ do_init (void)
+ debug ("<== do_init (pthread_once failed)");
+ return NSS_UNAVAIL;
+ }
+-#elif defined(HAVE_PTHREAD_ATFORK) && ( defined(HAVE_LIBC_LOCK_H) || defined(HAVE_BITS_LIBC_LOCK_H) )
++#elif defined(HAVE_PTHREAD_ATFORK) && defined(HAVE___LIBC_ONCE)
+ __libc_once (__once, do_atfork_setup);
+-#elif defined(HAVE_LIBC_LOCK_H) || defined(HAVE_BITS_LIBC_LOCK_H)
++#elif defined(HAVE___LIBC_ONCE)
+ /*
+ * Only install the pthread_atfork() handlers i
+ * we are linked against libpthreads. Otherwise,
+Index: ldap-nss.h
+===================================================================
+--- ldap-nss.h.orig
++++ ldap-nss.h
+@@ -670,7 +670,7 @@ extern int __multi_threaded;
+ #define NSS_LDAP_LOCK(m) mutex_lock(&m)
+ #define NSS_LDAP_UNLOCK(m) mutex_unlock(&m)
+ #define NSS_LDAP_DEFINE_LOCK(m) static mutex_t m = DEFAULTMUTEX
+-#elif defined(HAVE_LIBC_LOCK_H) || defined(HAVE_BITS_LIBC_LOCK_H)
++#elif defined(HAVE___LIBC_LOCK_LOCK) && defined(HAVE___LIBC_LOCK_UNLOCK)
+ #define NSS_LDAP_LOCK(m) __libc_lock_lock(m)
+ #define NSS_LDAP_UNLOCK(m) __libc_lock_unlock(m)
+ #define NSS_LDAP_DEFINE_LOCK(m) static pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER
+Index: configure.in
+===================================================================
+--- configure.in.orig
++++ configure.in
+@@ -1,6 +1,7 @@
+ AC_INIT(ldap-nss.c)
+ AC_CANONICAL_SYSTEM
+ AC_PREFIX_DEFAULT()
++AC_CONFIG_MACRO_DIR([m4])
+
+ AM_INIT_AUTOMAKE(nss_ldap, 265)
+ AM_CONFIG_HEADER(config.h)
+@@ -229,11 +230,18 @@ fi
+ AC_CHECK_FUNCS(snprintf)
+ AC_CHECK_FUNCS(gethostbyname)
+ AC_CHECK_FUNCS(nsdispatch)
++AC_CHECK_FUNCS(ether_aton)
++AC_CHECK_FUNCS(ether_ntoa)
++
++AX_PTHREAD
++LIBS="$PTHREAD_LIBS $LIBS"
++CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
++CC="$PTHREAD_CC"
++
+ AC_CHECK_LIB(pthread_nonshared, main)
+ AC_CHECK_FUNCS(pthread_atfork)
+ AC_CHECK_FUNCS(pthread_once)
+-AC_CHECK_FUNCS(ether_aton)
+-AC_CHECK_FUNCS(ether_ntoa)
++AC_CHECK_FUNCS(__libc_once __libc_atfork __libc_lock_lock __libc_lock_unlock)
+
+ AC_MSG_CHECKING(for struct ether_addr)
+ AC_TRY_COMPILE([#include <sys/types.h>
+Index: m4/ax_pthread.m4
+===================================================================
+--- /dev/null
++++ m4/ax_pthread.m4
+@@ -0,0 +1,309 @@
++# ===========================================================================
++# http://www.gnu.org/software/autoconf-archive/ax_pthread.html
++# ===========================================================================
++#
++# SYNOPSIS
++#
++# AX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
++#
++# DESCRIPTION
++#
++# This macro figures out how to build C programs using POSIX threads. It
++# sets the PTHREAD_LIBS output variable to the threads library and linker
++# flags, and the PTHREAD_CFLAGS output variable to any special C compiler
++# flags that are needed. (The user can also force certain compiler
++# flags/libs to be tested by setting these environment variables.)
++#
++# Also sets PTHREAD_CC to any special C compiler that is needed for
++# multi-threaded programs (defaults to the value of CC otherwise). (This
++# is necessary on AIX to use the special cc_r compiler alias.)
++#
++# NOTE: You are assumed to not only compile your program with these flags,
++# but also link it with them as well. e.g. you should link with
++# $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS
++#
++# If you are only building threads programs, you may wish to use these
++# variables in your default LIBS, CFLAGS, and CC:
++#
++# LIBS="$PTHREAD_LIBS $LIBS"
++# CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
++# CC="$PTHREAD_CC"
++#
++# In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant
++# has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to that name
++# (e.g. PTHREAD_CREATE_UNDETACHED on AIX).
++#
++# Also HAVE_PTHREAD_PRIO_INHERIT is defined if pthread is found and the
++# PTHREAD_PRIO_INHERIT symbol is defined when compiling with
++# PTHREAD_CFLAGS.
++#
++# ACTION-IF-FOUND is a list of shell commands to run if a threads library
++# is found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it
++# is not found. If ACTION-IF-FOUND is not specified, the default action
++# will define HAVE_PTHREAD.
++#
++# Please let the authors know if this macro fails on any platform, or if
++# you have any other suggestions or comments. This macro was based on work
++# by SGJ on autoconf scripts for FFTW (http://www.fftw.org/) (with help
++# from M. Frigo), as well as ac_pthread and hb_pthread macros posted by
++# Alejandro Forero Cuervo to the autoconf macro repository. We are also
++# grateful for the helpful feedback of numerous users.
++#
++# Updated for Autoconf 2.68 by Daniel Richard G.
++#
++# LICENSE
++#
++# Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
++# Copyright (c) 2011 Daniel Richard G. <skunk@iSKUNK.ORG>
++#
++# This program is free software: you can redistribute it and/or modify it
++# under the terms of the GNU General Public License as published by the
++# Free Software Foundation, either version 3 of the License, or (at your
++# option) any later version.
++#
++# This program is distributed in the hope that it will be useful, but
++# WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
++# Public License for more details.
++#
++# You should have received a copy of the GNU General Public License along
++# with this program. If not, see <http://www.gnu.org/licenses/>.
++#
++# As a special exception, the respective Autoconf Macro's copyright owner
++# gives unlimited permission to copy, distribute and modify the configure
++# scripts that are the output of Autoconf when processing the Macro. You
++# need not follow the terms of the GNU General Public License when using
++# or distributing such scripts, even though portions of the text of the
++# Macro appear in them. The GNU General Public License (GPL) does govern
++# all other use of the material that constitutes the Autoconf Macro.
++#
++# This special exception to the GPL applies to versions of the Autoconf
++# Macro released by the Autoconf Archive. When you make and distribute a
++# modified version of the Autoconf Macro, you may extend this special
++# exception to the GPL to apply to your modified version as well.
++
++#serial 18
++
++AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD])
++AC_DEFUN([AX_PTHREAD], [
++AC_REQUIRE([AC_CANONICAL_HOST])
++AC_LANG_PUSH([C])
++ax_pthread_ok=no
++
++# We used to check for pthread.h first, but this fails if pthread.h
++# requires special compiler flags (e.g. on True64 or Sequent).
++# It gets checked for in the link test anyway.
++
++# First of all, check if the user has set any of the PTHREAD_LIBS,
++# etcetera environment variables, and if threads linking works using
++# them:
++if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
++ save_CFLAGS="$CFLAGS"
++ CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
++ save_LIBS="$LIBS"
++ LIBS="$PTHREAD_LIBS $LIBS"
++ AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
++ AC_TRY_LINK_FUNC(pthread_join, ax_pthread_ok=yes)
++ AC_MSG_RESULT($ax_pthread_ok)
++ if test x"$ax_pthread_ok" = xno; then
++ PTHREAD_LIBS=""
++ PTHREAD_CFLAGS=""
++ fi
++ LIBS="$save_LIBS"
++ CFLAGS="$save_CFLAGS"
++fi
++
++# We must check for the threads library under a number of different
++# names; the ordering is very important because some systems
++# (e.g. DEC) have both -lpthread and -lpthreads, where one of the
++# libraries is broken (non-POSIX).
++
++# Create a list of thread flags to try. Items starting with a "-" are
++# C compiler flags, and other items are library names, except for "none"
++# which indicates that we try without any flags at all, and "pthread-config"
++# which is a program returning the flags for the Pth emulation library.
++
++ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config"
++
++# The ordering *is* (sometimes) important. Some notes on the
++# individual items follow:
++
++# pthreads: AIX (must check this before -lpthread)
++# none: in case threads are in libc; should be tried before -Kthread and
++# other compiler flags to prevent continual compiler warnings
++# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h)
++# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able)
++# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread)
++# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads)
++# -pthreads: Solaris/gcc
++# -mthreads: Mingw32/gcc, Lynx/gcc
++# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it
++# doesn't hurt to check since this sometimes defines pthreads too;
++# also defines -D_REENTRANT)
++# ... -mt is also the pthreads flag for HP/aCC
++# pthread: Linux, etcetera
++# --thread-safe: KAI C++
++# pthread-config: use pthread-config program (for GNU Pth library)
++
++case ${host_os} in
++ solaris*)
++
++ # On Solaris (at least, for some versions), libc contains stubbed
++ # (non-functional) versions of the pthreads routines, so link-based
++ # tests will erroneously succeed. (We need to link with -pthreads/-mt/
++ # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather
++ # a function called by this macro, so we could check for that, but
++ # who knows whether they'll stub that too in a future libc.) So,
++ # we'll just look for -pthreads and -lpthread first:
++
++ ax_pthread_flags="-pthreads pthread -mt -pthread $ax_pthread_flags"
++ ;;
++
++ darwin*)
++ ax_pthread_flags="-pthread $ax_pthread_flags"
++ ;;
++esac
++
++if test x"$ax_pthread_ok" = xno; then
++for flag in $ax_pthread_flags; do
++
++ case $flag in
++ none)
++ AC_MSG_CHECKING([whether pthreads work without any flags])
++ ;;
++
++ -*)
++ AC_MSG_CHECKING([whether pthreads work with $flag])
++ PTHREAD_CFLAGS="$flag"
++ ;;
++
++ pthread-config)
++ AC_CHECK_PROG(ax_pthread_config, pthread-config, yes, no)
++ if test x"$ax_pthread_config" = xno; then continue; fi
++ PTHREAD_CFLAGS="`pthread-config --cflags`"
++ PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`"
++ ;;
++
++ *)
++ AC_MSG_CHECKING([for the pthreads library -l$flag])
++ PTHREAD_LIBS="-l$flag"
++ ;;
++ esac
++
++ save_LIBS="$LIBS"
++ save_CFLAGS="$CFLAGS"
++ LIBS="$PTHREAD_LIBS $LIBS"
++ CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
++
++ # Check for various functions. We must include pthread.h,
++ # since some functions may be macros. (On the Sequent, we
++ # need a special flag -Kthread to make this header compile.)
++ # We check for pthread_join because it is in -lpthread on IRIX
++ # while pthread_create is in libc. We check for pthread_attr_init
++ # due to DEC craziness with -lpthreads. We check for
++ # pthread_cleanup_push because it is one of the few pthread
++ # functions on Solaris that doesn't have a non-functional libc stub.
++ # We try pthread_create on general principles.
++ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h>
++ static void routine(void *a) { a = 0; }
++ static void *start_routine(void *a) { return a; }],
++ [pthread_t th; pthread_attr_t attr;
++ pthread_create(&th, 0, start_routine, 0);
++ pthread_join(th, 0);
++ pthread_attr_init(&attr);
++ pthread_cleanup_push(routine, 0);
++ pthread_cleanup_pop(0) /* ; */])],
++ [ax_pthread_ok=yes],
++ [])
++
++ LIBS="$save_LIBS"
++ CFLAGS="$save_CFLAGS"
++
++ AC_MSG_RESULT($ax_pthread_ok)
++ if test "x$ax_pthread_ok" = xyes; then
++ break;
++ fi
++
++ PTHREAD_LIBS=""
++ PTHREAD_CFLAGS=""
++done
++fi
++
++# Various other checks:
++if test "x$ax_pthread_ok" = xyes; then
++ save_LIBS="$LIBS"
++ LIBS="$PTHREAD_LIBS $LIBS"
++ save_CFLAGS="$CFLAGS"
++ CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
++
++ # Detect AIX lossage: JOINABLE attribute is called UNDETACHED.
++ AC_MSG_CHECKING([for joinable pthread attribute])
++ attr_name=unknown
++ for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do
++ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h>],
++ [int attr = $attr; return attr /* ; */])],
++ [attr_name=$attr; break],
++ [])
++ done
++ AC_MSG_RESULT($attr_name)
++ if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
++ AC_DEFINE_UNQUOTED(PTHREAD_CREATE_JOINABLE, $attr_name,
++ [Define to necessary symbol if this constant
++ uses a non-standard name on your system.])
++ fi
++
++ AC_MSG_CHECKING([if more special flags are required for pthreads])
++ flag=no
++ case ${host_os} in
++ aix* | freebsd* | darwin*) flag="-D_THREAD_SAFE";;
++ osf* | hpux*) flag="-D_REENTRANT";;
++ solaris*)
++ if test "$GCC" = "yes"; then
++ flag="-D_REENTRANT"
++ else
++ flag="-mt -D_REENTRANT"
++ fi
++ ;;
++ esac
++ AC_MSG_RESULT(${flag})
++ if test "x$flag" != xno; then
++ PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
++ fi
++
++ AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
++ ax_cv_PTHREAD_PRIO_INHERIT, [
++ AC_LINK_IFELSE([
++ AC_LANG_PROGRAM([[#include <pthread.h>]], [[int i = PTHREAD_PRIO_INHERIT;]])],
++ [ax_cv_PTHREAD_PRIO_INHERIT=yes],
++ [ax_cv_PTHREAD_PRIO_INHERIT=no])
++ ])
++ AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"],
++ AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], 1, [Have PTHREAD_PRIO_INHERIT.]))
++
++ LIBS="$save_LIBS"
++ CFLAGS="$save_CFLAGS"
++
++ # More AIX lossage: must compile with xlc_r or cc_r
++ if test x"$GCC" != xyes; then
++ AC_CHECK_PROGS(PTHREAD_CC, xlc_r cc_r, ${CC})
++ else
++ PTHREAD_CC=$CC
++ fi
++else
++ PTHREAD_CC="$CC"
++fi
++
++AC_SUBST(PTHREAD_LIBS)
++AC_SUBST(PTHREAD_CFLAGS)
++AC_SUBST(PTHREAD_CC)
++
++# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
++if test x"$ax_pthread_ok" = xyes; then
++ ifelse([$1],,AC_DEFINE(HAVE_PTHREAD,1,[Define if you have POSIX threads libraries and header files.]),[$1])
++ :
++else
++ ax_pthread_ok=no
++ $2
++fi
++AC_LANG_POP
++])dnl AX_PTHREAD
+Index: Makefile.am
+===================================================================
+--- Makefile.am.orig
++++ Makefile.am
+@@ -1,3 +1,5 @@
++ACLOCAL_AMFLAGS = -I m4
++
+ if AIX
+ authmod = NSS_LDAP
+ else
diff --git a/sys-auth/nss_ldap/files/nss_ldap-265-reconnect-timeouts.patch b/sys-auth/nss_ldap/files/nss_ldap-265-reconnect-timeouts.patch
new file mode 100644
index 000000000000..b377ad7bb326
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nss_ldap-265-reconnect-timeouts.patch
@@ -0,0 +1,57 @@
+diff -Nuar --exclude '*.orig' nss_ldap-265.orig/ldap.conf nss_ldap-265/ldap.conf
+--- nss_ldap-265.orig/ldap.conf 2009-11-06 10:28:08.000000000 +0000
++++ nss_ldap-265/ldap.conf 2010-02-19 18:36:58.272236290 +0000
+@@ -279,7 +279,8 @@
+ # OpenLDAP SSL mechanism
+ # start_tls mechanism uses the normal LDAP port, LDAPS typically 636
+ #ssl start_tls
+-#ssl on
++###ssl on
++# Gentoo note: Don't use 'ssl on' in 249/250. They are broken in some cases! Use start_tls instead.
+
+ # OpenLDAP SSL options
+ # Require and verify server certificate (yes/no)
+@@ -311,3 +312,27 @@
+ # Override the default Kerberos ticket cache location.
+ #krb5_ccname FILE:/etc/.ldapcache
+
++# Timeout behavior
++# Upstream nss_ldap hard-codes these values:
++#nss_reconnect_tries 5 # number of times to double the sleep time
++#nss_reconnect_sleeptime 4 # initial sleep value
++#nss_reconnect_maxsleeptime 64 # max sleep value to cap at
++#nss_reconnect_maxconntries 2 # how many tries before sleeping
++# This leads to a delay of 124 seconds (4+8+16+32+64=124) per lookup if the
++# server is not available.
++
++# For Gentoo's distribution of nss_ldap, as of 250-r1, we use these values
++# (The hardwired constants in the code are changed to them as well):
++nss_reconnect_tries 4 # number of times to double the sleep time
++nss_reconnect_sleeptime 1 # initial sleep value
++nss_reconnect_maxsleeptime 16 # max sleep value to cap at
++nss_reconnect_maxconntries 2 # how many tries before sleeping
++# This leads to a delay of 15 seconds (1+2+4+8=15)
++
++# If you are impatient, and know your LDAP server is reliable, fast or local,
++# you may wish to use these values instead:
++#nss_reconnect_tries 1 # number of times to double the sleep time
++#nss_reconnect_sleeptime 1 # initial sleep value
++#nss_reconnect_maxsleeptime 1 # max sleep value to cap at
++#nss_reconnect_maxconntries 3 # how many tries before sleeping
++# This leads to a delay of 1 second.
+diff -Nuar --exclude '*.orig' nss_ldap-265.orig/ldap-nss.h nss_ldap-265/ldap-nss.h
+--- nss_ldap-265.orig/ldap-nss.h 2009-11-06 10:28:08.000000000 +0000
++++ nss_ldap-265/ldap-nss.h 2010-02-19 18:37:49.278474888 +0000
+@@ -96,9 +96,9 @@
+ * unacceptable, in which case you may wish to adjust
+ * the constants below.
+ */
+-#define LDAP_NSS_TRIES 5 /* number of sleeping reconnect attempts */
+-#define LDAP_NSS_SLEEPTIME 4 /* seconds to sleep; doubled until max */
+-#define LDAP_NSS_MAXSLEEPTIME 64 /* maximum seconds to sleep */
++#define LDAP_NSS_TRIES 4 /* number of sleeping reconnect attempts */
++#define LDAP_NSS_SLEEPTIME 1 /* seconds to sleep; doubled until max */
++#define LDAP_NSS_MAXSLEEPTIME 16 /* maximum seconds to sleep */
+ #define LDAP_NSS_MAXCONNTRIES 2 /* reconnect attempts before sleeping */
+
+ #if defined(HAVE_NSSWITCH_H) || defined(HAVE_IRS_H)
diff --git a/sys-auth/nss_ldap/files/nsswitch.ldap.diff b/sys-auth/nss_ldap/files/nsswitch.ldap.diff
new file mode 100644
index 000000000000..a8e96e05e8d8
--- /dev/null
+++ b/sys-auth/nss_ldap/files/nsswitch.ldap.diff
@@ -0,0 +1,15 @@
+--- nsswitch.ldap 2004-06-08 00:34:09.895330016 -0500
++++ nsswitch.ldap-modified 2004-06-08 00:35:21.518441648 -0500
+@@ -10,10 +10,10 @@
+ passwd: files ldap
+ group: files ldap
+
+-# consult DNS first, we will need it to resolve the LDAP host. (If we
++# consult files/dns first, we will need it to resolve the LDAP host. (If we
+ # can't resolve it, we're in infinite recursion, because libldap calls
+ # gethostbyname(). Careful!)
+-hosts: dns ldap
++hosts: files dns ldap
+
+ # LDAP is nominally authoritative for the following maps.
+ services: ldap [NOTFOUND=return] files
diff --git a/sys-auth/nss_ldap/metadata.xml b/sys-auth/nss_ldap/metadata.xml
new file mode 100644
index 000000000000..49fcdac51aec
--- /dev/null
+++ b/sys-auth/nss_ldap/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>ldap-bugs@gentoo.org</email>
+ <name>Please assign bugs to this mail alias.</name>
+</maintainer>
+<maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ <name>Robin H. Johnson</name>
+</maintainer>
+<maintainer type="person">
+ <email>prometheanfire@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/sys-auth/nss_ldap/nss_ldap-258.ebuild b/sys-auth/nss_ldap/nss_ldap-258.ebuild
new file mode 100644
index 000000000000..18dbf9fd7de4
--- /dev/null
+++ b/sys-auth/nss_ldap/nss_ldap-258.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit fixheadtails eutils multilib autotools
+
+IUSE="debug sasl kerberos"
+
+DESCRIPTION="NSS LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="alpha amd64 hppa ~ia64 ~mips ppc ppc64 sparc x86"
+
+DEPEND=">=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )
+ kerberos? ( virtual/krb5 )"
+RDEPEND="${DEPEND}
+ !<net-fs/autofs-4.1.3"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/nsswitch.ldap.diff
+ # Applied by upstream
+ #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
+ epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-252-reconnect-timeouts.patch
+ # Applied by upstream
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
+ sed -i.orig \
+ -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
+ "${S}"/ldap.conf || die "failed to clean up initial version marker"
+ # fix head/tail stuff
+ ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
+ # fix build borkage
+ for i in Makefile.{in,am}; do
+ sed -i.orig \
+ -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
+ "${S}"/$i
+ done
+ epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
+ eautoreconf
+}
+
+src_compile() {
+ local myconf=""
+ use debug && myconf="${myconf} --enable-debugging"
+ use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi"
+ econf \
+ --with-ldap-lib=openldap \
+ --libdir=/$(get_libdir) \
+ --enable-schema-mapping \
+ --enable-paged-results \
+ --enable-rfc2307bis \
+ ${myconf} || die "configure failed"
+
+ emake || die "make failed"
+}
+
+src_install() {
+ dodir /$(get_libdir)
+
+ emake -j1 DESTDIR="${D}" install || die "make install failed"
+
+ insinto /etc
+ doins ldap.conf
+
+ dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
+ CVSVersionInfo.txt README nsswitch.ldap certutil
+ docinto docs; dodoc doc/*
+}
+
+pkg_postinst() {
+ elog "If you use a ldaps:// string in the 'uri' setting of"
+ elog "your /etc/ldap.conf, you must set 'ssl on'!"
+}
diff --git a/sys-auth/nss_ldap/nss_ldap-259.ebuild b/sys-auth/nss_ldap/nss_ldap-259.ebuild
new file mode 100644
index 000000000000..477b68d53787
--- /dev/null
+++ b/sys-auth/nss_ldap/nss_ldap-259.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit fixheadtails eutils multilib autotools
+
+IUSE="debug sasl kerberos"
+
+DESCRIPTION="NSS LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+
+DEPEND=">=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )
+ kerberos? ( virtual/krb5 )"
+RDEPEND="${DEPEND}
+ !<net-fs/autofs-4.1.3"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/nsswitch.ldap.diff
+ # Applied by upstream
+ #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
+ epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-252-reconnect-timeouts.patch
+ # Applied by upstream
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
+ sed -i.orig \
+ -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
+ "${S}"/ldap.conf || die "failed to clean up initial version marker"
+ # fix head/tail stuff
+ ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
+ # fix build borkage
+ for i in Makefile.{in,am}; do
+ sed -i.orig \
+ -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
+ "${S}"/$i
+ done
+ epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
+ eautoreconf
+}
+
+src_compile() {
+ local myconf=""
+ use debug && myconf="${myconf} --enable-debugging"
+ use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi"
+ econf \
+ --with-ldap-lib=openldap \
+ --libdir=/$(get_libdir) \
+ --enable-schema-mapping \
+ --enable-paged-results \
+ --enable-rfc2307bis \
+ ${myconf} || die "configure failed"
+
+ emake || die "make failed"
+}
+
+src_install() {
+ dodir /$(get_libdir)
+
+ emake -j1 DESTDIR="${D}" install || die "make install failed"
+
+ insinto /etc
+ doins ldap.conf
+
+ dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
+ CVSVersionInfo.txt README nsswitch.ldap certutil
+ docinto docs; dodoc doc/*
+}
+
+pkg_postinst() {
+ elog "If you use a ldaps:// string in the 'uri' setting of"
+ elog "your /etc/ldap.conf, you must set 'ssl on'!"
+}
diff --git a/sys-auth/nss_ldap/nss_ldap-261.ebuild b/sys-auth/nss_ldap/nss_ldap-261.ebuild
new file mode 100644
index 000000000000..e69f1f77726f
--- /dev/null
+++ b/sys-auth/nss_ldap/nss_ldap-261.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit fixheadtails eutils multilib autotools
+
+IUSE="debug sasl kerberos"
+
+DESCRIPTION="NSS LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+
+DEPEND=">=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )
+ kerberos? ( virtual/krb5 )"
+RDEPEND="${DEPEND}
+ !<net-fs/autofs-4.1.3"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/nsswitch.ldap.diff
+ # Applied by upstream
+ #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
+ epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-252-reconnect-timeouts.patch
+ # Applied by upstream
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
+ sed -i.orig \
+ -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
+ "${S}"/ldap.conf || die "failed to clean up initial version marker"
+ # fix head/tail stuff
+ ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
+ # fix build borkage
+ for i in Makefile.{in,am}; do
+ sed -i.orig \
+ -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
+ "${S}"/$i
+ done
+ # Upstream forgets the version number sometimes
+ epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
+ sed -i \
+ -e "/^AM_INIT_AUTOMAKE/s~2..~$PV~" \
+ "${S}"/configure.in
+ eautoreconf
+}
+
+src_compile() {
+ local myconf=""
+ use debug && myconf="${myconf} --enable-debugging"
+ use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi"
+ econf \
+ --with-ldap-lib=openldap \
+ --libdir=/$(get_libdir) \
+ --enable-schema-mapping \
+ --enable-paged-results \
+ --enable-rfc2307bis \
+ ${myconf} || die "configure failed"
+
+ emake || die "make failed"
+}
+
+src_install() {
+ dodir /$(get_libdir)
+
+ emake -j1 DESTDIR="${D}" install || die "make install failed"
+
+ insinto /etc
+ doins ldap.conf
+
+ dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
+ CVSVersionInfo.txt README nsswitch.ldap certutil
+ docinto docs; dodoc doc/*
+}
+
+pkg_postinst() {
+ elog "If you use a ldaps:// string in the 'uri' setting of"
+ elog "your /etc/ldap.conf, you must set 'ssl on'!"
+}
diff --git a/sys-auth/nss_ldap/nss_ldap-262.ebuild b/sys-auth/nss_ldap/nss_ldap-262.ebuild
new file mode 100644
index 000000000000..e69f1f77726f
--- /dev/null
+++ b/sys-auth/nss_ldap/nss_ldap-262.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit fixheadtails eutils multilib autotools
+
+IUSE="debug sasl kerberos"
+
+DESCRIPTION="NSS LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+
+DEPEND=">=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )
+ kerberos? ( virtual/krb5 )"
+RDEPEND="${DEPEND}
+ !<net-fs/autofs-4.1.3"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/nsswitch.ldap.diff
+ # Applied by upstream
+ #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
+ epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-252-reconnect-timeouts.patch
+ # Applied by upstream
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
+ sed -i.orig \
+ -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
+ "${S}"/ldap.conf || die "failed to clean up initial version marker"
+ # fix head/tail stuff
+ ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
+ # fix build borkage
+ for i in Makefile.{in,am}; do
+ sed -i.orig \
+ -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
+ "${S}"/$i
+ done
+ # Upstream forgets the version number sometimes
+ epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
+ sed -i \
+ -e "/^AM_INIT_AUTOMAKE/s~2..~$PV~" \
+ "${S}"/configure.in
+ eautoreconf
+}
+
+src_compile() {
+ local myconf=""
+ use debug && myconf="${myconf} --enable-debugging"
+ use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi"
+ econf \
+ --with-ldap-lib=openldap \
+ --libdir=/$(get_libdir) \
+ --enable-schema-mapping \
+ --enable-paged-results \
+ --enable-rfc2307bis \
+ ${myconf} || die "configure failed"
+
+ emake || die "make failed"
+}
+
+src_install() {
+ dodir /$(get_libdir)
+
+ emake -j1 DESTDIR="${D}" install || die "make install failed"
+
+ insinto /etc
+ doins ldap.conf
+
+ dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
+ CVSVersionInfo.txt README nsswitch.ldap certutil
+ docinto docs; dodoc doc/*
+}
+
+pkg_postinst() {
+ elog "If you use a ldaps:// string in the 'uri' setting of"
+ elog "your /etc/ldap.conf, you must set 'ssl on'!"
+}
diff --git a/sys-auth/nss_ldap/nss_ldap-264-r1.ebuild b/sys-auth/nss_ldap/nss_ldap-264-r1.ebuild
new file mode 100644
index 000000000000..673937695e22
--- /dev/null
+++ b/sys-auth/nss_ldap/nss_ldap-264-r1.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=2
+inherit fixheadtails eutils multilib autotools
+
+IUSE="debug ssl sasl kerberos"
+
+DESCRIPTION="NSS LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="alpha amd64 hppa ia64 ~mips ppc ppc64 sparc x86"
+
+DEPEND=">=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )
+ kerberos? ( virtual/krb5 )
+ ssl? ( dev-libs/openssl )"
+RDEPEND="${DEPEND}
+ !<net-fs/autofs-4.1.3"
+
+src_prepare() {
+ epatch "${FILESDIR}"/nsswitch.ldap.diff
+
+ # Applied by upstream
+ #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
+
+ epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-252-reconnect-timeouts.patch
+
+ # Applied by upstream
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
+
+ sed -i.orig \
+ -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
+ "${S}"/ldap.conf || die "failed to clean up initial version marker"
+
+ # fix head/tail stuff
+ ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
+
+ # fix build borkage
+ for i in Makefile.{in,am}; do
+ sed -i.orig \
+ -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
+ "${S}"/$i
+ done
+
+ epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
+
+ # Bug #214750, no automagic deps
+ epatch "${FILESDIR}"/${PN}-264-disable-automagic.patch
+
+ # Upstream forgets the version number sometimes
+ #sed -i \
+ # -e "/^AM_INIT_AUTOMAKE/s~2..~$PV~" \
+ # "${S}"/configure.in
+
+ # Include an SONAME
+ epatch "${FILESDIR}"/${PN}-254-soname.patch
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=""
+ use debug && myconf="${myconf} --enable-debugging"
+ use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi"
+ # --enable-schema-mapping \
+ econf \
+ --with-ldap-lib=openldap \
+ --libdir=/$(get_libdir) \
+ --enable-paged-results \
+ --enable-rfc2307bis \
+ $(use_enable ssl) \
+ $(use_enable sasl) \
+ $(use_enable kerberos krb) \
+ ${myconf} || die "configure failed"
+}
+
+src_install() {
+ dodir /$(get_libdir)
+
+ emake -j1 DESTDIR="${D}" install || die "make install failed"
+
+ insinto /etc
+ doins ldap.conf
+
+ dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
+ CVSVersionInfo.txt README nsswitch.ldap certutil
+ docinto docs; dodoc doc/*
+}
+
+pkg_postinst() {
+ elog "If you use a ldaps:// string in the 'uri' setting of"
+ elog "your /etc/ldap.conf, you must set 'ssl on'!"
+}
diff --git a/sys-auth/nss_ldap/nss_ldap-264.ebuild b/sys-auth/nss_ldap/nss_ldap-264.ebuild
new file mode 100644
index 000000000000..6f18e950d284
--- /dev/null
+++ b/sys-auth/nss_ldap/nss_ldap-264.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=2
+inherit fixheadtails eutils multilib autotools
+
+IUSE="debug ssl sasl kerberos"
+
+DESCRIPTION="NSS LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+
+DEPEND=">=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )
+ kerberos? ( virtual/krb5 )
+ ssl? ( dev-libs/openssl )"
+RDEPEND="${DEPEND}
+ !<net-fs/autofs-4.1.3"
+
+src_prepare() {
+ epatch "${FILESDIR}"/nsswitch.ldap.diff
+
+ # Applied by upstream
+ #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
+
+ epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-252-reconnect-timeouts.patch
+
+ # Applied by upstream
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
+
+ sed -i.orig \
+ -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
+ "${S}"/ldap.conf || die "failed to clean up initial version marker"
+
+ # fix head/tail stuff
+ ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
+
+ # fix build borkage
+ for i in Makefile.{in,am}; do
+ sed -i.orig \
+ -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
+ "${S}"/$i
+ done
+
+ epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
+
+ # Bug #214750, no automagic deps
+ epatch "${FILESDIR}"/${PN}-264-disable-automagic.patch
+
+ # Upstream forgets the version number sometimes
+ #sed -i \
+ # -e "/^AM_INIT_AUTOMAKE/s~2..~$PV~" \
+ # "${S}"/configure.in
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=""
+ use debug && myconf="${myconf} --enable-debugging"
+ use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi"
+ # --enable-schema-mapping \
+ econf \
+ --with-ldap-lib=openldap \
+ --libdir=/$(get_libdir) \
+ --enable-paged-results \
+ --enable-rfc2307bis \
+ $(use_enable ssl) \
+ $(use_enable sasl) \
+ $(use_enable kerberos krb) \
+ ${myconf} || die "configure failed"
+}
+
+src_install() {
+ dodir /$(get_libdir)
+
+ emake -j1 DESTDIR="${D}" install || die "make install failed"
+
+ insinto /etc
+ doins ldap.conf
+
+ dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
+ CVSVersionInfo.txt README nsswitch.ldap certutil
+ docinto docs; dodoc doc/*
+}
+
+pkg_postinst() {
+ elog "If you use a ldaps:// string in the 'uri' setting of"
+ elog "your /etc/ldap.conf, you must set 'ssl on'!"
+}
diff --git a/sys-auth/nss_ldap/nss_ldap-265-r1.ebuild b/sys-auth/nss_ldap/nss_ldap-265-r1.ebuild
new file mode 100644
index 000000000000..dd2baf6e1bff
--- /dev/null
+++ b/sys-auth/nss_ldap/nss_ldap-265-r1.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=2
+inherit fixheadtails eutils multilib autotools
+
+IUSE="debug ssl sasl kerberos"
+
+DESCRIPTION="NSS LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="alpha amd64 ~arm hppa ia64 ~mips ppc ppc64 sparc x86"
+
+DEPEND=">=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )
+ kerberos? ( virtual/krb5 )
+ ssl? ( dev-libs/openssl )"
+RDEPEND="${DEPEND}
+ !<net-fs/autofs-4.1.3"
+
+src_prepare() {
+ epatch "${FILESDIR}"/nsswitch.ldap.diff
+
+ # Applied by upstream
+ #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
+
+ epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-265-reconnect-timeouts.patch
+
+ # Applied by upstream
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
+
+ sed -i.orig \
+ -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
+ "${S}"/ldap.conf || die "failed to clean up initial version marker"
+
+ # fix head/tail stuff
+ ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
+
+ # fix build borkage
+ for i in Makefile.{in,am}; do
+ sed -i.orig \
+ -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
+ "${S}"/$i
+ done
+
+ epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
+
+ # Bug #214750, no automagic deps
+ epatch "${FILESDIR}"/${PN}-264-disable-automagic.patch
+
+ # Upstream forgets the version number sometimes
+ #sed -i \
+ # -e "/^AM_INIT_AUTOMAKE/s~2..~$PV~" \
+ # "${S}"/configure.in
+
+ # Include an SONAME
+ epatch "${FILESDIR}"/${PN}-254-soname.patch
+
+ sed -i \
+ -e 's, vers_string , ./vers_string ,g' \
+ "${S}"/Makefile.am
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=""
+ use debug && myconf="${myconf} --enable-debugging"
+ use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi"
+ # --enable-schema-mapping \
+ econf \
+ --with-ldap-lib=openldap \
+ --libdir=/$(get_libdir) \
+ --enable-paged-results \
+ --enable-rfc2307bis \
+ $(use_enable ssl) \
+ $(use_enable sasl) \
+ $(use_enable kerberos krb) \
+ ${myconf} || die "configure failed"
+}
+
+src_install() {
+ dodir /$(get_libdir)
+
+ emake -j1 DESTDIR="${D}" install || die "make install failed"
+
+ insinto /etc
+ doins ldap.conf
+
+ # Append two blank lines and some skip entries
+ echo >>"${D}"/etc/ldap.conf
+ echo >>"${D}"/etc/ldap.conf
+ sed -i "${D}"/etc/ldap.conf \
+ -e '$inss_initgroups_ignoreusers ldap,openldap,mysql,syslog,root,postgres' \
+ || die "failed to sed /etc/ldap.conf"
+
+ dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
+ CVSVersionInfo.txt README nsswitch.ldap certutil
+ docinto docs; dodoc doc/*
+
+}
+
+pkg_postinst() {
+ elog "If you use a ldaps:// string in the 'uri' setting of"
+ elog "your /etc/ldap.conf, you must set 'ssl on'!"
+}
diff --git a/sys-auth/nss_ldap/nss_ldap-265-r2.ebuild b/sys-auth/nss_ldap/nss_ldap-265-r2.ebuild
new file mode 100644
index 000000000000..a44456c8aac5
--- /dev/null
+++ b/sys-auth/nss_ldap/nss_ldap-265-r2.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit fixheadtails eutils multilib autotools prefix
+
+IUSE="debug ssl sasl kerberos"
+
+DESCRIPTION="NSS LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="alpha amd64 ~arm hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux"
+
+DEPEND=">=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )
+ kerberos? ( virtual/krb5 )
+ ssl? ( dev-libs/openssl:0 )"
+RDEPEND="${DEPEND}
+ !<net-fs/autofs-4.1.3"
+
+src_prepare() {
+ if use prefix; then
+ epatch "${FILESDIR}"/${P}-installdir.patch
+ eprefixify Makefile.am
+ fi
+
+ # bug 438692
+ epatch "${FILESDIR}"/${P}-pthread.patch
+
+ epatch "${FILESDIR}"/nsswitch.ldap.diff
+
+ # Applied by upstream
+ #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
+
+ epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-265-reconnect-timeouts.patch
+
+ # Applied by upstream
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
+
+ sed -i.orig \
+ -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
+ "${S}"/ldap.conf
+
+ # fix head/tail stuff
+ ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
+
+ # fix build borkage
+ for i in Makefile.{in,am}; do
+ sed -i.orig \
+ -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
+ "${S}"/$i
+ done
+
+ epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
+
+ # Bug #214750, no automagic deps
+ epatch "${FILESDIR}"/${PN}-264-disable-automagic.patch
+
+ # Upstream forgets the version number sometimes
+ #sed -i \
+ # -e "/^AM_INIT_AUTOMAKE/s~2..~$PV~" \
+ # "${S}"/configure.in
+
+ # Include an SONAME
+ epatch "${FILESDIR}"/${PN}-254-soname.patch
+
+ sed -i \
+ -e 's, vers_string , ./vers_string ,g' \
+ "${S}"/Makefile.am
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=""
+ use debug && myconf="${myconf} --enable-debugging"
+ use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi"
+ # --enable-schema-mapping \
+ econf \
+ --with-ldap-lib=openldap \
+ --libdir="${EPREFIX}/$(get_libdir)" \
+ --with-ldap-conf-file="${EPREFIX}/etc/ldap.conf" \
+ --enable-paged-results \
+ --enable-rfc2307bis \
+ $(use_enable ssl) \
+ $(use_enable sasl) \
+ $(use_enable kerberos krb) \
+ ${myconf}
+}
+
+src_install() {
+ dodir /$(get_libdir)
+
+ emake -j1 DESTDIR="${D}" install \
+ INST_UID=${PORTAGE_USER:-root} INST_GID=${PORTAGE_GROUP:-root}
+
+ insinto /etc
+ doins ldap.conf
+
+ # Append two blank lines and some skip entries
+ echo >>"${ED}"/etc/ldap.conf
+ echo >>"${ED}"/etc/ldap.conf
+ sed -i "${ED}"/etc/ldap.conf \
+ -e '$inss_initgroups_ignoreusers ldap,openldap,mysql,syslog,root,postgres'
+
+ dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
+ CVSVersionInfo.txt README nsswitch.ldap certutil
+ docinto docs; dodoc doc/*
+}
+
+pkg_postinst() {
+ elog "If you use a ldaps:// string in the 'uri' setting of"
+ elog "your /etc/ldap.conf, you must set 'ssl on'!"
+}
diff --git a/sys-auth/nss_ldap/nss_ldap-265-r4.ebuild b/sys-auth/nss_ldap/nss_ldap-265-r4.ebuild
new file mode 100644
index 000000000000..598a8cb53f3e
--- /dev/null
+++ b/sys-auth/nss_ldap/nss_ldap-265-r4.ebuild
@@ -0,0 +1,140 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit fixheadtails eutils multilib autotools prefix
+
+IUSE="debug ssl sasl kerberos"
+
+DESCRIPTION="NSS LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux"
+
+DEPEND=">=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )
+ kerberos? ( virtual/krb5 )
+ ssl? ( dev-libs/openssl:0 )"
+RDEPEND="${DEPEND}
+ !<net-fs/autofs-4.1.3"
+
+src_prepare() {
+ if use prefix; then
+ epatch "${FILESDIR}"/${P}-installdir.patch
+ eprefixify Makefile.am
+ fi
+
+ # bug 438692
+ epatch "${FILESDIR}"/${P}-pthread.patch
+
+ epatch "${FILESDIR}"/nsswitch.ldap.diff
+
+ # Applied by upstream
+ #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
+
+ epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-265-reconnect-timeouts.patch
+
+ # Applied by upstream
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
+
+ sed -i.orig \
+ -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
+ "${S}"/ldap.conf
+
+ # fix head/tail stuff
+ ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
+
+ # fix build borkage
+ for i in Makefile.{in,am}; do
+ sed -i.orig \
+ -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
+ "${S}"/$i
+ done
+
+ epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
+
+ # Bug #214750, no automagic deps
+ epatch "${FILESDIR}"/${PN}-264-disable-automagic.patch
+
+ # Upstream forgets the version number sometimes
+ #sed -i \
+ # -e "/^AM_INIT_AUTOMAKE/s~2..~$PV~" \
+ # "${S}"/configure.in
+
+ # Include an SONAME
+ epatch "${FILESDIR}"/${PN}-254-soname.patch
+
+ #fix broken oneshot connections
+ epatch "${FILESDIR}/nss_ldap-265-missing-entries-oneshot.patch"
+
+ sed -i \
+ -e 's, vers_string , ./vers_string ,g' \
+ "${S}"/Makefile.am
+
+ if use kernel_FreeBSD; then
+ #fix broken fbsd support
+ EPATCH_OPTS="-p0 -d ${S}" epatch "${FILESDIR}/nss_ldap-265-fbsd.patch"
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=""
+ use debug && myconf="${myconf} --enable-debugging"
+ use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi"
+ # --enable-schema-mapping \
+ econf \
+ --with-ldap-lib=openldap \
+ --libdir="${EPREFIX}/$(get_libdir)" \
+ --with-ldap-conf-file="${EPREFIX}/etc/ldap.conf" \
+ --enable-paged-results \
+ --enable-rfc2307bis \
+ $(use_enable ssl) \
+ $(use_enable sasl) \
+ $(use_enable kerberos krb) \
+ ${myconf}
+
+ if use kernel_FreeBSD; then
+ # configure.in does not properly handle include dependencies
+ echo "#define HAVE_NETINET_IF_ETHER_H 1" >> ${S}/config.h
+ echo "#define HAVE_NET_ROUTE_H 1" >> ${S}/config.h
+ echo "#define HAVE_RESOLV_H 1" >> ${S}/config.h
+ fi
+}
+
+src_install() {
+ dodir /$(get_libdir)
+
+ if use kernel_FreeBSD; then
+ emake -j1 DESTDIR="${D}" install || die "make install failed"
+ else
+ emake -j1 DESTDIR="${D}" install \
+ INST_UID=${PORTAGE_USER:-root} INST_GID=${PORTAGE_GROUP:-root}
+ fi
+
+ insinto /etc
+ doins ldap.conf
+
+ # Append two blank lines and some skip entries
+ echo >>"${ED}"/etc/ldap.conf
+ echo >>"${ED}"/etc/ldap.conf
+ sed -i "${ED}"/etc/ldap.conf \
+ -e '$inss_initgroups_ignoreusers ldap,openldap,mysql,syslog,root,postgres'
+
+ dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
+ CVSVersionInfo.txt README nsswitch.ldap certutil
+ docinto docs; dodoc doc/*
+}
+
+pkg_postinst() {
+ elog "If you use a ldaps:// string in the 'uri' setting of"
+ elog "your /etc/ldap.conf, you must set 'ssl on'!"
+}
diff --git a/sys-auth/nss_ldap/nss_ldap-265-r5.ebuild b/sys-auth/nss_ldap/nss_ldap-265-r5.ebuild
new file mode 100644
index 000000000000..57382a2b44f0
--- /dev/null
+++ b/sys-auth/nss_ldap/nss_ldap-265-r5.ebuild
@@ -0,0 +1,148 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit fixheadtails eutils multilib multilib-minimal autotools prefix
+
+IUSE="debug ssl sasl kerberos"
+
+DESCRIPTION="NSS LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux"
+
+DEPEND=">=net-nds/openldap-2.4.38-r1[${MULTILIB_USEDEP}]
+ sasl? ( >=dev-libs/cyrus-sasl-2.1.26-r3[${MULTILIB_USEDEP}] )
+ kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
+ ssl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] )"
+RDEPEND="${DEPEND}
+ !<net-fs/autofs-4.1.3
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508-r7
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )"
+
+src_prepare() {
+ if use prefix; then
+ epatch "${FILESDIR}"/${P}-installdir.patch
+ eprefixify Makefile.am
+ fi
+
+ # bug 438692
+ epatch "${FILESDIR}"/${P}-pthread.patch
+
+ epatch "${FILESDIR}"/nsswitch.ldap.diff
+
+ # Applied by upstream
+ #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
+
+ epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-265-reconnect-timeouts.patch
+
+ # Applied by upstream
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
+
+ sed -i.orig \
+ -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
+ "${S}"/ldap.conf
+
+ # fix head/tail stuff
+ ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
+
+ # fix build borkage
+ for i in Makefile.{in,am}; do
+ sed -i.orig \
+ -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
+ "${S}"/$i
+ done
+
+ epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
+
+ # Bug #214750, no automagic deps
+ epatch "${FILESDIR}"/${PN}-264-disable-automagic.patch
+
+ # Upstream forgets the version number sometimes
+ #sed -i \
+ # -e "/^AM_INIT_AUTOMAKE/s~2..~$PV~" \
+ # "${S}"/configure.in
+
+ # Include an SONAME
+ epatch "${FILESDIR}"/${PN}-254-soname.patch
+
+ #fix broken oneshot connections
+ epatch "${FILESDIR}/nss_ldap-265-missing-entries-oneshot.patch"
+
+ sed -i \
+ -e 's, vers_string , PERL5LIB="@top_srcdir@" @top_srcdir@/vers_string ,g' \
+ "${S}"/Makefile.am
+
+ if use kernel_FreeBSD; then
+ #fix broken fbsd support
+ EPATCH_OPTS="-p0 -d ${S}" epatch "${FILESDIR}/nss_ldap-265-fbsd.patch"
+ fi
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ local myconf=()
+ use debug && myconf+=( --enable-debugging )
+ use kerberos && myconf+=( --enable-configurable-krb5-ccname-gssapi )
+ multilib_is_native_abi && myconf+=( --libdir="${EPREFIX}/$(get_libdir)" )
+ # --enable-schema-mapping \
+ ECONF_SOURCE=${S} \
+ econf \
+ --with-ldap-lib=openldap \
+ --with-ldap-conf-file="${EPREFIX}/etc/ldap.conf" \
+ --enable-paged-results \
+ --enable-rfc2307bis \
+ $(use_enable ssl) \
+ $(use_enable sasl) \
+ $(use_enable kerberos krb) \
+ "${myconf[@]}"
+
+ if use kernel_FreeBSD; then
+ # configure.in does not properly handle include dependencies
+ echo "#define HAVE_NETINET_IF_ETHER_H 1" >> ${S}/config.h
+ echo "#define HAVE_NET_ROUTE_H 1" >> ${S}/config.h
+ echo "#define HAVE_RESOLV_H 1" >> ${S}/config.h
+ fi
+}
+
+multilib_src_install() {
+ if use kernel_FreeBSD; then
+ emake -j1 DESTDIR="${D}" install
+ else
+ emake -j1 DESTDIR="${D}" install \
+ INST_UID=${PORTAGE_USER:-root} INST_GID=${PORTAGE_GROUP:-root}
+ fi
+}
+
+multilib_src_install_all() {
+ # dumb /usr/lib* -> /lib* symlinks gone wrong
+ rm -rf "${ED}"/usr/usr
+
+ insinto /etc
+ doins ldap.conf
+
+ # Append two blank lines and some skip entries
+ echo >>"${ED}"/etc/ldap.conf
+ echo >>"${ED}"/etc/ldap.conf
+ sed -i "${ED}"/etc/ldap.conf \
+ -e '$inss_initgroups_ignoreusers ldap,openldap,mysql,syslog,root,postgres'
+
+ dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
+ CVSVersionInfo.txt README nsswitch.ldap certutil
+ docinto docs; dodoc doc/*
+}
+
+pkg_postinst() {
+ elog "If you use a ldaps:// string in the 'uri' setting of"
+ elog "your /etc/ldap.conf, you must set 'ssl on'!"
+}
diff --git a/sys-auth/nss_ldap/nss_ldap-265.ebuild b/sys-auth/nss_ldap/nss_ldap-265.ebuild
new file mode 100644
index 000000000000..5321586830a4
--- /dev/null
+++ b/sys-auth/nss_ldap/nss_ldap-265.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=2
+inherit fixheadtails eutils multilib autotools
+
+IUSE="debug ssl sasl kerberos"
+
+DESCRIPTION="NSS LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/nss_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+
+DEPEND=">=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )
+ kerberos? ( virtual/krb5 )
+ ssl? ( dev-libs/openssl )"
+RDEPEND="${DEPEND}
+ !<net-fs/autofs-4.1.3"
+
+src_prepare() {
+ epatch "${FILESDIR}"/nsswitch.ldap.diff
+
+ # Applied by upstream
+ #epatch "${FILESDIR}"/${PN}-239-tls-security-bug.patch
+
+ epatch "${FILESDIR}"/${PN}-249-sasl-compile.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-265-reconnect-timeouts.patch
+
+ # Applied by upstream
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-254-nss_getgrent_skipmembers.patch
+
+ EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-257-nss_max_group_depth.patch
+
+ sed -i.orig \
+ -e '/^ @(#)\$Id: ldap.conf,v/s,^,#,' \
+ "${S}"/ldap.conf || die "failed to clean up initial version marker"
+
+ # fix head/tail stuff
+ ht_fix_file "${S}"/Makefile.am "${S}"/Makefile.in "${S}"/depcomp
+
+ # fix build borkage
+ for i in Makefile.{in,am}; do
+ sed -i.orig \
+ -e '/^install-exec-local: nss_ldap.so/s,nss_ldap.so,,g' \
+ "${S}"/$i
+ done
+
+ epatch "${FILESDIR}"/${PN}-257.2-gssapi-headers.patch
+
+ # Bug #214750, no automagic deps
+ epatch "${FILESDIR}"/${PN}-264-disable-automagic.patch
+
+ # Upstream forgets the version number sometimes
+ #sed -i \
+ # -e "/^AM_INIT_AUTOMAKE/s~2..~$PV~" \
+ # "${S}"/configure.in
+
+ # Include an SONAME
+ epatch "${FILESDIR}"/${PN}-254-soname.patch
+
+ sed -i \
+ -e 's, vers_string , ./vers_string ,g' \
+ "${S}"/Makefile.am
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=""
+ use debug && myconf="${myconf} --enable-debugging"
+ use kerberos && myconf="${myconf} --enable-configurable-krb5-ccname-gssapi"
+ # --enable-schema-mapping \
+ econf \
+ --with-ldap-lib=openldap \
+ --libdir=/$(get_libdir) \
+ --enable-paged-results \
+ --enable-rfc2307bis \
+ $(use_enable ssl) \
+ $(use_enable sasl) \
+ $(use_enable kerberos krb) \
+ ${myconf} || die "configure failed"
+}
+
+src_install() {
+ dodir /$(get_libdir)
+
+ emake -j1 DESTDIR="${D}" install || die "make install failed"
+
+ insinto /etc
+ doins ldap.conf
+
+ dodoc ldap.conf ANNOUNCE NEWS ChangeLog AUTHORS \
+ CVSVersionInfo.txt README nsswitch.ldap certutil
+ docinto docs; dodoc doc/*
+}
+
+pkg_postinst() {
+ elog "If you use a ldaps:// string in the 'uri' setting of"
+ elog "your /etc/ldap.conf, you must set 'ssl on'!"
+}
diff --git a/sys-auth/oath-toolkit/Manifest b/sys-auth/oath-toolkit/Manifest
new file mode 100644
index 000000000000..1b0e52d630d3
--- /dev/null
+++ b/sys-auth/oath-toolkit/Manifest
@@ -0,0 +1,7 @@
+DIST oath-toolkit-2.6.1.tar.gz 4238966 SHA256 9c57831907bc26eadcdf90ba1827d0bd962dd1f737362e817a1dd6d6ec036f79 SHA512 59feadbc06d11a52bf5879493227c40358fc1f4f17ec3ff92e3a313e47b92f3154396fa3ff38ef163852b32c8bfcef1f59753b614d0138478b8f7e7971f55e62 WHIRLPOOL 4c32514c265f430272d255eb6557f3b3d434c1700d4f6a5c3607808ba761d182dde679f9248b486f9e3c45d402d902bf4863b630d3415529303b2013aabe0223
+DIST oath-toolkit-2.6.2.tar.gz 4295786 SHA256 b03446fa4b549af5ebe4d35d7aba51163442d255660558cd861ebce536824aa0 SHA512 201a702a05a2e9fb3a66d04750e1a34e293342126caf02c344954a0d9fd0daafe73ca7f1fe273be129ae555a29b82b72fa2b4770ea2ad10711924e1926ec2cfb WHIRLPOOL 7321ba452070a92d60453ca3b1cb2d9c8ffff86b9fcbe48dcf8e8f00485fed809274fd2c4f6eee7cdd86d83f6f512682c3642ffe991c996140a0121c6314faf4
+EBUILD oath-toolkit-2.6.1.ebuild 1490 SHA256 ff18092652af5a6c638679a2b623e83530c0865f27f681982a0ac744f2fa98b5 SHA512 4b3b5235368e8aed99223353bd7b46e9cfbbc0290edc7b888c0127af572ef02f56b23777259484197d2b7906a2fbf33e7920385927bdb2d0c8c9986d1defe467 WHIRLPOOL 35e295db0912d0591e4c22fd0cf237bf1a6c7fe94e3f39cd0de6b5ca7ebcdcff78138c4804b5a598966936304c1acdcc5140e1624007ea7f47d9c87ec2aed3dd
+EBUILD oath-toolkit-2.6.2.ebuild 1490 SHA256 4709571be63a9fd1d54de85638bc91afcec8276ba62cfd657cf99ecb60736841 SHA512 29172b74350371a173bb137509e41c005b2d84ed5e72b7f2821ea3bdb160c04305662c5b16e06ab31cc99af9eed6fd0ab20f77715f6505d69158f983af641e9d WHIRLPOOL 07d2f5424bbd28a58c492ce5c90e2376390fe159f466721f08c5f44def4f1fb29a74276f1e430c93da04804e3ddcc9e9bce54e790e9471adeb2d8168ef03f67b
+MISC ChangeLog 3630 SHA256 813b652a848043c3619057511017204e9e64a2aa609ef28d95164ee5d44f9d10 SHA512 683e1ec1adc9e84ab346259423ddf756bdc140446f3c4ffefeefb967860378b2452a126c2521e3416e99a8ef57169daec7b7fb8b967ab6aae174970788a4e8b7 WHIRLPOOL 50cb477e0644b3d162d295f7c07602906081d904609946a6a7b7fec4bab139ba8acdede44342479aec0362a3e2cd7c25f30116982ebcc157aba4eef454b92094
+MISC ChangeLog-2015 507 SHA256 5011e55c3fb466daf166953a2e62dcc4979ea4cf149d650ff6e6a878eceb2b45 SHA512 02acd301664ede3d1c570edd05d58b9f9715dfe6580a16ff0b3209051f5a699c27f434aa41a4ad4d689a6aa9f07d1b34ad466c37f3939232ba2074ad9b6ca95e WHIRLPOOL 2cd23fa2052d0b29f1a1c2a570148c992517ae5932d84652d0530b2dbd0c6107abbad3c84abb49f32e6a2c3a8263308ff28c7a46ca22741bca40066f3d25c0f8
+MISC metadata.xml 560 SHA256 2b00cfab61e094f8a27eb6c072d102b6688659aef06e343a94a1ccdeb0b84aed SHA512 4d6506e02bb4a6f6069dfe357cc3e05c897699a067771baa995af823d4de587d2580b01bf1c2a38cb8f8f679ba0702498ad904b6bb1d685a2759c2b7752be7f2 WHIRLPOOL 8cc8e88e9d8a3809cd984d5a022a7633dc21dcf164960506bf492f7b238ad0317180218f90f7e75b0a054fe890415e2c94ea6f3c824e905a90738fcde37f64d8
diff --git a/sys-auth/oath-toolkit/metadata.xml b/sys-auth/oath-toolkit/metadata.xml
new file mode 100644
index 000000000000..f8eb021f6cc2
--- /dev/null
+++ b/sys-auth/oath-toolkit/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ </maintainer>
+ <maintainer type="project">
+ <email>sysadmin@gentoo.org</email>
+ <name>Gentoo Sysadmin Project</name>
+ </maintainer>
+ <use>
+ <flag name="pskc">Build tools &amp; library for the Portable Symmetric Key Container (PSKC) format per RFC6030</flag>
+ <flag name="pam">Build PAM module for pluggable login authentication for OATH</flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-auth/oath-toolkit/oath-toolkit-2.6.1.ebuild b/sys-auth/oath-toolkit/oath-toolkit-2.6.1.ebuild
new file mode 100644
index 000000000000..aaf6fa4b924f
--- /dev/null
+++ b/sys-auth/oath-toolkit/oath-toolkit-2.6.1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+EAPI=5
+
+inherit pam eutils autotools
+DESCRIPTION="Toolkit for using one-time password authentication with HOTP/TOTP algorithms"
+HOMEPAGE="http://www.nongnu.org/oath-toolkit/ http://gitorious.org/oath-toolkit/"
+SRC_URI="http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz"
+LICENSE="GPL-3 LGPL-2.1"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="pam pskc test"
+
+RDEPEND="
+ pam? ( virtual/pam )
+ pskc? ( dev-libs/xmlsec )"
+DEPEND="${RDEPEND}
+ test? ( dev-libs/libxml2 )
+ dev-util/gtk-doc-am"
+
+src_prepare() {
+ # These tests need git/cvs and don't reflect anything in the final app
+ sed -i -r \
+ -e '/TESTS/s,test-vc-list-files-(git|cvs).sh,,g' \
+ gl/tests/Makefile.am
+ # disable portability warnings, caused by gtk-doc.make
+ sed -i \
+ -e '/AM_INIT_AUTOMAKE/ s:-Wall:\0 -Wno-portability:' \
+ {liboath,libpskc}/configure.ac
+ eautoreconf
+ default
+}
+
+src_configure() {
+ econf \
+ $(use_enable test xmltest ) \
+ $(use_enable pam) \
+ $(use_with pam pam-dir $(getpam_mod_dir)) \
+ $(use_enable pskc)
+}
+
+src_install() {
+ default
+ if use pam; then
+ newdoc pam_oath/README README.pam
+ fi
+ if use pskc; then
+ doman pskctool/pskctool.1
+ fi
+}
+
+src_test() {
+ # without keep-going, it will bail out after the first testsuite failure,
+ # skipping the other testsuites. as they are mostly independant, this sucks.
+ emake --keep-going check
+ [ $? -ne 0 ] && die "At least one testsuite failed"
+}
diff --git a/sys-auth/oath-toolkit/oath-toolkit-2.6.2.ebuild b/sys-auth/oath-toolkit/oath-toolkit-2.6.2.ebuild
new file mode 100644
index 000000000000..1b88006a6db9
--- /dev/null
+++ b/sys-auth/oath-toolkit/oath-toolkit-2.6.2.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+EAPI=6
+
+inherit pam eutils autotools
+DESCRIPTION="Toolkit for using one-time password authentication with HOTP/TOTP algorithms"
+HOMEPAGE="http://www.nongnu.org/oath-toolkit/ http://gitorious.org/oath-toolkit/"
+SRC_URI="http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz"
+LICENSE="GPL-3 LGPL-2.1"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="pam pskc test"
+
+RDEPEND="
+ pam? ( virtual/pam )
+ pskc? ( dev-libs/xmlsec )"
+DEPEND="${RDEPEND}
+ test? ( dev-libs/libxml2 )
+ dev-util/gtk-doc-am"
+
+src_prepare() {
+ # These tests need git/cvs and don't reflect anything in the final app
+ sed -i -r \
+ -e '/TESTS/s,test-vc-list-files-(git|cvs).sh,,g' \
+ gl/tests/Makefile.am
+ # disable portability warnings, caused by gtk-doc.make
+ sed -i \
+ -e '/AM_INIT_AUTOMAKE/ s:-Wall:\0 -Wno-portability:' \
+ {liboath,libpskc}/configure.ac
+ eautoreconf
+ default
+}
+
+src_configure() {
+ econf \
+ $(use_enable test xmltest ) \
+ $(use_enable pam) \
+ $(use_with pam pam-dir $(getpam_mod_dir)) \
+ $(use_enable pskc)
+}
+
+src_install() {
+ default
+ if use pam; then
+ newdoc pam_oath/README README.pam
+ fi
+ if use pskc; then
+ doman pskctool/pskctool.1
+ fi
+}
+
+src_test() {
+ # without keep-going, it will bail out after the first testsuite failure,
+ # skipping the other testsuites. as they are mostly independant, this sucks.
+ emake --keep-going check
+ [ $? -ne 0 ] && die "At least one testsuite failed"
+}
diff --git a/sys-auth/openpam/Manifest b/sys-auth/openpam/Manifest
new file mode 100644
index 000000000000..b5e74a4b58d1
--- /dev/null
+++ b/sys-auth/openpam/Manifest
@@ -0,0 +1,8 @@
+AUX openpam-20130907-gentoo.patch 5832 SHA256 7c7becc8ae5a8c3d37a5cb6ba420bb850c48b92de6b23721be5e951dc5293aef SHA512 f4e8baefaa2113f6e864eebf6e9c596b229a06ea4038c4cf6f9ba96fd8347df7a7cbff691d54da0710b35440a766f0f2d411ccf19f66201508c227f6a4238cef WHIRLPOOL 514445abe383e9d5ee04da4613b222e6a6d61f986948e2d7175cb65c12b9ec26e11a27fcf34349ceabc70f25c72f716135d002e77d053b2068cb9dacea1ab204
+AUX openpam-20130907-module-dir.patch 507 SHA256 32349f486dfd908deeea8f1178aeb45a483954032078d51fd852ce9eae1a3a9c SHA512 724af899dddc1932e841aba2f0fe94c18a1d944e5da35d0ff01438ebecb59888db0dbe66f3882aaca2b56661fd7a07afa5438c009baa704fc9e4534854e5c7bb WHIRLPOOL 3cf3829cae17a671277ac836a95a76800c20f6429e76acc7fac8aa3c39887e4cdb9190de7e4e8c7fa2374a6f7fcb6dff7ed1853716d7cf63659e23916c383de7
+AUX openpam-20130907-nbsd.patch 463 SHA256 5b60353ba75668fccc42801662a851304d6536311203bfe475b4c1446a74c775 SHA512 8b9f8729830d47b47972ed3c7cbfca0c9bd5b87a245e0fb3e37594a247c89780f481ec3480285a829c1f86a90d591dc9778f6b2e2a57f718a5ec85d74a21af08 WHIRLPOOL c199c5c27ddca2998c741545ea3ffbaeaaafa7026606713f386d0294d31541539e29e97c480be0bebeb9a5f68926020056cd76446a56cea36a6dd42d4aa48f88
+DIST openpam-20140912.tar.gz 457600 SHA256 82bc29397fa68ce49742618e0affdaa9abd4341d9ffbe607f9b10cdf1242bc87 SHA512 c6cfbd669fe1b67af43a33c33bf2587e1512c27f1b96b9b38df37b81ecc4999d85e04b361b19a7265dbf271ebd3de3bd55342ee4fdbee9c68836b69714706423 WHIRLPOOL 35e066f131be15c9427ebf21c062e9274d4745f47ede2df2082135dc5eb4b568067be28f71d373d2bd5e4f93fbc6ec29ef7f0baa8a7cbc399ab679192ebd2e44
+EBUILD openpam-20140912.ebuild 1025 SHA256 7f932f1f4354e1a5d5dfd2da16181c55d65818fd26ea34190554319a720aedf6 SHA512 f9507243bc2a24234250a5cd4f059ff40c433e682453f94ab3a56adc098638bafea3072787e1a976970ceb6d200e5cb01ca2105afa71c1d826f419122c5ed76f WHIRLPOOL ae3d240e85240adb1454b57d828d2ac926e51403a4a71bf71ae9eeae279cdf8e3430bca46968574e51bd9e2396e9707586ea5d714dc54bc20b15b62430e031b0
+MISC ChangeLog 2553 SHA256 eb3c19bddbf5b63b157f51e6400cd54ec49f81d7e2905dee9c9fdcbb3568e4fe SHA512 7c7d77f2f660d899ec423d56ea4cf4f16df800a2f639f3dda64c8823b742f0dc14fcace9d69aafdb3171793015f87aca29bb671c1e71540dabfbf781c6817e7f WHIRLPOOL 16fdac2bc9fbf73e326ebbed3bc460747141ab976719c13783af369e457951cc18013b3b003bfbcc510f0e3c25b534f4f2c28efbfe92a5555a738a0e1d8a4760
+MISC ChangeLog-2015 5498 SHA256 52bdd3e1b94c2bfa0b2632e1da4428a4dfa6fb84d2e5f57c95dc1b37224a4747 SHA512 40a863e4983c2a06ed0ca04c071c626341811697b4968a317dc0cd15e754b68d08fb5c8aa171f9f138a4472f63ee31863ce8eb251060d585813b65848066375f WHIRLPOOL 2e74e85d7134b563ccd5a37eb2cbba00d53625357910114dc7255ac889127c7fbaedc62eda4ea1355cb80de97e9a635e9419743afda0bf7c34c2187a6f3a6a31
+MISC metadata.xml 319 SHA256 9b8bb4a9cc5bf6647668d92f15140ff006b8df3c579f374b2b71c037624569ee SHA512 e15befc8be39bc70ef094473b9e5fb9d2a504abf27b4217431c0ec707665b62e6a582876abaf280aa074e9f71637e792e9ce7e31d09d9d540502900e6a518975 WHIRLPOOL 92eb074aa46a677f1bec4f731451bd74ae452112ad9e0f6d1d323cd622c1480f772f481def16f76c376db0d223798932051f537060c756388d3e74b9b0534721
diff --git a/sys-auth/openpam/files/openpam-20130907-gentoo.patch b/sys-auth/openpam/files/openpam-20130907-gentoo.patch
new file mode 100644
index 000000000000..89a63f26460d
--- /dev/null
+++ b/sys-auth/openpam/files/openpam-20130907-gentoo.patch
@@ -0,0 +1,149 @@
+diff -Nur openpam-20130907.orig/include/security/Makefile.am openpam-20130907/include/security/Makefile.am
+--- openpam-20130907.orig/include/security/Makefile.am 2013-09-07 22:28:00.000000000 +0900
++++ openpam-20130907/include/security/Makefile.am 2013-11-26 23:24:54.000000000 +0900
+@@ -9,4 +9,5 @@
+ pam_appl.h \
+ pam_constants.h \
+ pam_modules.h \
+- pam_types.h
++ pam_types.h \
++ pam_mod_misc.h
+diff -Nur openpam-20130907.orig/include/security/pam_mod_misc.h openpam-20130907/include/security/pam_mod_misc.h
+--- openpam-20130907.orig/include/security/pam_mod_misc.h 1970-01-01 09:00:00.000000000 +0900
++++ openpam-20130907/include/security/pam_mod_misc.h 2013-11-26 23:24:54.000000000 +0900
+@@ -0,0 +1,56 @@
++/*-
++ * Copyright 1998 Juniper Networks, Inc.
++ * 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.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
++ *
++ * $FreeBSD: src/lib/libpam/libpam/security/pam_mod_misc.h,v 1.12 2003/05/31 16:56:35 des Exp $
++ */
++
++#ifndef PAM_MOD_MISC_H
++#define PAM_MOD_MISC_H
++
++#include <sys/cdefs.h>
++
++/*
++ * Common option names
++ */
++#define PAM_OPT_NULLOK "nullok"
++#define PAM_OPT_AUTH_AS_SELF "auth_as_self"
++#define PAM_OPT_ECHO_PASS "echo_pass"
++#define PAM_OPT_DEBUG "debug"
++
++__BEGIN_DECLS
++void _pam_verbose_error(pam_handle_t *, int, const char *,
++ const char *, const char *, ...);
++__END_DECLS
++
++#define PAM_LOG(...) \
++ openpam_log(PAM_LOG_DEBUG, __VA_ARGS__)
++
++#define PAM_RETURN(arg) \
++ return (arg)
++
++#define PAM_VERBOSE_ERROR(...) \
++ _pam_verbose_error(pamh, flags, __FILE__, __FUNCTION__, __VA_ARGS__)
++
++#endif
+diff -Nur openpam-20130907.orig/lib/libpam/Makefile.am openpam-20130907/lib/libpam/Makefile.am
+--- openpam-20130907.orig/lib/libpam/Makefile.am 2013-09-07 22:28:00.000000000 +0900
++++ openpam-20130907/lib/libpam/Makefile.am 2013-11-26 23:25:33.000000000 +0900
+@@ -75,6 +75,7 @@
+ pam_verror.c \
+ pam_vinfo.c \
+ pam_vprompt.c \
++ pam_debug_log.c \
+ $(NULL)
+
+ libpam_la_LDFLAGS = -no-undefined -version-info @LIB_MAJ@
+diff -Nur openpam-20130907.orig/lib/libpam/pam_debug_log.c openpam-20130907/lib/libpam/pam_debug_log.c
+--- openpam-20130907.orig/lib/libpam/pam_debug_log.c 1970-01-01 09:00:00.000000000 +0900
++++ openpam-20130907/lib/libpam/pam_debug_log.c 2013-11-26 23:24:54.000000000 +0900
+@@ -0,0 +1,64 @@
++/*-
++ * Copyright 2001 Mark R V Murray
++ * 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.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
++ */
++
++#include <sys/cdefs.h>
++
++#ifndef __GLIBC__
++#include <libgen.h>
++#endif
++
++#include <stdarg.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++
++#include <security/pam_appl.h>
++#include <security/openpam.h>
++#include <security/pam_mod_misc.h>
++
++/* Print a verbose error, including the function name and a
++ * cleaned up filename.
++ */
++void
++_pam_verbose_error(pam_handle_t *pamh, int flags,
++ const char *file, const char *function, const char *format, ...)
++{
++ va_list ap;
++ char *fmtbuf, *modname, *period;
++
++ if (!(flags & PAM_SILENT) && !openpam_get_option(pamh, "no_warn")) {
++ modname = basename(file);
++ period = strchr(modname, '.');
++ if (period == NULL)
++ period = strchr(modname, '\0');
++ va_start(ap, format);
++ asprintf(&fmtbuf, "%.*s: %s: %s\n", (int)(period - modname),
++ modname, function, format);
++ pam_verror(pamh, fmtbuf, ap);
++ free(fmtbuf);
++ va_end(ap);
++ }
++}
diff --git a/sys-auth/openpam/files/openpam-20130907-module-dir.patch b/sys-auth/openpam/files/openpam-20130907-module-dir.patch
new file mode 100644
index 000000000000..01afadbbfb8d
--- /dev/null
+++ b/sys-auth/openpam/files/openpam-20130907-module-dir.patch
@@ -0,0 +1,15 @@
+diff --git a/openpam-20130907/lib/libpam/openpam_constants.c b/openpam-20130907/lib/libpam/openpam_constants.c
+index 1cdd810..f66e469 100644
+--- a/openpam-20130907/lib/libpam/openpam_constants.c
++++ b/openpam-20130907/lib/libpam/openpam_constants.c
+@@ -135,8 +135,8 @@ const char *openpam_policy_path[] = {
+ };
+
+ const char *openpam_module_path[] = {
+-#ifdef OPENPAM_MODULES_DIRECTORY
+- OPENPAM_MODULES_DIRECTORY,
++#ifdef OPENPAM_MODULES_DIR
++ OPENPAM_MODULES_DIR,
+ #else
+ "/usr/lib",
+ "/usr/local/lib",
diff --git a/sys-auth/openpam/files/openpam-20130907-nbsd.patch b/sys-auth/openpam/files/openpam-20130907-nbsd.patch
new file mode 100644
index 000000000000..9e76c9f30541
--- /dev/null
+++ b/sys-auth/openpam/files/openpam-20130907-nbsd.patch
@@ -0,0 +1,12 @@
+--- openpam-20050201.orig/lib/libpam/pam_debug_log.c 2006-02-18 01:15:39.000000000 -0200
++++ openpam-20050201/lib/libpam/pam_debug_log.c 2006-02-18 01:16:30.000000000 -0200
+@@ -47,7 +47,8 @@
+ const char *file, const char *function, const char *format, ...)
+ {
+ va_list ap;
+- char *fmtbuf, *modname, *period;
++ char *fmtbuf;
++ const char *modname, *period;
+
+ if (!(flags & PAM_SILENT) && !openpam_get_option(pamh, "no_warn")) {
+ modname = basename(file);
diff --git a/sys-auth/openpam/metadata.xml b/sys-auth/openpam/metadata.xml
new file mode 100644
index 000000000000..65025b8c5db2
--- /dev/null
+++ b/sys-auth/openpam/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>bsd@gentoo.org</email>
+ <name>BSD Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">openpam</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/openpam/openpam-20140912.ebuild b/sys-auth/openpam/openpam-20140912.ebuild
new file mode 100644
index 000000000000..3b84fcbd84aa
--- /dev/null
+++ b/sys-auth/openpam/openpam-20140912.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+AUTOTOOLS_AUTORECONF=1
+AUTOTOOLS_PRUNE_LIBTOOL_FILES=all
+
+inherit multilib autotools-multilib
+
+DESCRIPTION="Open source PAM library"
+HOMEPAGE="http://www.openpam.org/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="debug vim-syntax"
+
+RDEPEND="!sys-libs/pam"
+DEPEND="sys-devel/make
+ dev-lang/perl"
+PDEPEND="sys-auth/pambase
+ vim-syntax? ( app-vim/pam-syntax )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-20130907-gentoo.patch"
+ "${FILESDIR}/${PN}-20130907-nbsd.patch"
+ "${FILESDIR}/${PN}-20130907-module-dir.patch"
+ )
+
+DOCS=( CREDITS HISTORY RELNOTES README )
+
+src_prepare() {
+ sed -i -e 's:-Werror::' "${S}/configure.ac"
+
+ autotools-multilib_src_prepare
+}
+
+my_configure() {
+ local myeconfargs=(
+ --with-modules-dir=/$(get_libdir)/security
+ )
+ autotools-utils_src_configure
+}
+
+src_configure() {
+ multilib_parallel_foreach_abi my_configure
+}
diff --git a/sys-auth/otpcalc/Manifest b/sys-auth/otpcalc/Manifest
new file mode 100644
index 000000000000..b1a709c0e2a2
--- /dev/null
+++ b/sys-auth/otpcalc/Manifest
@@ -0,0 +1,7 @@
+AUX otpcalc.desktop 179 SHA256 2df9cf2f5c01c1ca4d67f066bf102cb795fb905d5111d69304afdb7077659f27 SHA512 dea60262e01c9e01a8f1abf45ddd0fb0cfa64ad1865a6693d923041e027f851fbc0f96be34392178e541c361a3c4f448091e744a87915ba04785f27f8c290d38 WHIRLPOOL 6fd3abdad0ca7950a976d34e1e47ac66dfaa50a70b8e78c3479f16cc1ab77ec42f4c9f6a8368bc6930888d59d0fed0596564e73317023d3294702c982e07d078
+DIST otpCalc-0.97.tar.gz 123704 SHA256 e2c19fa6178ed42f0576650db6f94942cac366feadf82c2a679b35197c65f745 SHA512 5d22bd01fe90b32801d6f1c5ac3105036c14ac8197dda3c8454974ec72830a5f8cd693bd0520a51defdb0a7c7703483770410ba560436168826f8b6133a2524f WHIRLPOOL f73c745e336e9196003869c76cbf30a69dd94fde2549a2cd3391de531b36e36504e4d5c779159f254c425f69381be3bae05f0cdd13a1a920d593f82db0052459
+DIST otpcalc-0.97-patches-1.tar.xz 4384 SHA256 596dc03c86ed1552f3527c0649a54a98727b237c79f094d69756b2dd25165706 SHA512 950b2df68acf377750710b0b9578b431b4aa745414a494b87062fffa559485cc4117bb08e68f22a79781047cfd2682082e30b1db81cddc5a3448bc285c5553bf WHIRLPOOL d6e6d541c5e1c30ea7aa160b86c05bfba1265f314141040cc345824184beb67ac6d4d9530e3b4175f09113712dc6a34bbb15a41caecb427a980c71e20e04da11
+EBUILD otpcalc-0.97-r8.ebuild 1074 SHA256 4fc533f373fae0334ea7785a62ca0100624f90535a577509bfe07fec77866107 SHA512 4ac5b89aca1be7c7cd2ee79af7ca44682e413722eddc2ed496ce3c1674dd2e2b55470b6d906cc45fe8bd188af5f9e23688baaa91f368bb3ea5b2541f455ffed3 WHIRLPOOL 56f1acd02193150dca2f63f48ed5705286158f43fa3b41e2ba571211de517cc6e084762f72043428b3059edb4db0e085cdbca678472951339a4502eaffe97215
+MISC ChangeLog 4310 SHA256 fe5b52268e810adb0414a435d8f5e49e3ffb464f11cc3191055d9df0371285df SHA512 c1a15514138fdfc8a9ac827b77bc1957e433e96469f7858f8247201ca7ac223972222278b905228bacdea6602d2c94c04ba12c2bcb57d817a231d3eb0558da5e WHIRLPOOL f9ac0226b8127adaa9f3fd14af9a76df7ac56ec4ce09e0f847428286ea39cf81746842071e48de1d187462f341734c786ba31c7f87406b6ede0ac525356b36bb
+MISC ChangeLog-2015 7547 SHA256 b42f36ba9eeade794a7470540aba0e2fb5e66c74534f68d7b460aa699a15c7a1 SHA512 0ea2cefe7b816807969e3fc3ed4eb56c19edc68ab7e635544cfe56d41afb6a778b57570bf9e69bfce0ede7396936fbf076f223c755bbc89434192774041bfae7 WHIRLPOOL dae380ff3111362381a9caa29c0ecac82f101b34212c920d40fcef83783a2425ac7f480d2c3dde152bf1f541efdeb846d5d42db3dbd7ef370e6142626993ba4b
+MISC metadata.xml 385 SHA256 39b8bd368dad071ec9c4488661e0433278e34fb9de8f823f7e42d947323acc4e SHA512 162a8cc6627c2a569d9f06b2073d23b5eb291da87c6117763d41e6b835409cdaed2f7b1035999581c0ab70814c8310feb3f7a11c736ffb6b9bc92c584f79d5ce WHIRLPOOL 3821b2a38ef5a4edf4d07def0051d956a6ba760058f9ec500f3cde924bd389cdd1598439f17003ff90a7cf5824cfd35a5eda2fb8639c3fa8ac46f6be73be1f05
diff --git a/sys-auth/otpcalc/files/otpcalc.desktop b/sys-auth/otpcalc/files/otpcalc.desktop
new file mode 100644
index 000000000000..25c84065238f
--- /dev/null
+++ b/sys-auth/otpcalc/files/otpcalc.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Version=1.0
+Name=otpCalc
+Comment=One Time Password and S/Key calculator
+Icon=dialog-password
+Exec=otpCalc
+Categories=Utility;GTK;System;Security;
diff --git a/sys-auth/otpcalc/metadata.xml b/sys-auth/otpcalc/metadata.xml
new file mode 100644
index 000000000000..1135f79fb638
--- /dev/null
+++ b/sys-auth/otpcalc/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ulm@gentoo.org</email>
+</maintainer>
+<longdescription lang="en">
+ otpCalc is an RFC2289 and RFC1760 compliant one time password calculator,
+ written to use the GTK+ library for screen I/O.
+</longdescription>
+</pkgmetadata>
diff --git a/sys-auth/otpcalc/otpcalc-0.97-r8.ebuild b/sys-auth/otpcalc/otpcalc-0.97-r8.ebuild
new file mode 100644
index 000000000000..5886ab3efd03
--- /dev/null
+++ b/sys-auth/otpcalc/otpcalc-0.97-r8.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs
+
+DESCRIPTION="A One Time Password and S/Key calculator for X"
+HOMEPAGE="http://killa.net/infosec/otpCalc/"
+SRC_URI="http://killa.net/infosec/otpCalc/otpCalc-${PV}.tar.gz
+ https://dev.gentoo.org/~ulm/distfiles/${P}-patches-1.tar.xz"
+
+LICENSE="GPL-2+" # bundled crypto functions are not used
+SLOT="0"
+KEYWORDS="alpha amd64 ppc sparc x86"
+
+RDEPEND="x11-libs/gtk+:2
+ dev-libs/openssl:0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S="${WORKDIR}/otpCalc-${PV}"
+
+src_prepare() {
+ eapply ../patch
+ eapply_user
+
+ # override hardcoded FLAGS
+ sed -i \
+ -e 's:$(CC) $(CFLAGS) $^:$(CC) $(LDFLAGS) $(CFLAGS) $^:' \
+ -e "s#-s -O3#${CFLAGS}#g" \
+ Makefile.in || die
+
+ tc-export CC
+}
+
+src_compile() {
+ emake otpCalc otpCalc.1
+}
+
+src_install() {
+ dobin otpCalc
+ dosym otpCalc /usr/bin/otpcalc
+ doman otpCalc.1
+ newman - otpcalc.1 <<< ".so man1/otpCalc.1"
+ insinto /usr/share/applications
+ doins "${FILESDIR}/${PN}.desktop"
+ dodoc BUGS ChangeLog TODO
+}
diff --git a/sys-auth/pam-afs-session/Manifest b/sys-auth/pam-afs-session/Manifest
new file mode 100644
index 000000000000..ae2737f90a53
--- /dev/null
+++ b/sys-auth/pam-afs-session/Manifest
@@ -0,0 +1,9 @@
+DIST pam-afs-session-1.3.tar.gz 98643 SHA256 f8cfaf01d0f3025ab6d51c55cf26746a4ddd63dd9156577981ee4cbb453856a9 SHA512 a9019551a9ac35db4a5b7a430b01aac63561828ddef2c63fa751696aa57aa52d2769f8008b214222b9f2933be69134d7bb6750460bfa23c3b7df098886a575ea WHIRLPOOL c979c85002ff5e3d5ab485aba462014a3ca9fd4d7c7c6832766e5f45ef069c602df4aaf38ead8a01622c16d657088f9044ca69fd61eafafae79c8a6d9fcc2469
+DIST pam-afs-session-1.5.tar.gz 101464 SHA256 473b8b1904f0ed1c3748667b037f92aff765f9c8f60e650d81452c6394e26768 SHA512 a0f449a1dd3365158fbaee1ac9719dcf0358c01234e0aad29b3738020a0fc0a3ec7328afbbd5d661db47e357c5a57f36200c03bfe7684c159b3099384313059e WHIRLPOOL e7eba5d45e4c697a1eeef30f56c7448d52cfba0c1298b683a93f09b54cef5a7a80178b1ef488864625c05d0e0bb0951028728dacff0f12b6e8642a2df24f0d92
+DIST pam-afs-session-1.6.tar.gz 115666 SHA256 c6ecfc69dc8e901f881f0a931797b44a10f47c8c35206e9289336d9435a9f2f8 SHA512 ac7bc1af43de5d08e6893b7411a0004e20a871f572a86c0322b883a45eb566717b8db77c3ad4825daeb89ab04039c6412cde6342056d544cb2189093ea95381f WHIRLPOOL a426a7e83bbc8fe60643f1faa3845318a14d4cd36ab93e104472231415a0a1c2f97b9f00111ee3c3850b7058d5a1650b60473464cfb541ee593dcd49563a89d1
+EBUILD pam-afs-session-1.3.ebuild 604 SHA256 2154f329579e32e416f1ddd743e590ee27ec0e10dd15b6dc9b1b02270defb884 SHA512 32e48a2afbb356851609d3896d148075969ed59e016204be477e1b8e6628df0eff80faed81f7d0b681d366508b086af297924b2c949f34f8c85137676d18a2b6 WHIRLPOOL 1d079e34a1ffd4b3e93777d506dac38987d009649259249b90f5bb5d7025f721ad650436884dd086ab13bf42a284c5646fb2c45bf2ec96fb56cf489658371f3a
+EBUILD pam-afs-session-1.5.ebuild 604 SHA256 2154f329579e32e416f1ddd743e590ee27ec0e10dd15b6dc9b1b02270defb884 SHA512 32e48a2afbb356851609d3896d148075969ed59e016204be477e1b8e6628df0eff80faed81f7d0b681d366508b086af297924b2c949f34f8c85137676d18a2b6 WHIRLPOOL 1d079e34a1ffd4b3e93777d506dac38987d009649259249b90f5bb5d7025f721ad650436884dd086ab13bf42a284c5646fb2c45bf2ec96fb56cf489658371f3a
+EBUILD pam-afs-session-1.6.ebuild 604 SHA256 2154f329579e32e416f1ddd743e590ee27ec0e10dd15b6dc9b1b02270defb884 SHA512 32e48a2afbb356851609d3896d148075969ed59e016204be477e1b8e6628df0eff80faed81f7d0b681d366508b086af297924b2c949f34f8c85137676d18a2b6 WHIRLPOOL 1d079e34a1ffd4b3e93777d506dac38987d009649259249b90f5bb5d7025f721ad650436884dd086ab13bf42a284c5646fb2c45bf2ec96fb56cf489658371f3a
+MISC ChangeLog 2577 SHA256 f301b3dda0ecb253699541772e945177534d6e085f2c74ce274c2139d890766b SHA512 ac56a1a1d6ec60080bfc3918138e3314828c0344b040db0c03532770c0c76aee689d4adebcbe9dd5a8275797ead40c1ed1a8630f4e609ec9a8456c7fc4dd8c60 WHIRLPOOL f6e0c9a8b3d542de60691acfce5542a4f6106b253afa8da1daf89f1eda9940ded423affcdcae00208373f7c913fc242f48e01f01ba60719a33de08d3d05bed43
+MISC ChangeLog-2015 1388 SHA256 5bb1b5c25ebbf620b61cd9a6fdf589484ffd3541fa0d9cd353b92d5f27cabedb SHA512 7d3399492472d2a0d58c5bf6b12c92bdb0b62bd41cc05b39175e42465adc02c42d3e955a6a33504eea3a5977131b6b99ca71cba793347cbabb4fc1f1a790deb8 WHIRLPOOL 489b30ab49c0313000b0c25047fcfa89e50d8dc74bac43b319643ca012c37ee75f12c342f6b74ca6796f5f2697105421eb1e048606682796485e605f2128418a
+MISC metadata.xml 275 SHA256 4f4248333cd50dd110c0fbf1a64f901dd79875e1a5cd6f3676206a17d17a5df1 SHA512 60739783eb2e3db955f0b42911054c33b61fbbf83695771256993be65355b8baff9c1ac8c3bfb5a007e5f5c28508108b4486a394dfa5bd76333397bc80ea1a23 WHIRLPOOL dc92d8ba6d718b74fb41f471e471193a626059e307b2546ca2ba614a2407ae7a1606ae50fe6bfe0a84bdd0838210e762fd61563bee785ef6488d5841cadcab65
diff --git a/sys-auth/pam-afs-session/metadata.xml b/sys-auth/pam-afs-session/metadata.xml
new file mode 100644
index 000000000000..e9ec3bb7c5aa
--- /dev/null
+++ b/sys-auth/pam-afs-session/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ <name>Pluggable Authentication Method maintenance</name>
+</maintainer>
+</pkgmetadata>
diff --git a/sys-auth/pam-afs-session/pam-afs-session-1.3.ebuild b/sys-auth/pam-afs-session/pam-afs-session-1.3.ebuild
new file mode 100644
index 000000000000..ded538c7222b
--- /dev/null
+++ b/sys-auth/pam-afs-session/pam-afs-session-1.3.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit pam
+
+DESCRIPTION="OpenAFS PAM Module"
+HOMEPAGE="http://www.eyrie.org/~eagle/software/pam-afs-session/"
+SRC_URI="http://archives.eyrie.org/software/afs/${P}.tar.gz"
+
+LICENSE="HPND openafs-krb5-a"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/krb5 virtual/pam"
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ econf --with-kerberos || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ dopammod pam_afs_session.so
+ doman pam_afs_session.5
+ dodoc CHANGES NEWS README TODO
+}
diff --git a/sys-auth/pam-afs-session/pam-afs-session-1.5.ebuild b/sys-auth/pam-afs-session/pam-afs-session-1.5.ebuild
new file mode 100644
index 000000000000..ded538c7222b
--- /dev/null
+++ b/sys-auth/pam-afs-session/pam-afs-session-1.5.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit pam
+
+DESCRIPTION="OpenAFS PAM Module"
+HOMEPAGE="http://www.eyrie.org/~eagle/software/pam-afs-session/"
+SRC_URI="http://archives.eyrie.org/software/afs/${P}.tar.gz"
+
+LICENSE="HPND openafs-krb5-a"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/krb5 virtual/pam"
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ econf --with-kerberos || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ dopammod pam_afs_session.so
+ doman pam_afs_session.5
+ dodoc CHANGES NEWS README TODO
+}
diff --git a/sys-auth/pam-afs-session/pam-afs-session-1.6.ebuild b/sys-auth/pam-afs-session/pam-afs-session-1.6.ebuild
new file mode 100644
index 000000000000..ded538c7222b
--- /dev/null
+++ b/sys-auth/pam-afs-session/pam-afs-session-1.6.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit pam
+
+DESCRIPTION="OpenAFS PAM Module"
+HOMEPAGE="http://www.eyrie.org/~eagle/software/pam-afs-session/"
+SRC_URI="http://archives.eyrie.org/software/afs/${P}.tar.gz"
+
+LICENSE="HPND openafs-krb5-a"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/krb5 virtual/pam"
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ econf --with-kerberos || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ dopammod pam_afs_session.so
+ doman pam_afs_session.5
+ dodoc CHANGES NEWS README TODO
+}
diff --git a/sys-auth/pam-csync/Manifest b/sys-auth/pam-csync/Manifest
new file mode 100644
index 000000000000..c68292f3ce99
--- /dev/null
+++ b/sys-auth/pam-csync/Manifest
@@ -0,0 +1,7 @@
+AUX pam-csync-0.42.0-cmake.patch 675 SHA256 4515bb78b43346a15ef6a69e3689c544d35b72a1f74fd44e02cd1221644e70a0 SHA512 108a06df80a41dcfa8a44e6d2fee83a57f235091117c22efdb8d255dec332268976d88828f439ee3f887c3d573bfe418b1edf08f2a114eac54c39a1ef504243f WHIRLPOOL 771af726af22b93cd7bfd37c1a689039b20cd5cbc59f5be95c8133fa61d3a9004d68080932018bd38c4514c2f8ae96fed3319074f6ee406b0cc8bbb04a435b16
+AUX pam-csync-0.42.0-ocsync.patch 691 SHA256 4740eb3c8e83f6e5d4913de3032ab2644e0fb75becc6326555c81532effcf924 SHA512 6728f09d9f6d11df4d7bd20cdb7735b01286cdd9962850d158c7583085b095d9531e31387afc8b74e4182daf1f20bdac3a8490be0608ad5d9d421b96d4c9ee29 WHIRLPOOL 17c522198ed0e764fb065c759b8737bbacf40b16cca714eba0b869414b1fc4a4650289598e452a43d7f5ca49566f10b605c5e5d0cced61826d83cad323f2fa6e
+DIST pam_csync-0.42.0.tar.gz 30457 SHA256 bba01854ee5929ecc90428275a50f804d361e92f2805f1d2eff7d3f2bca48802 SHA512 ef6d0fbadf6afdf5a5adad1905e976330506fdf60835aa4190959b855fbc2c4c61bd709fe2aaaab731ec5430c999b3fd5e23f3a81c35a7b266b23cd092d24e06 WHIRLPOOL b81a0a9ad1e0188856cc6ffc265c44cc67a3603fb550bc59c4aa8a63198a9898d389238a7582c439add1528eaba6bf2aa930d65dd3429c901d9e6b3ecb2328ac
+EBUILD pam-csync-0.42.0-r1.ebuild 582 SHA256 c7fd4cb3722e323a5f1465bc85606cb811225298e967d70ded188c6e9d7a2b26 SHA512 871996b0a3fdd4ad392d16d3a94d294450b28c29049e0d2492763e399b1aa49ab03f43ab75492a74eb09baa100f1ee818c4090e23b2957b98d97e0bd7031d223 WHIRLPOOL f09a870e72d7a97b1b62f7ba95191e1dd09e4731b6117a1ca72d4aa7ba6cb2253783db8e629b8b7f00cefd5ab5010fd2e4b1fc858fc81da2f3b77c1a7c398450
+MISC ChangeLog 2820 SHA256 a2e44c4d447de1b5c15fc5e188260b61d99ef06d00afef8f2a9c9fcd7b63f78f SHA512 11cb463c778ab3d04377625888504161ef782ba1f27d3038b7b7bdd340cad4a71dcc36aeba3d9d0c4d950272c081275cfd813e91560be9aba2b0052232720d8f WHIRLPOOL 56578f84938bf93dc98396d31fec806d21e0f4bd3a006af72d697e84230f70b141e7a531697863b2c8f5416869df7c2aba13ce537a97661c5194668e5299048e
+MISC ChangeLog-2015 1361 SHA256 1e4b7328b988dd9187aa109db8c93897f75cb0af990ded713d82dbb6e81d15a3 SHA512 a56a336d2dbcda310749f08ca8335ccc27d76ce4e219b4231425db004b476dece6cbb5b6e821422ffe1b7674bdd83f17cce0b845bdb6933e3767c3969ce00a92 WHIRLPOOL a1829bd1e37c847f45bf60a432a03ac4887d3f9e6514cff72b4f86e3c1e673e8d2c12c42f6865d97820e9124c9a025ad7b8dfc11eb4fc32789e0303208f4eb49
+MISC metadata.xml 166 SHA256 2caff447f5bd2701d8456ada5cc633c41ef4373fa4bfeabeb73599d40bcc941b SHA512 a56648c974a1d14dd4c18237532773c72057a13ab90c58b5da04f185e3c12a8bd8d5c21fb06053507f31766291a82dc7d87b34cd65fd94cfe2af7295c813ef84 WHIRLPOOL 1ff70497eca6531f0e0614c72a19f4b8e5ff486a58d369f4f0b36308d1d6b01168f9da887740e3b9f536236be251d3fe05f904d27a9233a7cf613416ba882968
diff --git a/sys-auth/pam-csync/files/pam-csync-0.42.0-cmake.patch b/sys-auth/pam-csync/files/pam-csync-0.42.0-cmake.patch
new file mode 100644
index 000000000000..2b650d232e2a
--- /dev/null
+++ b/sys-auth/pam-csync/files/pam-csync-0.42.0-cmake.patch
@@ -0,0 +1,25 @@
+From 21dfcf6343cec2feb0e4ebd8b9e22a3aa39e5d9d Mon Sep 17 00:00:00 2001
+From: Jim McDonough <jmcd@samba.org>
+Date: Mon, 10 Mar 2014 10:16:28 -0400
+Subject: [PATCH 1/2] Remove backward compatibility option for newer cmake
+ builds to work.
+
+---
+ src/CMakeLists.txt | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 6732a3f..40225e4 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -41,7 +41,6 @@ include_directories(
+ ${PAM_CSYNC_PRIVATE_INCLUDE_DIRS}
+ )
+
+-set(CMAKE_BACKWARDS_COMPATIBILITY "2.2")
+ macro_add_plugin(${PAM_CSYNC_LIBRARY} ${pam_SRCS})
+
+ target_link_libraries(${PAM_CSYNC_LINK_LIBRARIES})
+--
+1.8.4.5
+
diff --git a/sys-auth/pam-csync/files/pam-csync-0.42.0-ocsync.patch b/sys-auth/pam-csync/files/pam-csync-0.42.0-ocsync.patch
new file mode 100644
index 000000000000..d0c5ff99955a
--- /dev/null
+++ b/sys-auth/pam-csync/files/pam-csync-0.42.0-ocsync.patch
@@ -0,0 +1,33 @@
+Since 0.60.0, upstream renamed to "ocsync".
+
+--- a/cmake/Modules/FindCSYNC.cmake
++++ b/cmake/Modules/FindCSYNC.cmake
+@@ -20,7 +20,7 @@
+ else (CSYNC_LIBRARIES AND CSYNC_INCLUDE_DIRS)
+ find_path(CSYNC_INCLUDE_DIR
+ NAMES
+- csync/csync.h
++ ocsync/csync.h
+ PATHS
+ /usr/include
+ /usr/local/include
+@@ -30,7 +30,7 @@
+
+ find_library(CSYNC_LIBRARY
+ NAMES
+- csync
++ ocsync
+ PATHS
+ /usr/lib
+ /usr/local/lib
+--- a/src/pam_csync.c
++++ b/src/pam_csync.c
+@@ -50,7 +50,7 @@
+ #include <security/pam_modutil.h>
+ #include <security/pam_ext.h>
+
+-#include <csync/csync.h>
++#include <ocsync/csync.h>
+
+ #include "pam_csync.h"
+ #include "config.h"
diff --git a/sys-auth/pam-csync/metadata.xml b/sys-auth/pam-csync/metadata.xml
new file mode 100644
index 000000000000..6f49eba8f496
--- /dev/null
+++ b/sys-auth/pam-csync/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<!-- maintainer-needed -->
+</pkgmetadata>
diff --git a/sys-auth/pam-csync/pam-csync-0.42.0-r1.ebuild b/sys-auth/pam-csync/pam-csync-0.42.0-r1.ebuild
new file mode 100644
index 000000000000..86a89b5596cc
--- /dev/null
+++ b/sys-auth/pam-csync/pam-csync-0.42.0-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="PAM module to provide roaming home directories for a user session"
+HOMEPAGE="http://www.csync.org/"
+SRC_URI="http://www.csync.org/files/${P/-/_}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ >=dev-libs/iniparser-3.1:0
+ >=net-misc/ocsync-0.60.0
+ virtual/pam
+"
+DEPEND="${DEPEND}
+ app-text/asciidoc
+"
+
+S="${WORKDIR}/${P/-/_}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-cmake.patch"
+ "${FILESDIR}/${P}-ocsync.patch"
+)
diff --git a/sys-auth/pam-pgsql/Manifest b/sys-auth/pam-pgsql/Manifest
new file mode 100644
index 000000000000..a1f8c90286de
--- /dev/null
+++ b/sys-auth/pam-pgsql/Manifest
@@ -0,0 +1,5 @@
+DIST pam-pgsql-0.7.3.2.tar.gz 712533 SHA256 c4f9c22ec3a37fb6d8b201cc7d48c743a68ceb91773e386caa2269b63b0679ca SHA512 d5766e56a13b0b4762fba10d624d12f130f2675f1f1772eaaf275b599f44adcf98287c2636462ba3faf46af139eb1bd157918c0c783040796562f37dec17a6d9 WHIRLPOOL 769d59de074b7dff56b44f046b5b4ab3d02a70c9a5b27227fba712847ab932dba6f73f68a119c82bd8d27b6e564be1411081cccd31c16e39a87410a39c44ad61
+EBUILD pam-pgsql-0.7.3.2.ebuild 1240 SHA256 47c6f9c76b782b19408b97c61368d9bcd564a3d287ed0d576fb6dfd975c8fc9b SHA512 5f5e2dde2e0f1e97bcdd4982f1e063562ea8b59beb920ceeb670066ab0e7596aac9d704e49a79167083837bb160ece9655905cbe60811fc9776e8ee01911e0be WHIRLPOOL 9efa7a23d00295d5d978ed85bc852140bd15006de38bfb8481f1610159c2558f647d945cb78a85c150c5f901cde96b717fd7fa48480ff6b3f9c02735c636c49d
+MISC ChangeLog 2988 SHA256 a7c8bf7677b804870c5fca3cb3dae1275c0a151e7f351652e452d4f8a3f2a9b3 SHA512 d8ae4e10044e5b580ecb539decd209f590ee8e026b366efcb066b8599d7915490cfeb5a163efbbccae4ab67ac8f19ff4c4d18ceae5207b6779f8e22735305547 WHIRLPOOL 596df5cc25c54c2188bef86313879645de3b41d2837d9a9f8ee1174c3ccb8669e39d5f9569cf8db7684721ec37c25826fafe2e171275cb0dffca4f81cb0b09b1
+MISC ChangeLog-2015 2224 SHA256 d64dca13ebe23526c5cf66b633823bbce84e9c80775095ae091bd9502504bea7 SHA512 c77ec3fbc68ded1a8c1f50a5eea715dc93b32e427aea63821991fc41d21f938b6a5c7dd73b0f875a3883bf795a0fe837cd0656816d62a09271798586a23621f1 WHIRLPOOL 782425fc1dc37607eb25e3d81a27fe325e71c69a7a95eae445967485a99bb98b8f9d47e07d7a586a867483b7c6f7f663e1c97aba04540b779c8763b083602a9f
+MISC metadata.xml 299 SHA256 79d4b977d139b4eba5c18727ac71ee25efded95427a6829b7f0d68ea25a884c9 SHA512 da1cdea9641e01bdecb1f5612ac6085836e0a981998f219254eb416ea0d7105933408ef0e1184142221b6d5c0754b05072a244bca1bef73ceeed912ad178d34a WHIRLPOOL 25c22fbe7e93aaea50867fe2ebab6c4e6d12fb06ab7c0ac8916d7aff89c90648abf86471ac940f6769398dbd2633efdd268b84510c4ebd5d0e5d4ec3a0ec1502
diff --git a/sys-auth/pam-pgsql/metadata.xml b/sys-auth/pam-pgsql/metadata.xml
new file mode 100644
index 000000000000..1e2946263ff4
--- /dev/null
+++ b/sys-auth/pam-pgsql/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">pam-pgsql</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam-pgsql/pam-pgsql-0.7.3.2.ebuild b/sys-auth/pam-pgsql/pam-pgsql-0.7.3.2.ebuild
new file mode 100644
index 000000000000..e740aec1fd3f
--- /dev/null
+++ b/sys-auth/pam-pgsql/pam-pgsql-0.7.3.2.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit eutils pam
+
+DESCRIPTION="pam module to authenticate users via PostgreSQL"
+HOMEPAGE="https://sourceforge.net/projects/pam-pgsql/"
+
+if [[ ${PV} == *_p* ]]; then
+ SRC_URI="http://www.flameeyes.eu/gentoo-distfiles/${P}.tar.gz"
+else
+ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+fi
+
+RDEPEND="virtual/pam
+ >=dev-db/postgresql-8.0:=
+ >=dev-libs/libgcrypt-1.2.0:0="
+DEPEND="${RDEPEND}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_configure() {
+ econf \
+ --sysconfdir=/etc/security \
+ --libdir=/$(get_libdir) \
+ --docdir=/usr/share/doc/${PF}
+}
+
+src_compile() {
+ emake pammoddir="$(getpam_mod_dir)" || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" pammoddir="$(getpam_mod_dir)" install
+ find "${ED}" -name '*.la' -delete
+}
+
+pkg_postinst() {
+ if [[ -z ${REPLACING_VERSIONS} ]] ; then
+ elog "Please see the documentation and configuration examples in the"
+ elog "documentation directory at /usr/share/doc/${PF}."
+ elog ""
+ elog "Please note that the default configuration file in Gentoo has been"
+ elog "moved to /etc/security/pam-pgsql.conf to follow the other PAM modules."
+ fi
+}
diff --git a/sys-auth/pam-script/Manifest b/sys-auth/pam-script/Manifest
new file mode 100644
index 000000000000..93f21a95e889
--- /dev/null
+++ b/sys-auth/pam-script/Manifest
@@ -0,0 +1,9 @@
+DIST pam-script-1.1.6.tar.gz 326758 SHA256 d7cb2fadf8db8fcd099a7a7151ec1b018e79f110af79955df0e0081ea3a93e1d SHA512 4c0f03e4ee3ad062c0a6c71982c283e944cd595d3af656f149ea89b583568373f72478130a614cd851f12a1440976abcd51c8932c5fd4753858d13d91888728a WHIRLPOOL 7bdc21db809f61243d3750a74f038cae3a61f2f5ee66c12a12159fa2094b6dc7f9ce9e3c095a0c4dd258dbda277d85e0c29f30047e1255cf35412a7ff0399c98
+DIST pam-script-1.1.7.tar.gz 328385 SHA256 ae38ed76e8e5aec47d6838212b92ce2ced4ba93adbdcfead69f956703a809ff3 SHA512 c0e1df7d3b91cb5be4166fd4680556d5ee4f74df0de299f3629c91081b89ab58390d7b5d0dde5acf3509b30a62553d08e4b2fdf154bce064937f45e2ec08db35 WHIRLPOOL 9c743a5de6695fae8433a1d26fddbb95e67276f382c106116b3fb9ddef80a7f283fafa13cce0f7212caac0fe6162f0f94eff2adb53834d154fe8127ca8df5220
+DIST pam-script-1.1.8.tar.gz 36442 SHA256 d6f85dba8856503a6d74cc95b15cf1f6e45ba2b8ff00675ba8dfe50b519b1251 SHA512 c4b99c69a759b6422189707c52439a6afe59e32fca6238acf00116ed104b625920fb36b3e1f0aaf5edc77325b1f7b10d52ac2530d85cec53d941ae906e077543 WHIRLPOOL 45506733e685f2dc35f164d615956b9c04110d7bcc397b8111f418974cf7268a19557123438622375521396103b3b96387988e8baa17062cd166eba816342b69
+EBUILD pam-script-1.1.6.ebuild 831 SHA256 0811b7406db5bf1e522af985c5b937ac9a882a94df21e4df8b4a34497031f5eb SHA512 77551001e87b118445af8d796014547263db2912eb4d565ef2c529bb43d9d552032adb418cbde4a4708948a52cb25068f0dc38c39a146c0d847a12d8f23d0470 WHIRLPOOL a05fd87513de638d325de8e36b192c5fa86a40b61e9c42fa6993f538ee2bd24f7d98ce783a633badbfce727fa107a026eb6d57e00dc67c083aab287a106e7bd2
+EBUILD pam-script-1.1.7.ebuild 843 SHA256 ffb8b02959ff94e31b22dbef91d006732d25ea94e2bb132a1bb453ac68c5d974 SHA512 745456ec3e5bfc14cc0576c28b40f227dca4dd98f81d5cd2fdcba807fa98e332a7057a7815d2f6b183a54f64ae4f81736a17b4645fe09a8b53d010dd7b668fa3 WHIRLPOOL 91efe3707c148f8f1f8177fa17747d9d5a81344c6b5698302dd64fb1f0cb9fd28048520fc6dd4fa8fec33177e3d4228d328d9909ee9b6ae98ab4b9867b1ab1c6
+EBUILD pam-script-1.1.8.ebuild 925 SHA256 515b2e20bfddfe1d518ad56bf4af94c016d79d668fbe3236138ee23b6c4b332c SHA512 2d7a346530367ad5f413748b456cd0788626569ecc47b60aae3e02299588b7feca01d0498ed25916d02f484540edb0809847bf49ec7b7985b2f5760d938f672e WHIRLPOOL 0f7d89385f0317ded1c4a7eae5a32d680a08aa0fcd4863233fb9746eaf4a73fbd6c306ba6f6804bfa726f42ae698e2511655d4680c7a69a04ffdb2dca618523f
+MISC ChangeLog 3091 SHA256 daf0a06b4b891d96a06d0f657599ab979d6b9d8018313a10985fee22efa301d2 SHA512 3214d425055a7a91212ca84288df181364ffff4eeed2f78638b8eb8c4aff48d59ba11e6a55330bd39b359764cbc092c85592a9b26c05a096d7b8adf947c4a40b WHIRLPOOL b26401ebee1856e0be0e06d79da045641f816ce7ecd363fed9f8ab294b935c6580b8f91e9aea2ae4656a132987bcb335329715f72e03b30c854a0ebfc1d286d2
+MISC ChangeLog-2015 883 SHA256 eb5736bd96fbb000c5338fac2b4fe6258d904d7235619f977cb67b2c4ff62c0d SHA512 ecbcf794007c10c6f4baa8b3e22203f79dcaa6cb1104c50539b6ade671c1b9d547105696cfe612b6a2769a4a4b93c476ff40c32d02092975073bb362b09c2ec1 WHIRLPOOL 70511551f092bb14bcbcaaa7840c5f2e0fa2712fe8a0ee70ac497be5a82ac4c22d0aed914f448bdd7203ab0aa4fa998117cd657f4b2df063e81ac5293540f90a
+MISC metadata.xml 392 SHA256 5962206359a8ee790ef934ef039c192af264ec8cd0a12fff34cf8f845d8762de SHA512 bf9673c615b2658b2bbed7b240a5c0aa28a3ce5db82f6d34e505bfc2a0aa25979a3278c2bda498adc456196f6243def7255b462677136ebdf3b1be7af0a9f8d9 WHIRLPOOL eb0ace4fc937a6929c07b1f0b1e0b9e3193934f2d91b72c9e8292bad99500588635b1c143403531da050e7229294c91229f8609842e54ee75e8c86e0a9d15dca
diff --git a/sys-auth/pam-script/metadata.xml b/sys-auth/pam-script/metadata.xml
new file mode 100644
index 000000000000..bd0b550589b6
--- /dev/null
+++ b/sys-auth/pam-script/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>chutzpah@gentoo.org</email>
+ <name>Patrick McLean</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jeroennijhof/pam_script</remote-id>
+ <remote-id type="sourceforge">pam-script</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam-script/pam-script-1.1.6.ebuild b/sys-auth/pam-script/pam-script-1.1.6.ebuild
new file mode 100644
index 000000000000..8e1ac0c3218a
--- /dev/null
+++ b/sys-auth/pam-script/pam-script-1.1.6.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit multilib
+
+DESCRIPTION="PAM module for executing scripts during authorization, password changes, and sessions"
+HOMEPAGE="https://sourceforge.net/projects/pam-script/ https://github.com/jeroennijhof/pam_script/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples"
+
+RDEPEND="virtual/pam"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ econf \
+ --libdir=/$(get_libdir)/security \
+ --sysconfdir=/etc/security/${PN}
+}
+
+src_install() {
+ default
+
+ if use examples ; then
+ docinto examples
+ dodoc etc/README.examples
+ exeinto /usr/share/doc/${PF}/examples
+ doexe etc/{logscript,tally}
+ docompress -x /usr/share/doc/${PF}/examples/{logscript,tally}
+ fi
+}
diff --git a/sys-auth/pam-script/pam-script-1.1.7.ebuild b/sys-auth/pam-script/pam-script-1.1.7.ebuild
new file mode 100644
index 000000000000..47ef1c3482ae
--- /dev/null
+++ b/sys-auth/pam-script/pam-script-1.1.7.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit multilib
+
+DESCRIPTION="PAM module for executing scripts during authorization, password changes, and sessions"
+HOMEPAGE="https://sourceforge.net/projects/pam-script/ https://github.com/jeroennijhof/pam_script/"
+SRC_URI="https://dev.gentoo.org/~radhermit/dist/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples"
+
+RDEPEND="virtual/pam"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ econf \
+ --libdir=/$(get_libdir)/security \
+ --sysconfdir=/etc/security/${PN}
+}
+
+src_install() {
+ default
+
+ if use examples ; then
+ docinto examples
+ dodoc etc/README.examples
+ exeinto /usr/share/doc/${PF}/examples
+ doexe etc/{logscript,tally}
+ docompress -x /usr/share/doc/${PF}/examples/{logscript,tally}
+ fi
+}
diff --git a/sys-auth/pam-script/pam-script-1.1.8.ebuild b/sys-auth/pam-script/pam-script-1.1.8.ebuild
new file mode 100644
index 000000000000..4329670c44a9
--- /dev/null
+++ b/sys-auth/pam-script/pam-script-1.1.8.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools
+
+MY_PN=${PN/-/_}
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="PAM module for executing scripts during authorization, password changes, and sessions"
+HOMEPAGE="https://github.com/jeroennijhof/pam_script/"
+SRC_URI="https://github.com/jeroennijhof/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples"
+
+RDEPEND="virtual/pam"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --libdir=/$(get_libdir)/security \
+ --sysconfdir=/etc/security/${PN}
+}
+
+src_install() {
+ default
+
+ if use examples ; then
+ docinto examples
+ dodoc etc/README.examples
+ exeinto /usr/share/doc/${PF}/examples
+ doexe etc/{logscript,tally}
+ docompress -x /usr/share/doc/${PF}/examples/{logscript,tally}
+ fi
+}
diff --git a/sys-auth/pam_abl/Manifest b/sys-auth/pam_abl/Manifest
new file mode 100644
index 000000000000..7709d4c568cb
--- /dev/null
+++ b/sys-auth/pam_abl/Manifest
@@ -0,0 +1,5 @@
+DIST pam-abl-0.6.0.tar.gz 48882 SHA256 dff9437af247fee19e8269919a3eed44c1e69874c1fa06325997c8d1eeb7eeb4 SHA512 fd4fca672800683f87eba4c9804925d0f1c0e5991a32af7d045787cf571d5d98996d2303460fada4796432916c713973c82c3a70da06d686194e97bfb0e8198e WHIRLPOOL 69363207a20a8c7ee935eb4f716ca61c019de8416d54cff0b41fac474dc6da089cc77d2b13c6e344f7296be0425fe804e63dbb61962018b9559f871fe9c36f38
+EBUILD pam_abl-0.6.0.ebuild 1151 SHA256 a9968bdc791c901321c88082107bfbddecdadb71089374fc6228db21d048a28e SHA512 4e1cbb331741d09829f26d320d760fa69bbed24c364a63e1abf1cc607ebd0c15d07a49021f6ab64ec6ce3fb7a7e1edaacbc819ad1e1beb6cfc6109e3b9935e23 WHIRLPOOL 5ea57f59587ccb7779691b8cff023d053e0fabc632339a4077edd8343f33e81c0abac44b778e5c9568b2ad39e5c872748bd0826a4afc8385ce877e8ac148e3a8
+MISC ChangeLog 2531 SHA256 b131afac28f5199fb7e516433660ed17ca13dae7c26883e2ccfb954ba7a54c83 SHA512 97dd16b983ac09cf36a92e613b542a132e4e08b420017ba065d1c652aa98f8250d54504cf60c411d7abef507bed3f886556de6e5698d2f0930503bb592593477 WHIRLPOOL b3d48932fe3a8a6373ec66c1204897e2a0d95f8a3d758a26184d4820bf9edaf0336077ed899413b431f511da3624ace0df5ad20e6ae12229324d85c3bf87c7d3
+MISC ChangeLog-2015 2997 SHA256 c82ceb9b25601320f43748e23cbf49a7e44d8c033683ee95e0314328662eb8f0 SHA512 756d1c309a62f16ba1a6c6e115127b89fa1feb0dc22a67f25d826ffc04bc57177b42f4c3542b6a8a52613cd51054acbfdb6e4b1007aad87d6ac315ffb8596cf6 WHIRLPOOL 252ba3e68086286e6bd426721d6f5f7060bbb8363b8b3394f985f575cf9620594ef9e2426d075f3afad4fe9f4df08f72e00a58a96f223f45fdf3bbdf7624adcc
+MISC metadata.xml 1172 SHA256 0b2bac117fbc89009981ba380631c3d47d015d1b1510678aea2033a212d57dd0 SHA512 957e04ee2218a1dddb6d0933171f0716804f269bf43766a0f6ffd9fbbf5ba866bbb5b0547f2a99c55572aacfedca7e846ad1a000a384a6f7b2331c6df3a62515 WHIRLPOOL 08b5c7e6d1bd0a9b63ae2c701483e8b412c74520400e72796b010c055be4bd7e4afc06ada245239b79638f1562962e48e40309221cb5d5ec8c4d677ee705c6ed
diff --git a/sys-auth/pam_abl/metadata.xml b/sys-auth/pam_abl/metadata.xml
new file mode 100644
index 000000000000..b508e81a1484
--- /dev/null
+++ b/sys-auth/pam_abl/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ <name>Pluggable Authentication Method maintenance</name>
+ </maintainer>
+ <longdescription lang="en">
+PAM module that provides auto blacklisting of hosts and users responsible for repeated failed authentication attempts.
+Once a host is blacklisted it is guaranteed to fail authentication even if the correct credentials are provided.
+Hosts which stop attempting to authenticate will, after a period of time, be un-blacklisted.
+</longdescription>
+ <longdescription lang="it">
+Modulo Pam che permette di mantenere automaticamente una blacklist di host ed utenti responsabili di ripetuti tentativi di autenticazione falliti.
+Gli host soggetti a blacklist vedranno fallire i tentativi di login anche qualora le corrette credenziali vengano fornite.
+Una volta cessati i tentativi di autenticazione, dopo un certo periodo di tempo, gli host verranno riabilitati.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">pam-abl</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_abl/pam_abl-0.6.0.ebuild b/sys-auth/pam_abl/pam_abl-0.6.0.ebuild
new file mode 100644
index 000000000000..450c5c2e55b7
--- /dev/null
+++ b/sys-auth/pam_abl/pam_abl-0.6.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+MY_PN="${PN/_/-}"
+MY_P="${MY_PN}-${PV}"
+
+inherit flag-o-matic pam cmake-utils db-use multilib
+
+DESCRIPTION="PAM module for blacklisting hosts and users repeatedly failed authentication"
+HOMEPAGE="http://pam-abl.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${MY_PN}/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND=">=sys-libs/pam-0.78-r2
+ >=sys-libs/db-4.2.52_p2:="
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}
+
+src_configure() {
+ pammod_hide_symbols
+
+ local mycmakeargs=(
+ -DDB_INCLUDE_DIR=$(db_includedir)
+ -DDB_LINK_DIR=/usr/$(get_libdir)
+ -DDB_LIBRARY=$(db_libname)
+ )
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+ dodir $(getpam_mod_dir)
+ mv "${D}"/usr/lib/security/*.so "${D}"/"$(getpam_mod_dir)" || die
+
+ dodoc doc/*.txt README
+}
+
+pkg_preinst() {
+ if has_version "~${CATEGORY}/${PN}-0.5.0" ; then
+ ewarn "Note: the 0.5.0 release named the module 'pam-abl.so' by accident; this version"
+ ewarn "fixes that and uses 'pam_abl.so' again. Please update your config files."
+ fi
+}
diff --git a/sys-auth/pam_bioapi/Manifest b/sys-auth/pam_bioapi/Manifest
new file mode 100644
index 000000000000..4af542609b41
--- /dev/null
+++ b/sys-auth/pam_bioapi/Manifest
@@ -0,0 +1,7 @@
+AUX pam_bioapi-0.4.0-headers.patch 608 SHA256 ebd4eb0e1d0fb189e3948731be2aa6e73ede6fe122d8e1099187501597d91d57 SHA512 66dc5ad2ef521b586e34da733d639620008ec4231990af1cbf73c69d26a7ab8d460bd4dfb4e2aa49202c5c92e8727539616e0ba7c60339a5e4929f6c493f0355 WHIRLPOOL 1af5c0f542461a1468fbfe2a165a32efdef9d8be74ef51f3c2206bd80f65393dd506aaf205b8b5554af26ab74315423c9a5e84910e8258469c68c2fe0bdaf0ba
+DIST pam_bioapi-0.4.0.tar.gz 383529 SHA256 635df4a27c3f9485a2eabbc672f0cf2771a96756792b5f4078481f2df9bceb8c SHA512 fb2527b44ec8070fdc7a32fd1e272a6b98095fba827365f5427ae5fe6a5681b2f3be246ac34aaeb313d776890bd122c25ba68a58d9a728e68e4b341842dcb6d3 WHIRLPOOL 2c12463c8d248b3be7c110a7257dc3ec662dfef012099bc3ec4fb8527c1e1c22b1c9a438a279545efdc95de63eefa09637d7b97278d5a6233e78f2b7810a99ae
+EBUILD pam_bioapi-0.4.0-r1.ebuild 1048 SHA256 1384fefcc1c9e352f1550fb0b75aaf570b2703873a1569f3f465c3c38c1710fe SHA512 2f7daa7632ac6ba22e557d6a39911abd83618c87d953d63324fa448cd9e6e2b5e1e97ab90415e1e44bb2cd436bfc63cf1d91f66439cbe4a31b3e9941ffc2a8bc WHIRLPOOL 4125a7a3503c4da8d57b071fcd666d2f72c1c94e729d81e425b82379fc279a7c2e46796c96ac31c14526a1132a12907b6a480389adba83ed4f335f5e737bc476
+EBUILD pam_bioapi-0.4.0.ebuild 892 SHA256 1246b176afe6a78cad58199f98ad3271ac9509757155fafa04c0f9e399961457 SHA512 1bbc35a83cfde3d137f334fdb2e7cabadf7b34e0208b8609fb94cac7eccebe10a66ba5196ae346a91aadfdc93ebda14b2f77ccc0b97288df28b13304a90b5e5e WHIRLPOOL 87a47d25cea3b62bb6bcc474c8ba19d5a6d5eef1717d9dc27ecac4ea75893ed0af0c043a8f5723622f5bbfbb5551ca1e5e392b65e30d98ae16afdd3940ed47a1
+MISC ChangeLog 2674 SHA256 b6c0ea7964adee3dd4f21f9f98512f661a8e498d143a0d94f62189fa1c42be15 SHA512 d9c552c6a7cdcf40f405b327e5c8d09e45e09711204ebb45f90fc3d78c9cc867ea4b2c3db2399371c5e6c394334d79008ef5da414e25a3a89c7f56a218fa6dde WHIRLPOOL 83903dd4666dee678c702ac821bb9f41423945a14f3bd83e9a1708a8aab5f17ab0b02ae746eaa002b2506266fc6a503f902bb41cd81e035b7053529c799b9f54
+MISC ChangeLog-2015 1856 SHA256 6b1a5bc09dd274da7db6f06773d86cdfeca92952a77bd1a99f588f52ec476f24 SHA512 6e6d8b8fd4fe2b45533276f5535ce34bacd1eeafdfee91ae1b0c27e9f142b6228dd1bb68acddfb206ccae19febc3b798071e7143e86c09bc5c836fa81ef2929e WHIRLPOOL 2fde8501bc2b621067c8e7e10d4bccb0df4271c92fb74edd6cdb5c3a2a434ebe681850fafcbe05f25197490513567ad465b2110632204b9ee7553f0b0a9c0ec7
+MISC metadata.xml 327 SHA256 1255a9078d74b7c046129a54f935693a2210dff4d9668856d8eab9e8c0d88c32 SHA512 a9cbdd016630f2aa39ffad75bde8401036e03c06d06f1630e1c83c702796d10621e854e0d279b4c476796e5f1c7529b9195eb8410efec7480707a86947f4e3be WHIRLPOOL 36ca5405cb1f3c5991bf4404536a9d06b164178a86db7dda6e12198b29fe5bdc2201ebfdba3e60a72a4c825b82d3d05a92d77d91f59e9cdb1d1fa8aca09e5b8e
diff --git a/sys-auth/pam_bioapi/files/pam_bioapi-0.4.0-headers.patch b/sys-auth/pam_bioapi/files/pam_bioapi-0.4.0-headers.patch
new file mode 100644
index 000000000000..d5acc4db61bc
--- /dev/null
+++ b/sys-auth/pam_bioapi/files/pam_bioapi-0.4.0-headers.patch
@@ -0,0 +1,27 @@
+fix building with -O0
+
+http://code.google.com/p/pam-bioapi/issues/detail?id=3
+http://bugs.gentoo.org/241322
+
+fix building with newer glibc
+
+https://bugs.gentoo.org/512106
+
+--- libpam_bioapi/pam_bioapi.h
++++ libpam_bioapi/pam_bioapi.h
+@@ -19,6 +19,7 @@
+ #include <sys/stat.h>
+ #include <sys/types.h> /* defines 'uid_t', etc. */
+
++#include <sys/resource.h>
+ #include <sys/types.h>
+ #include <sys/wait.h>
+ #include "earray.h"
+@@ -23,6 +23,7 @@
+ #include <sys/wait.h>
+ #include "earray.h"
+
++#include <locale.h>
+ #include <libintl.h> /* gnu gettext support */
+ #define _(String) gettext (String)
+
diff --git a/sys-auth/pam_bioapi/metadata.xml b/sys-auth/pam_bioapi/metadata.xml
new file mode 100644
index 000000000000..91d4d8ecea2a
--- /dev/null
+++ b/sys-auth/pam_bioapi/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>vapier@gentoo.org</email>
+ <name>Mike Frysinger</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="google-code">pam-bioapi</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_bioapi/pam_bioapi-0.4.0-r1.ebuild b/sys-auth/pam_bioapi/pam_bioapi-0.4.0-r1.ebuild
new file mode 100644
index 000000000000..5e3bf7e94d24
--- /dev/null
+++ b/sys-auth/pam_bioapi/pam_bioapi-0.4.0-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils
+
+DESCRIPTION="PAM interface to bioapi package"
+HOMEPAGE="https://code.google.com/p/pam-bioapi/"
+SRC_URI="https://pam-bioapi.googlecode.com/files/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="x86"
+IUSE=""
+
+DEPEND="sys-auth/bioapi
+ sys-libs/pam
+ dev-db/sqlite"
+RDEPEND="${DEPEND}
+ sys-auth/tfm-fingerprint"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-headers.patch #241322
+ sed -i \
+ -e 's/-version-info 0:4:0/-avoid-version/' \
+ libpam_bioapi/Makefile.in #261598
+ sed -i \
+ -e 's:@prefix@::' \
+ -e '/pam_unix.so/s:.*:auth include system-auth:' \
+ etc/pam.d/{bioapi_chbird,test-pam_bioapi}.in #261598
+}
+
+src_compile() {
+ econf --sbindir=/sbin || die
+ emake || die
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ dodoc AUTHORS ChangeLog NEWS README TODO
+
+ dodir /$(get_libdir)
+ mv "${D}"/usr/$(get_libdir)/security "${D}"/$(get_libdir)/ || die
+ rm -f "${D}"/$(get_libdir)/security/*.la
+}
diff --git a/sys-auth/pam_bioapi/pam_bioapi-0.4.0.ebuild b/sys-auth/pam_bioapi/pam_bioapi-0.4.0.ebuild
new file mode 100644
index 000000000000..02610ae18502
--- /dev/null
+++ b/sys-auth/pam_bioapi/pam_bioapi-0.4.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="PAM interface to bioapi package"
+HOMEPAGE="https://code.google.com/p/pam-bioapi/"
+SRC_URI="https://pam-bioapi.googlecode.com/files/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="x86"
+IUSE=""
+
+DEPEND="sys-auth/bioapi
+ sys-libs/pam
+ dev-db/sqlite"
+RDEPEND="${DEPEND}
+ sys-auth/tfm-fingerprint"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-headers.patch #241322
+}
+
+src_compile() {
+ econf --sbindir=/sbin || die
+ emake || die
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ dodoc AUTHORS ChangeLog NEWS README TODO
+
+ dodir /$(get_libdir)
+ mv "${D}"/usr/$(get_libdir)/{lib*.so*,security} "${D}"/$(get_libdir)/ || die
+ rm -f "${D}"/$(get_libdir)/security/*.la
+ gen_usr_ldscript libbirdb.so libbirdb_sqlite3.so
+}
diff --git a/sys-auth/pam_blue/Manifest b/sys-auth/pam_blue/Manifest
new file mode 100644
index 000000000000..4153caceb7a5
--- /dev/null
+++ b/sys-auth/pam_blue/Manifest
@@ -0,0 +1,8 @@
+AUX pam_blue-0.9.0-bad-log.patch 357 SHA256 88f659d5baf34419c8da68c6636543fa3caed6e7132848c1be678654bcba9be5 SHA512 cba81accf65e980f47433b6df808b9cdfcd881c222ab599d0d8aec1b487089b38eba6ebaf89272ba5b821b0367e61e8073973e7098f53d81fd6eabccaab87daf WHIRLPOOL 2dad7321a710f12df7996a2b59acf39f22b02a645d360983ddeaf8b1ff6d9da6d4a85f73470fcdb87ea9648002b4ad1d60a0fbd4c52f1e4bf4710949f09f21ac
+AUX pam_blue-0.9.0-char-locales.patch 666 SHA256 96ea53534714939e7c83ad6911f9ba2d952978343240a2f5ab56b47a09394e53 SHA512 2a7bcc2f3d6b260a9b4803b0657114a194af90828bd5926ee1887f04304e30d2bfb46c000f190ab1de88f4646620e2c15ab8cf60fa35fb38a1d12f46cf138fe2 WHIRLPOOL be2444ac6b691462813ae3937ad97bf6eca88da51d7dba80dc80cb9df5738a67d3df604ec471c6c1e23212eac87e83bda5f1142fa1acc54efdf750d13a00ce1f
+DIST pam_blue-0.9.0.tar.bz2 251688 SHA256 4ff0f6528d29ae77cf890defcbaf16ee2065dc85fe8edd2e6e53d48e7f27b535 SHA512 f611b6e3b509d2b917dd15a82f6fa3219ce554cdbf3bd224981c740bb3161dea67db9275b9bc13cd54644e0cb546eb2bb32dbff7e510170a0911b40d81f2d620 WHIRLPOOL 51a9d6f920b3420187c29a009020d4a9aa3f2598a8ce07bd440e871ab4e493e09bce3cb4cf2d6cef63e734be20f29b1ee2ea2aa0ed6f14add7aa9704f23a8eec
+EBUILD pam_blue-0.9.0-r1.ebuild 1170 SHA256 e01337c8982359b33a3028b1f24ecccb5bff3e840815078b10ea9f395507821b SHA512 8de3b8154fdb9f35848674fbf65b0ae1c0b7632723bfdb300bf6db6b9ab94d891c2124658ea42e28cd917a2cd440cb33cf15ce578be3d99e8cfa81f6aadd1b37 WHIRLPOOL f5181e8894c87866e59bbdbf9416578a2caa66dc10ac379e601223db05efbac936219f9be59629cf0c14b968cbd3102a5ecef022c2027b5a09275a7566ac8937
+EBUILD pam_blue-0.9.0.ebuild 1086 SHA256 e3068f5355cc5c7c5b270fd026ed74b4b81754199233bb6323c5cef3f92208f9 SHA512 0b0b46012de45a3c10f03b797fe37e1f376a817123468fed893abefaf3d2ac15d6e0c8fd3041d5cb2583013a891578558729af05dc26a65195f025783baffd82 WHIRLPOOL 2fa0f46f3453ae7ec8f67e3da2195d4e2d9328d4d3fbc8388399010d06535216dd2ddddd45e77e8742f19297cb7147a0760b9d62914261817cfcd441e4484e46
+MISC ChangeLog 2573 SHA256 cbf0b428f745efe9ccb7d9b6d1194e3c1595346dc3904a7748da0a69a0829902 SHA512 0979d3d22eb615e23e4ed59cef51e0584b4021220415a34cd6feb33ca795ef45a172a5722476fd47287837d5a1649b56b5a4a4ecb98141ba9e72d26cedd1f8a3 WHIRLPOOL d42365ebeb3df9b593b72d32ab67e1fed1aaad69b2f5a4e95cf6ca668d780f671cd44acb468c93bea9729126b0f43c26d722839bfc112570e8b65158e6d33782
+MISC ChangeLog-2015 1621 SHA256 28aff5374546d39d80246dd8bbc6bb1f067d7f17cdf2651c4aef484f7f100031 SHA512 998387d17642a413af6943edb7808ff6bcac188de1edcb800f5726ca38d4bd1f567d55ec32e5c466b8afc0c829b46b69710f77e8d5f644d43d87c0a45e178360 WHIRLPOOL 4fc481629aaac926d28be944daa87984cdb35c45c9ae320896e30c103efaa817cb83e305bd44156f8e3fc188065bdfd534e2e3dba3f23ac9426039301fba895e
+MISC metadata.xml 758 SHA256 5aee75c832267916158c8bbf3e7e7512a7d9656ab122d475f2bf831704385b28 SHA512 7d33c098fb2422df99f93c068908d3e1f1639d7d5d891ae5f8e579feab19b33fcc3f184c05f27282774b01eed405676edfb3ef2c0f8f4de8e7dd519d8523afdc WHIRLPOOL 3941e054888cbb8bd145bf0ea14401c23b937d9aca6350addd58771b6bbabeb9a8818be53c5a2da6f61ffc7988234556acdbfd5159631de31285bb2b81c2f1b0
diff --git a/sys-auth/pam_blue/files/pam_blue-0.9.0-bad-log.patch b/sys-auth/pam_blue/files/pam_blue-0.9.0-bad-log.patch
new file mode 100644
index 000000000000..5f2a2628e4b0
--- /dev/null
+++ b/sys-auth/pam_blue/files/pam_blue-0.9.0-bad-log.patch
@@ -0,0 +1,11 @@
+--- a/src/bluepmain.c
++++ b/src/bluepmain.c
+@@ -88,7 +88,7 @@
+
+ if ( (lst = parse_rc()) == NULL) { /* something goes wrong (no config file, ...) */
+ user = NULL;
+- syslog (LOG_ERR, "Can't parse configuration file [%s]!" CONFIG_FILE);
++ syslog (LOG_ERR, "Can't parse configuration file [%s]!", CONFIG_FILE);
+ return PAM_AUTH_ERR;
+ }
+
diff --git a/sys-auth/pam_blue/files/pam_blue-0.9.0-char-locales.patch b/sys-auth/pam_blue/files/pam_blue-0.9.0-char-locales.patch
new file mode 100644
index 000000000000..40d2810f486c
--- /dev/null
+++ b/sys-auth/pam_blue/files/pam_blue-0.9.0-char-locales.patch
@@ -0,0 +1,17 @@
+https://bugs.gentoo.org/412941
+
+fix matching in various locales
+
+patch by Leho Kraav <leho@kraav.com>
+
+--- a/src/lexer.l
++++ b/src/lexer.l
+@@ -28,7 +28,7 @@
+ bluemac { return BLUEMAC; }
+ @ { return AT;}
+ ; { return SEMICOLON; }
+-[a-zA-Z][a-zA-Z0-9_]* { yylval.word = (char *) strdup(yytext); return WORD; }
++[[:alpha:]][[:alnum:]_-]* { yylval.word = (char *) strdup(yytext); return WORD; }
+ {HXDIGD}{HXDIGD}{HXDIG} { yylval.word = (char *) strdup(yytext); return MAC; }
+ [0-9][0-9]* { yylval.value = atoi(yytext); return DIGIT; }
+ = { return EQUAL; }
diff --git a/sys-auth/pam_blue/metadata.xml b/sys-auth/pam_blue/metadata.xml
new file mode 100644
index 000000000000..8136bc51b0fc
--- /dev/null
+++ b/sys-auth/pam_blue/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ <name>Pluggable Authentication Method maintenance</name>
+ </maintainer>
+ <longdescription lang="en">
+ Bluepam is an extension for the common pam modules, give the user the
+ ability for authenticaten via a bluetooth compatible device like a cell
+ phone or various other bluetooth dongles (e.g. epox-presenter). Due to the
+ fact that a whole part of the bluetooth stack is implemented in hardware it
+ is relatively difficult to change the bluetoth hardware mac address which
+ makes this module more secure.
+ </longdescription>
+</pkgmetadata>
diff --git a/sys-auth/pam_blue/pam_blue-0.9.0-r1.ebuild b/sys-auth/pam_blue/pam_blue-0.9.0-r1.ebuild
new file mode 100644
index 000000000000..9988f76edda5
--- /dev/null
+++ b/sys-auth/pam_blue/pam_blue-0.9.0-r1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit pam autotools multilib
+
+DESCRIPTION="Linux PAM module providing ability to authenticate via a bluetooth compatible device"
+HOMEPAGE="http://pam.0xdef.net/"
+SRC_URI="http://pam.0xdef.net/source/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/pam
+ net-wireless/bluez"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${PN}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-char-locales.patch #412941
+ epatch "${FILESDIR}"/${P}-bad-log.patch
+ mv configure.{in,ac} || die
+ eautoreconf
+}
+
+src_configure() {
+ econf --libdir="$(getpam_mod_dir)"
+}
+
+src_install() {
+ # manual install to avoid sandbox violation and installing useless .la file
+ dopammod src/.libs/pam_blue.so
+ newpamsecurity . data/sample.conf bluesscan.conf.sample
+
+ dodoc AUTHORS NEWS README ChangeLog
+ doman doc/${PN}.7
+}
+
+pkg_postinst() {
+ elog "For configuration info, see /etc/security/bluesscan.conf.sample"
+ elog "http://pam.0xdef.net/doc.html and http://pam.0xdef.net/faq.html"
+ elog "Edit the file as required and copy/rename to bluesscan.conf when done."
+}
diff --git a/sys-auth/pam_blue/pam_blue-0.9.0.ebuild b/sys-auth/pam_blue/pam_blue-0.9.0.ebuild
new file mode 100644
index 000000000000..2e3f3346ef90
--- /dev/null
+++ b/sys-auth/pam_blue/pam_blue-0.9.0.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit pam autotools multilib
+
+DESCRIPTION="Linux PAM module providing ability to authenticate via a bluetooth compatible device"
+HOMEPAGE="http://pam.0xdef.net/"
+SRC_URI="http://pam.0xdef.net/source/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/pam
+ net-wireless/bluez"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${PN}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ eautoreconf
+}
+
+src_compile() {
+ econf --libdir="$(getpam_mod_dir)"
+ emake || die "emake failed"
+}
+
+src_install() {
+ # manual install to avoid sandbox violation and installing useless .la file
+ dopammod src/.libs/pam_blue.so
+ newpamsecurity . data/sample.conf bluesscan.conf.sample
+
+ dodoc AUTHORS NEWS README ChangeLog
+ doman doc/${PN}.7
+}
+
+pkg_postinst() {
+ elog "For configuration info, see /etc/security/bluesscan.conf.sample"
+ elog "http://pam.0xdef.net/doc.html and http://pam.0xdef.net/faq.html"
+ elog "Edit the file as required and copy/rename to bluesscan.conf when done."
+}
diff --git a/sys-auth/pam_chroot/Manifest b/sys-auth/pam_chroot/Manifest
new file mode 100644
index 000000000000..79d2a051a0eb
--- /dev/null
+++ b/sys-auth/pam_chroot/Manifest
@@ -0,0 +1,5 @@
+DIST pam_chroot-0.9.2.tar.bz2 15657 SHA256 101bd0e175c16f7410fdf6a4c04e4015283411efe92790f614f0e0c43cc05ce5 SHA512 5aaabb7ed64944885bb2fd3b8a5f641b1ae3c4fbd0e1e5f130abf298f4089b780a53caf60af86e1082a00fb53ff6f9cae5d2838a740919f65152201bae2bee55 WHIRLPOOL 0c4a24d569a15de9c20c2f284ca34de088797f3db57209830ec79a0adf1ed855c515424e3620e18420199696cf90a5b0328e5588747cf7209795cd5702d3c12d
+EBUILD pam_chroot-0.9.2.ebuild 913 SHA256 8313051920765dac144c13e90c52a9bfb159d89ef49bfeedc7e17800111fdd78 SHA512 687f1b85cbb6bcfe659dc7247c8a3f23924062ce95a00a684244f403109b86ea7ededa5f7b2979f9fd4d1abd1bc3dcf2e9d7f697f4a991e85775d9394edbb8d3 WHIRLPOOL c2791bf84d2ccbd31da23abea29a3974f10498c334c260a31a15bc1790b17ad2d936a121bcaf5ae353c0234791f21ddcfb3dd39f05bab3bec62e8e1f2e06e056
+MISC ChangeLog 2551 SHA256 31bbc44ecac5ce8ebd48f1293a9ae75e7d1ac4d1de3ae131048b6af62e838b02 SHA512 321c616bfa21959781976274076e8b3a28356d23033356e03c8c04202d3747789e0c8016f667de858d4f086bf9f2785092cff66317413a0cbb64c3a18c26bfc0 WHIRLPOOL ba1d95c12db6db3c0e06b623b95dd06f03dd718522b85c466f2c17b30cab2b4097c45f3c5f2c040fed47b26117bc3cc292bdd75628691b1cfef31ed99f8eac7f
+MISC ChangeLog-2015 2215 SHA256 8f8a20ffa2f04fa1a7c2120e8cbf504f20e621ec51247666b227699d0bc8e225 SHA512 e898c6f96cef0088abd63e52b5530178f7cbb5c05838bf5567a68796f7bf4b1fb5d4f47a959f84f67e6c85728401a056603aa14f0ee30bfd5e627091c2576eab WHIRLPOOL 038e3fb2397e0216c49fee01670063ce93d254a645f5b4ffebc8bf4859b2b593561e1a0785ac5cd3cdd56834cba583cc5aaf4fbe61ace0c952997e70a05a3f79
+MISC metadata.xml 369 SHA256 5a13eeab4f50db885ba8ecf087d7097738aaae1001aecaf869e2acefed91afea SHA512 db8091127ee9cb5c5f6a8bfc1d5d387f74c7ae81b1fb849b1c207c49ea73fc069ab49a6b205bd178f49b068c6c44411cfd29babdd4d1f57dff84d1c04f4f782e WHIRLPOOL 93daa54018a728ba6b9596fcdcc654543c26fc153e4340074a3bdbe6ccedfa25bbfba903cb1a6236357942295e89968771778b8704e48c587ed301bf941e4434
diff --git a/sys-auth/pam_chroot/metadata.xml b/sys-auth/pam_chroot/metadata.xml
new file mode 100644
index 000000000000..52068ed770ca
--- /dev/null
+++ b/sys-auth/pam_chroot/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ <name>Pluggable Authentication Method maintenance</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">pam-chroot</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_chroot/pam_chroot-0.9.2.ebuild b/sys-auth/pam_chroot/pam_chroot-0.9.2.ebuild
new file mode 100644
index 000000000000..93907e006325
--- /dev/null
+++ b/sys-auth/pam_chroot/pam_chroot-0.9.2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit toolchain-funcs pam flag-o-matic eutils
+
+DESCRIPTION="Linux-PAM module that allows a user to be chrooted in auth, account, or session"
+HOMEPAGE="https://sourceforge.net/projects/pam-chroot/"
+SRC_URI="mirror://sourceforge/pam-chroot/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+DEPEND="virtual/pam
+ !<sys-libs/pam-0.99"
+RDEPEND="${DEPEND}"
+
+doecho() {
+ echo "$@"
+ "$@" || die
+}
+
+src_compile() {
+ # using the Makefile would require patching it to work properly, so
+ # rather simply re-create it here.
+ doecho $(tc-getCC) ${LDFLAGS} -shared -fPIC ${CFLAGS} ${PN}.c -o ${PN}.so -lpam
+}
+
+src_install() {
+ dopammod pam_chroot.so
+ dopamsecurity . chroot.conf
+
+ dodoc CREDITS README.history TROUBLESHOOTING options || die "dodoc failed"
+}
diff --git a/sys-auth/pam_dotfile/Manifest b/sys-auth/pam_dotfile/Manifest
new file mode 100644
index 000000000000..e0f8cde9eb4c
--- /dev/null
+++ b/sys-auth/pam_dotfile/Manifest
@@ -0,0 +1,8 @@
+AUX pam_dotfile-0.7-gentoo.patch 3789 SHA256 bce873f2e4a37e151aeb234ddb8f43f18fdeddca13f074e378b3a75dd30f3eb5 SHA512 83501f36f044cc24c2437112444e1280866e2c78f4f2823cd2b4ec2883fd6bff81fb23c7108bc773e50d1dbf97ac307df09245984cdf4fd068f314ad4bc57771 WHIRLPOOL a2701cebbe14206714f85cc0ee551d8f19159257c1a7d9c6ad3092475db4edbab86f7c164b46bcf7c68961dce9497f92506954465ba2e1c98716e53cff4e9bd0
+DIST pam_dotfile-0.7.tar.gz 229009 SHA256 88e99da6aaecec19ea294eb10bcb432f1ce506d1ca53d416ea74bb165a3a4534 SHA512 544160068af2c6a488271d36cfae43340d4d7801702aef629ba781dff12b99334bc76ec14396783d0a9823d0f976c847335fe8b1b07cbbb6e43d0bd658ff7500 WHIRLPOOL 528f41b15955d196d1be39a58d014e094d34dd57ed2681c22618407f34a849bd26cf07b3450c78dbd850b2d8b1d8700520c61f8299d5a17bee81b6c43bfd0030
+DIST pam_dotfile-patches-1.tar.bz2 2172 SHA256 fa78ddf1bc2c4938925a8bb71be2705d8a38904c1693b0bbb9f2f3c5f4e8dc5b SHA512 a6b29361e089f7223c3f915320a921b5f20603a16673d518300ea458a816360950a76a4f8e1842040f7b0e676d4c67c6de2586640c2bb4638a4e63138b78600a WHIRLPOOL 1fc23a8169d3cd020aae43f59f6fa2866553e61cc7e26a60c7ea5b091fd66b13c1a8f0e05525b92a5a5ab590263d3d10d82faec97e5f3a4fbdba4a927755f130
+EBUILD pam_dotfile-0.7-r1.ebuild 1165 SHA256 5c58d3ee2eeb5afc96acdf2304f3c06f7b1c75bebdacca5699df97ccfeb2fe24 SHA512 f1e60157f20735a7c2cf3677cc17573990e7ae7e8396291c56c8755cb2c723b8d842b1dfe38b72668de45627fcb5118f606324de61ed1e40971aece199ad82bf WHIRLPOOL 22b1b5d22fda0f14b76d113974238f0812a4de83a5a17db9d59db1f5c1678ea7d23d2b4bc6e31a3805bb31c6226ad001a2ad0de51b6d773cb8cf20636d44a692
+EBUILD pam_dotfile-0.7-r2.ebuild 927 SHA256 54cd364b2d7a7e2cb39bb8a55563bf774b95a10aa145a025c841128d7135af4e SHA512 d52071d2d969768b35b69edb25492588aec6e36841318e926be2368afc6fcae5aa723a83d8e1b7ddbcbec38d18fff8b9addd0672037cdc7779743437181e09fa WHIRLPOOL 56f7d5b8f14e14b60d714a235eaeb99f645f84da9df34f5dbdc09d4182f0a1eb8979e12ca215aa8c225df248a9716a37b9fe7e9fc0886fbe3aba0af4ca8fa589
+MISC ChangeLog 2542 SHA256 2acec76737416dc7fab193f8bbbd42b0bba449586dfb7fc0c75035d9d77f722c SHA512 19c00382fd592cf6c64b22e86327ccd73f214b2fa4122d803c122124037b360198482824335a4634aa39830772923e0c12307fa471bedefb07facfeb51bc4247 WHIRLPOOL 6c51a5cd27262172f262d1b30387c261238114bae4547b1c42c55d5b9b17b4d9c31d84096d417ecb3c54ccb6576217942df86fbea76673523e316041556c1ef2
+MISC ChangeLog-2015 3371 SHA256 4c31d58a372dbbd542fa6458649f8976cff84924e34610fc84b72180dda79273 SHA512 16ddb740a952e051ed4d09c40c4eace2c4eabedaa50de5b045e3a3aa169869b2480be1d2e92dbbdefd44cf4dc4527f273c552aca4122ded7002d2d1c476af40a WHIRLPOOL f36bd08653ff31d12928cb902b537b154816f52f1fc19788732898c0775fdbf86f35c528a5bea6e80ef7d21283d3df2805b88a15986b5595d5dc877e3212f137
+MISC metadata.xml 303 SHA256 5b2bcd7530424652f6cd601b2c8a8ef9134490f294c4dc9f9af61e5768df5922 SHA512 27b3be6acb3109806233b5881a3cd140258d7cc7e795d7a1baf4200510c09e44adeebd600220a8c39d1f538b5b85be1a8546c83b802e9170a86b0794b99a6609 WHIRLPOOL a3e1b01afc5dc8d42338f4e44381731c2e4b61cf935a9a5c582a2576666d1c32bc463dce99aa8e04a34f0733e6dbd4deabd42afb20f45031dcd2b189179d0705
diff --git a/sys-auth/pam_dotfile/files/pam_dotfile-0.7-gentoo.patch b/sys-auth/pam_dotfile/files/pam_dotfile-0.7-gentoo.patch
new file mode 100644
index 000000000000..023f86553c39
--- /dev/null
+++ b/sys-auth/pam_dotfile/files/pam_dotfile-0.7-gentoo.patch
@@ -0,0 +1,157 @@
+diff --git a/configure.ac b/configure.ac
+index 4730bdf..b8d8747 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -44,16 +44,26 @@ CFLAGS="$CFLAGS -L/lib"
+ # Checks for libraries.
+ AC_CHECK_HEADER([security/pam_modules.h],, [AC_MSG_ERROR([*** Sorry, you have to install the PAM development files ***])])
+
+-LIBS="$LIBS -ldl -lpam -lpam_misc"
+-
+-case "$host" in
+- *-*-linux*)
+- PAM_MODDIR="/lib/security"
+- ;;
+- *)
+- PAM_MODDIR="/usr/lib"
+- ;;
+-esac
++AC_CHECK_HEADERS([security/_pam_macros.h security/pam_misc.h security/openpam.h])
++
++AC_CHECK_LIB([pam], [pam_start])
++AC_CHECK_LIB([pam_misc], [misc_conv])
++
++AC_ARG_WITH([pammoddir],
++ AC_HELP_STRING([--with-pammoddir], [Install module in specified directory]),
++ [
++ PAM_MODDIR=$withval
++ ], [
++ case "$host" in
++ *-*-linux*)
++ PAM_MODDIR="/lib/security"
++ ;;
++ *)
++ PAM_MODDIR="/usr/lib"
++ ;;
++ esac
++ ])
++
+ AC_SUBST(PAM_MODDIR)
+
+ # Checks for header files.
+@@ -64,7 +74,7 @@ AC_FUNC_LSTAT
+ AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
+ AC_FUNC_VPRINTF
+
+-AC_CHECK_HEADERS([fcntl.h limits.h syslog.h termios.h])
++AC_CHECK_HEADERS([fcntl.h limits.h syslog.h termios.h sys/types.h])
+ AC_HEADER_STDC
+ AC_HEADER_SYS_WAIT
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 2905b7c..e7e47d2 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -22,7 +22,7 @@ moduledir = @PAM_MODDIR@
+ module_LTLIBRARIES = pam_dotfile.la
+
+ pam_dotfile_la_SOURCES = pam_dotfile.c md5.c md5util.c md5.h md5util.h log.c log.h common.c common.h
+-pam_dotfile_la_LDFLAGS = -module -avoid-version
++pam_dotfile_la_LDFLAGS = -module -avoid-version -export-symbols-regex '^pam_'
+ pam_dotfile_la_CFLAGS = $(AM_CFLAGS)
+
+ sbin_PROGRAMS = pam-dotfile-helper
+diff --git a/src/common.h b/src/common.h
+index ef34cf3..6a57116 100644
+--- a/src/common.h
++++ b/src/common.h
+@@ -21,7 +21,10 @@
+ ***/
+
+ #include <security/pam_modules.h>
+-#include <security/_pam_macros.h>
++#include <security/pam_appl.h>
++#ifdef HAVE_SECURITY__PAM_MACROS_H
++# include <security/_pam_macros.h>
++#endif
+
+ typedef struct context {
+ int opt_debug;
+diff --git a/src/pam-dotfile-helper.c b/src/pam-dotfile-helper.c
+index 04c73de..1c09b18 100644
+--- a/src/pam-dotfile-helper.c
++++ b/src/pam-dotfile-helper.c
+@@ -23,6 +23,14 @@
+ #include <signal.h>
+ #include <pwd.h>
+
++#ifdef HAVE_CONFIG_H
++# include <config.h>
++#endif
++
++#ifdef HAVE_SYS_TYPES_H
++# include <sys/types.h>
++#endif
++
+ #include "common.h"
+ #include "log.h"
+
+diff --git a/src/pam_dotfile.c b/src/pam_dotfile.c
+index 405f494..183aafd 100644
+--- a/src/pam_dotfile.c
++++ b/src/pam_dotfile.c
+@@ -29,11 +29,19 @@
+ #include <sys/types.h>
+ #include <sys/wait.h>
+ #include <fcntl.h>
++#include <stdlib.h>
+
+ #define PAM_SM_AUTH
+
+ #include <security/pam_modules.h>
+-#include <security/_pam_macros.h>
++#include <security/pam_appl.h>
++#ifdef HAVE_SECURITY__PAM_MACROS_H
++# include <security/_pam_macros.h>
++#endif
++
++#ifndef x_strdup
++# define x_strdup(s) ( (s) ? strdup(s):NULL )
++#endif
+
+ #include "md5.h"
+ #include "md5util.h"
+diff --git a/src/pamtest.c b/src/pamtest.c
+index 171e601..6583de1 100644
+--- a/src/pamtest.c
++++ b/src/pamtest.c
+@@ -19,11 +19,28 @@
+
+ #include <stdio.h>
+
++#ifdef HAVE_CONFIG_H
++# include <config.h>
++#endif
++
+ #include <security/pam_appl.h>
+-#include <security/pam_misc.h>
++
++#ifdef HAVE_SECURITY_PAM_MISC_H
++# include <security/pam_misc.h>
++#endif
++
++#ifdef HAVE_SECURITY_OPENPAM_H
++# include <security/openpam.h>
++#endif
+
+ int main(int argc, char*argv[]) {
++#ifdef HAVE_LIBPAM_MISC
+ static struct pam_conv pc = { misc_conv, NULL };
++#elif defined(_OPENPAM)
++ static struct pam_conv pc = { openpam_nullconv, NULL };
++#else
++ static struct pam_conv pc = { NULL };
++#endif
+ pam_handle_t *ph = NULL;
+ int r, ret;
+ char *username, *procname, *service;
diff --git a/sys-auth/pam_dotfile/metadata.xml b/sys-auth/pam_dotfile/metadata.xml
new file mode 100644
index 000000000000..4561c22b6584
--- /dev/null
+++ b/sys-auth/pam_dotfile/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">gentoo/pam_dotfile</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_dotfile/pam_dotfile-0.7-r1.ebuild b/sys-auth/pam_dotfile/pam_dotfile-0.7-r1.ebuild
new file mode 100644
index 000000000000..f8141e55e8c9
--- /dev/null
+++ b/sys-auth/pam_dotfile/pam_dotfile-0.7-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils pam autotools
+
+MY_P="${P/_beta/beta}"
+S="${WORKDIR}/${MY_P}"
+
+PATCHLEVEL="1"
+DESCRIPTION="pam module to allow password-storing in \$HOME/dotfiles"
+HOMEPAGE="http://0pointer.de/lennart/projects/pam_dotfile/"
+SRC_URI="http://0pointer.de/lennart/projects/pam_dotfile/${MY_P}.tar.gz
+ http://digilander.libero.it/dgp85/gentoo/${PN}-patches-${PATCHLEVEL}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="doc"
+
+RDEPEND="virtual/pam"
+DEPEND="${RDEPEND}
+ doc? ( www-client/lynx )"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ EPATCH_SUFFIX="patch" epatch "${WORKDIR}/${PV}"
+
+ AT_M4DIR="${WORKDIR}/${PV}/m4" eautoreconf
+}
+
+src_compile() {
+ local myconf
+
+ econf \
+ $(use_enable doc lynx) \
+ "--with-pammoddir=$(getpam_mod_dir)" \
+ || die
+ emake || die
+}
+
+src_install() {
+ make -C src DESTDIR="${D}" install || die "make -C src install failed"
+ make -C man DESTDIR="${D}" install || die "make -C src install failed"
+
+ rm -f "${D}"/$(getpam_mod_dir)/pam_dotfile.la
+ fperms 4111 /usr/sbin/pam-dotfile-helper
+
+ dodoc README
+ dohtml doc/*
+}
diff --git a/sys-auth/pam_dotfile/pam_dotfile-0.7-r2.ebuild b/sys-auth/pam_dotfile/pam_dotfile-0.7-r2.ebuild
new file mode 100644
index 000000000000..91fc44b9bfc5
--- /dev/null
+++ b/sys-auth/pam_dotfile/pam_dotfile-0.7-r2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils pam autotools autotools-utils
+
+MY_P="${P/_beta/beta}"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="pam module to allow password-storing in \$HOME/dotfiles"
+HOMEPAGE="http://0pointer.de/lennart/projects/pam_dotfile/
+ https://github.com/gentoo/pam_dotfile/"
+SRC_URI="http://0pointer.de/lennart/projects/pam_dotfile/${MY_P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="doc"
+
+RDEPEND="virtual/pam"
+DEPEND="${RDEPEND}
+ doc? ( www-client/lynx )"
+
+HTML_DOCS="doc"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gentoo.patch
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable doc lynx)
+ --with-pammoddir=$(getpam_mod_dir)
+ )
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+
+ # kill the libtool archives
+ rm -rf "${D}"/$(getpam_mod_dir)/*.la
+}
diff --git a/sys-auth/pam_fprint/Manifest b/sys-auth/pam_fprint/Manifest
new file mode 100644
index 000000000000..a2245ad26bfb
--- /dev/null
+++ b/sys-auth/pam_fprint/Manifest
@@ -0,0 +1,6 @@
+AUX pam_fprint-0.2-headers.patch 281 SHA256 5861da11e76fc47107b8f8e994738bc81544868bb1069c851792b9d11935a8aa SHA512 f7bbc72805ccbea7ba66b88fdf1f9793b3e8c076e7e64cab0be2c04881fb786b7ba9559067efad2956a3fd26aa647794b19b0cd0c52472fbd3ecd7205d71d006 WHIRLPOOL efecb8269217377a7986cca3c4e45fdcd2ea09b00669f6348c87288316e6b4531d4d87389297322c6c489c5e58be863c76ad98867b8944d7f336085c33056f42
+DIST pam_fprint-0.2.tar.bz2 72781 SHA256 57cba8a951d4127e5be4c3b2ced0c1c6fac0201a08c833f1644f0ea2e3fa8a72 SHA512 c860488efabfd6301b4e19596e15545bbcb1a15f79bfd7c61a357ef47cf0a621ec0d15328d5be30f7ef045813e18333bd0aea7fb8fcb06681007dcacca6396fd WHIRLPOOL 6a9025b6db956300de2b0dcb9b52452680c562c1b54d161d183221281dfb375f07a24b022227755a7aa4ce13113b3387d2d3bd9d0a94a9f35a52df95eebca6b2
+EBUILD pam_fprint-0.2-r1.ebuild 719 SHA256 4648a662c8a57683b8fb33209fd6b1ba06d3a94e72105434730b72098ef6deb8 SHA512 85b24d57d696b50300fd03cef7273d8c679e5d7b626e55dc0af7019d24a1e690988c993d290418e17f62e4fddbe8cff95ed722c8e90d79a34929f64902db2580 WHIRLPOOL fd41cd9c99e3f5daee4aec7167c1dd7d6b11f5f4cc0723b114780ebbcc330d248cf67dfc728b1105cc29e58c008dc5d04ab8149c4855c53b24ba32665c3f474a
+MISC ChangeLog 2226 SHA256 c2a50698c339fcf4dc6b1142acd8e9eb8be207a8d82ee30be3f65248ae6d2582 SHA512 84ff3910d81f1d4f0464d7f3dcb8b6f13399d39d38915536c946e31da70986a12a77936cb5b24ab4a486a3fc0fe621896f1a6d17541ec8c8cbb3792e99e31451 WHIRLPOOL 69e1660f74efd289393b57f7f2b084e0eb6635bd91205a5718d6b701b5bf670cc630ab5d3055977343ba2c53d963a469fa3f3b5c098d55f08a335fa84ae21479
+MISC ChangeLog-2015 2248 SHA256 950b7a024b530872441b6195d80f1a120235de1209fd2db57676a1a74bbe3b5c SHA512 a2f78685086388ce1e4e9ddb8cf44d1eee924dace4e20ce6062d8d2980b98e2bf03d2eb8fe9fefe392f6aa0a6dcf9b879dc21d1e8aca1f5e7b82160a95e32f19 WHIRLPOOL 975349d5492c52c7998584256337a9d0e9ebe1590a5c09cc6ab08a59adbe92251b4e436f87e37f1ebccd91cc5180b51f3085ab3d76977d4c20a1a9cf28243d35
+MISC metadata.xml 319 SHA256 a027b859e1dd74736ef211e5a343596ddddda6d45bb11ede0406b0f179393247 SHA512 79948714fc1b4c53d05d68d73755a6c81dcd44916b0cb81c8283fbf52e1c0c20f0f12bf31ca5ab3c42533dcfed6f6451692e35157cbaa419128bd0734c0e17ec WHIRLPOOL 3e5154e4d2a5275145b749f09af7b6b0cf1456516ed55b92e5d44d4614ff0beba767460b4f37dd4b4a13cf0c9e0173399d22841655c65258ab2222836d51d385
diff --git a/sys-auth/pam_fprint/files/pam_fprint-0.2-headers.patch b/sys-auth/pam_fprint/files/pam_fprint-0.2-headers.patch
new file mode 100644
index 000000000000..9ff6e551ee87
--- /dev/null
+++ b/sys-auth/pam_fprint/files/pam_fprint-0.2-headers.patch
@@ -0,0 +1,12 @@
+Add definition of free and setenv, Michael Weber <xmw@gentoo.org> Oct 18th, 2010
+
+--- pam_fprint-0.2/src/pam_fprint.c
++++ pam_fprint-0.2/src/pam_fprint.c
+@@ -22,6 +22,7 @@
+ #include <sys/types.h>
+ #include <pwd.h>
+ #include <string.h>
++#include <stdlib.h>
+
+ #include <fprint.h>
+
diff --git a/sys-auth/pam_fprint/metadata.xml b/sys-auth/pam_fprint/metadata.xml
new file mode 100644
index 000000000000..5dc8ba080c07
--- /dev/null
+++ b/sys-auth/pam_fprint/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xmw@gentoo.org</email>
+ <name>Michael Weber</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">fprint</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_fprint/pam_fprint-0.2-r1.ebuild b/sys-auth/pam_fprint/pam_fprint-0.2-r1.ebuild
new file mode 100644
index 000000000000..656e7e1b3841
--- /dev/null
+++ b/sys-auth/pam_fprint/pam_fprint-0.2-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=3
+
+inherit eutils pam
+
+DESCRIPTION="a simple PAM module which uses libfprint's functionality for authentication"
+HOMEPAGE="http://www.reactivated.net/fprint/wiki/Pam_fprint"
+SRC_URI="mirror://sourceforge/fprint/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ia64 ppc ppc64 sparc x86"
+IUSE=""
+
+RDEPEND="sys-auth/libfprint
+ sys-libs/pam"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-headers.patch
+}
+
+src_install() {
+ dopammod src/${PN}.so || die
+ newbin src/pamtest pamtest.fprint || die
+ dobin src/pam_fprint_enroll || die
+ dodoc AUTHORS ChangeLog NEWS README || die
+}
diff --git a/sys-auth/pam_krb5/Manifest b/sys-auth/pam_krb5/Manifest
new file mode 100644
index 000000000000..e1af71570c33
--- /dev/null
+++ b/sys-auth/pam_krb5/Manifest
@@ -0,0 +1,7 @@
+DIST pam-krb5-4.6.tar.gz 528901 SHA256 dbd7887bc3be9d0962719df53ff67209b27fedc64104fb2a0956a72f809640dd SHA512 d5dbd735f4d1e55ba0a09c22945bbb2bacc54942544f1cace186cd9d2e669923933af7ac448a566211486beda03c384abda2a0cc146294b0cb1f6d53403b7a60 WHIRLPOOL 4556c845d92d3e8182381234989fc452fcd8993b45e489269172e3c45902b98a0c4a378da8485ae85aaf27ffa8d24dc3c9d4cfcee7ca3922080af8b4cb9603f0
+DIST pam-krb5-4.7.tar.gz 557325 SHA256 9b4ff52d0456939a0fe6d6676a965a6c2351d9f2c011de8402bfc12c547a7412 SHA512 b6f5a4788a4e809f21ef3e89fff50c76679ac8e7d10bc2617275e06e84ce7bd8a02089ff7682ec64827d45409c968c469a0dca730d676ad2db082e09b9dd31ce WHIRLPOOL a9833e1d1650878c79a7385aa50c73462d0546ddda73868ad4b84544df044203b9601a4d22ed718a8c9a9d2897738450be23fbb98c871ecf0e60fc6bef7d7ccb
+EBUILD pam_krb5-4.6.ebuild 703 SHA256 cf933b33d4876f41bdcd067d2296a22ca051bccba4aff005897141a042f02fa6 SHA512 2564cad3d13b15695232e16b33213b80376315eb15c1aa6f404328652d122a6b2707241fa3e7d444523e2a676d6ee344eb5d6aad200f88bb4369d5c812168939 WHIRLPOOL 21d06deec9f65972c94404bacac385102038fc9400ab7b6bbf97fb7ed79ae3e54933fd44b28a1d478273e8a92f8501eefc3f2144c074958d932575dcb70b3b70
+EBUILD pam_krb5-4.7.ebuild 722 SHA256 69ea194367b817c59d67ed684016cdaac048aec9ad1ef10da77e3484d8d003cd SHA512 2f23e6e597488dda439f53d4c27e33f4f903d49d14923e5baaf8c3f8876422c5044de3dcca519b280c0082e85dc2fa84cc4290d41d8f53c17a7d3cccbae50c73 WHIRLPOOL a5fa13eeac044fb07e0d99ccbc45ff118379ab8bfb3da78830a2d499425ffc72f8adb5bb5652bee2422a96289b86b4f95784641cc2aa8f6ed9affea7897af0dc
+MISC ChangeLog 2476 SHA256 9b6bd8f557ff446a9d7779032326d45acda3d7267371aecff7a91c748a1cec05 SHA512 1eaecaa8c2f49970d79f9fb67416566de2b7a7c99d86f8dabccae1c598ceec39c3f4a3928fb9127e7cd4d6ff9bb6e4e9c68b454e613fb74b7bf8302953d2c314 WHIRLPOOL 5826304e99bdf94ec0cdd9ae9422998a274f46c79002471e0fcb508f8dcc69c240ad4c07c1b1f624035ac548661dd3d9cea582af93b00247247d9fbe810c89d0
+MISC ChangeLog-2015 10669 SHA256 a181654d574198317695ffbf6b0c0a9b40f56070bdeb0751bc4f466346295508 SHA512 f6b86185c78cca2f458fafaa8481c6468b5ebdb612f905f43fc43f59978db94e6182510f77bdfb9177892a282356fc393d8c2717a7f162df3c266c5b3f294633 WHIRLPOOL 2daf10943200f31cfcb46d405b1e4d0e1204bdf4c29ed4386ab03df9e2b02a5e88a68a77cd77aaa0d1ecb7f2e7a8265fb2835adc020c40215f1c16bc07487f58
+MISC metadata.xml 443 SHA256 02457fb3840e5ec2e8cafde84a52abbaa624fe843826442f1e3ff04b27903f1e SHA512 9eda11e4fb5688864b3228c4daad98ec0c5d2d55cfb642a99d49760f4f19bdc5b37d3a1221487102d1348939655874433b1a5b8ae1959954e74f7064b5d72a58 WHIRLPOOL 5880716a53bac74f1e9f27498ff1166469a06fc41c286a8579be28676c392cd88c169ddcf19cd23ad391563c1b463c90b57401f0d3bf92ed720976644c8d031c
diff --git a/sys-auth/pam_krb5/metadata.xml b/sys-auth/pam_krb5/metadata.xml
new file mode 100644
index 000000000000..71e7342266d5
--- /dev/null
+++ b/sys-auth/pam_krb5/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ </maintainer>
+ <maintainer type="person">
+ <email>eras@gentoo.org</email>
+ <name>Eray Aslan</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>kerberos@gentoo.org</email>
+ <name>Kerberos</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-auth/pam_krb5/pam_krb5-4.6.ebuild b/sys-auth/pam_krb5/pam_krb5-4.6.ebuild
new file mode 100644
index 000000000000..baf3eece846d
--- /dev/null
+++ b/sys-auth/pam_krb5/pam_krb5-4.6.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit multilib
+
+DESCRIPTION="Kerberos V PAM Authentication Module"
+HOMEPAGE="http://www.eyrie.org/~eagle/software/pam-krb5"
+SRC_URI="http://archives.eyrie.org/software/kerberos/pam-krb5-${PV}.tar.gz"
+
+LICENSE="|| ( BSD-2 GPL-2 )"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 s390 sh sparc x86 ~amd64-fbsd"
+IUSE=""
+
+DEPEND="
+ virtual/krb5
+ virtual/pam"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${P/_/-}"
+
+src_configure() {
+ econf \
+ --libdir=/$(get_libdir)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc NEWS README TODO
+
+ rm "${D}/$(get_libdir)/security/pam_krb5.la"
+}
diff --git a/sys-auth/pam_krb5/pam_krb5-4.7.ebuild b/sys-auth/pam_krb5/pam_krb5-4.7.ebuild
new file mode 100644
index 000000000000..709f956ff39a
--- /dev/null
+++ b/sys-auth/pam_krb5/pam_krb5-4.7.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit multilib
+
+DESCRIPTION="Kerberos V PAM Authentication Module"
+HOMEPAGE="http://www.eyrie.org/~eagle/software/pam-krb5"
+SRC_URI="http://archives.eyrie.org/software/kerberos/pam-krb5-${PV}.tar.gz"
+
+LICENSE="|| ( BSD-2 GPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd"
+IUSE=""
+
+DEPEND="
+ virtual/krb5
+ virtual/pam"
+
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${P/_/-}"
+
+src_configure() {
+ econf \
+ --libdir=/$(get_libdir)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc NEWS README TODO
+
+ rm "${D}/$(get_libdir)/security/pam_krb5.la"
+}
diff --git a/sys-auth/pam_ldap/Manifest b/sys-auth/pam_ldap/Manifest
new file mode 100644
index 000000000000..0ffd7aa6e5b4
--- /dev/null
+++ b/sys-auth/pam_ldap/Manifest
@@ -0,0 +1,10 @@
+DIST pam_ldap-183.tar.gz 127500 SHA256 aabce29413280efc992ba10f16ec8ab3c1bf06feebebf598d3b625ad36a715d0 SHA512 ad1ec398904c54f31aa71d3b59ecbdf4af14c590077f9e683d87fa3940f4e20aab7e1bd59eac7a9bfb985e30c1ea04a1569aa2dc2dfc39d8ccec8b871cc032c7 WHIRLPOOL b20fc273e1b0c97e51d10d7e7f8f706b28e896842e3d65638aa2cc304fe88f1cadc6d76271e9e49fa17d4a8ca4ad8ef1c7bc44701a7bf6a6eddb81cf37c2d0b3
+DIST pam_ldap-184.tar.gz 128053 SHA256 2dd4df6bfddd80580af599dbfb631f907d796df478c22949af4552eaf750c6f3 SHA512 9fd6f11b271a85b4a5646dfb1061cf82de7ca65cf24aa5309aaa8b39bf2bfad900e0e17f52a4d4e10d034188ca7a89d7764a9f1c6766aa6f11caf7779ad667df WHIRLPOOL 8288ef50864bf364cc18805c2a9f596aae787e57845ffa3bb772fbcb50a78e45120369c550cff3396baac9c45db8e75a3d282283736e00d2d2eaa0e1576da730
+DIST pam_ldap-186.tar.gz 163437 SHA256 c8fe22d559d5a3f528b24eb97175085f188c0f11ade337a868590ac0e0716453 SHA512 aaa6fbc48150db53bf92dcf600bcb8f0526baa2e6124f46468f59958c8a91495eb003d16a45b659c8cbb2d3481c4732a0d1f5945a2c98c09549ef8a51ed18a3d WHIRLPOOL c5024e94a1c93eb701cc5b9694e401cd5e03d33ca8fa5043d70c1b35fa092e916e89c206d8c2eb635410e32a6a1059705d23ca541a0e4c47efa42605b88258d0
+EBUILD pam_ldap-183.ebuild 944 SHA256 6039c4d59f5182c3e9bddd98d6b6a7816ba1fe580b6f2c3675ec9c6fd9f2e136 SHA512 4771e92976cfaea2ce836db5c06a2cbf281545ba69e316899a5d2e06452ebc4db33e32971563973bf043a8d6736dc1762237051132443c76be942f0e3f11705c WHIRLPOOL d9d7e0627b76429d200d624a2a21491dbb4f3596b0208391bc5b35c4e382e03fbf1c828e845521b74c50b5d4aa5b56c77e14c2c5b8e6521d8a1444d51eab3c28
+EBUILD pam_ldap-184.ebuild 957 SHA256 919d8f66f1e2688ce85ac25dacc6b0820af3fff4f859376f71dcb27d1e3ef823 SHA512 28edb52962178ed75be096be8549f153fc769fe15dbf3269baf520bb1b723db3bd7848069d4e69d6cdd550c34687b7665001dfe023a90b5e91239893b30115ea WHIRLPOOL 45c8d8605147f9897138728489b14564ca559780882b432fe51bf0e6401b5b65a8c2370f2f1d1a2a59b3ac0b766df1e5585864cb6677cc63b6630c024d95d83b
+EBUILD pam_ldap-186-r1.ebuild 1291 SHA256 2a438c28e46548b3bc518571fd453512f6d9abf60b7710b4d324fc6e5846148a SHA512 08e0c429883f894dc63b6d83601109135ac2202d1d7bfd65e5f75b275ce487a94856011fb9f0e0909c5a12e2e431be1eef9e7f6304b916d23b709bb8ad62020f WHIRLPOOL 21e69fd8edcd7cc0b897654456b1f79b0db509618accc555ecde5bd391dcbfa703d838a295d09f6309538787f1b6c6ac069cadd754d55324e5e038bb49ab2652
+EBUILD pam_ldap-186.ebuild 896 SHA256 725048dae6fcc5327e17800ae51f5390cb5dc01d4580d9dddef288844c860644 SHA512 29e7eddb69f22a4aee698095bf6384d0d11880021318a00f28390dba9aea5d065f3b29f811c4560a86dbcb1b6762fff61253ab431f979c1cbee12fd755a5e5f4 WHIRLPOOL 47564003e413f014aa73d61b93fab7e5466d640897de6d882a244a24ebcdebd2b6f7e5cab06137fdc0354e773b2fcdd9236eddd90334811590dc398dbde94985
+MISC ChangeLog 2584 SHA256 8eb246bef1a92ca0209ffb824bf60753ff939d4d13fd81b6f4a3371cd272cbd5 SHA512 d6e785bbdf928c6260adfb9896e4898bb8e6eb659480c3fce83553d02ce3170600db6403ef6056f611245f32f528397fea0e63c61b8a8dd2a53ab0c16ce5a229 WHIRLPOOL 93a01af0b165b37ce5ef5b500560e174f07db507333942ebf87309623caa0ec6200c80950c54d0ccab98f47a71fc24b8327055baaf772a3d1c1b154ae38a81b5
+MISC ChangeLog-2015 10099 SHA256 99dc0f6ffcd32be203a9fd0883f498f0867c0bf9a53bca107beb5f36968905d8 SHA512 cf8155834459e76c019f23e6f248f3d12bf6e576d9dd7f69a8a78ebeac26fc737211828d009e55739b8fc26b0dea87e827277dd4fab233f936e1f1a742abe054 WHIRLPOOL 1cb0ccbaa461667b9901a49df99225004ac048a1186179e459df53e7ba31702554d85027f16be669049bead012c2264e9f7a8a61eca9d3488d3df05dd56e09fd
+MISC metadata.xml 216 SHA256 19ce68efef070227126c83a3e201828ffd4c567d3dedc0c7dc9e80a4f8df06c7 SHA512 206ec8bb38d85f19b567f88093ad55291639b5ae484be283f0fa05e2a5d69a108805c08ab3ff94278344ee20f252187309310d5a2d2d4151f2e972ed0e3fb7c5 WHIRLPOOL f199e5cb1b73ccae7b6bd3be51773f655ac3c64fcc87da9ea1c3b23278704faca317ce24ab31951c2548efa89bdb7f836b466700e4efbf2252a215708a137e57
diff --git a/sys-auth/pam_ldap/metadata.xml b/sys-auth/pam_ldap/metadata.xml
new file mode 100644
index 000000000000..6338e4a49a67
--- /dev/null
+++ b/sys-auth/pam_ldap/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+<email>pam-bugs@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/sys-auth/pam_ldap/pam_ldap-183.ebuild b/sys-auth/pam_ldap/pam_ldap-183.ebuild
new file mode 100644
index 000000000000..98f0d2342388
--- /dev/null
+++ b/sys-auth/pam_ldap/pam_ldap-183.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils pam autotools
+
+DESCRIPTION="PAM LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/pam_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 LGPL-2 )"
+SLOT="0"
+KEYWORDS="alpha amd64 hppa ~mips ppc ppc64 sparc x86"
+IUSE="ssl sasl"
+DEPEND=">=sys-libs/glibc-2.1.3
+ >=sys-libs/pam-0.72
+ >=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )"
+
+src_unpack() {
+ unpack ${A}
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-176-fix-referral-tls.patch
+
+ cd "${S}"
+ eautoreconf
+}
+
+src_compile() {
+ econf --with-ldap-lib=openldap `use_enable ssl` || die
+ emake || die
+}
+
+src_install() {
+ dopammod pam_ldap.so
+
+ dodoc pam.conf ldap.conf ldapns.schema chsh chfn certutil
+ dodoc ChangeLog CVSVersionInfo.txt README AUTHORS ns-pwd-policy.schema
+ doman pam_ldap.5
+
+ docinto pam.d
+ dodoc pam.d/*
+}
diff --git a/sys-auth/pam_ldap/pam_ldap-184.ebuild b/sys-auth/pam_ldap/pam_ldap-184.ebuild
new file mode 100644
index 000000000000..54dcfc628392
--- /dev/null
+++ b/sys-auth/pam_ldap/pam_ldap-184.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils pam autotools
+
+DESCRIPTION="PAM LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/pam_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 LGPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="ssl sasl"
+DEPEND=">=sys-libs/glibc-2.1.3
+ >=sys-libs/pam-0.72
+ >=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )"
+
+src_unpack() {
+ unpack ${A}
+ #EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-176-fix-referral-tls.patch
+
+ cd "${S}"
+ eautoreconf
+}
+
+src_compile() {
+ econf --with-ldap-lib=openldap `use_enable ssl` || die
+ emake || die
+}
+
+src_install() {
+ dopammod pam_ldap.so
+
+ dodoc pam.conf ldap.conf ldapns.schema chsh chfn certutil
+ dodoc ChangeLog CVSVersionInfo.txt README AUTHORS ns-pwd-policy.schema
+ doman pam_ldap.5
+
+ docinto pam.d
+ dodoc pam.d/*
+}
diff --git a/sys-auth/pam_ldap/pam_ldap-186-r1.ebuild b/sys-auth/pam_ldap/pam_ldap-186-r1.ebuild
new file mode 100644
index 000000000000..a1817e2870d3
--- /dev/null
+++ b/sys-auth/pam_ldap/pam_ldap-186-r1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils multilib-minimal pam
+
+DESCRIPTION="PAM LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/pam_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 LGPL-2 )"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd"
+IUSE="ssl sasl"
+
+DEPEND="|| ( >=sys-libs/glibc-2.1.3 >=sys-freebsd/freebsd-lib-9.1 )
+ >=virtual/pam-0-r1[${MULTILIB_USEDEP}]
+ >=net-nds/openldap-2.4.38-r1[${MULTILIB_USEDEP}]
+ sasl? ( >=dev-libs/cyrus-sasl-2.1.26-r3[${MULTILIB_USEDEP}] )"
+RDEPEND="${DEPEND}
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508-r7
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )"
+
+multilib_src_configure() {
+ local myconf=(
+ --with-ldap-lib=openldap
+ $(use_enable ssl)
+ )
+ use sasl || myconf+=( ac_cv_header_sasl_sasl_h=no )
+
+ ECONF_SOURCE=${S} \
+ econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ PERL5LIB=${S} \
+ emake
+}
+
+multilib_src_install() {
+ dopammod pam_ldap.so
+}
+
+multilib_src_install_all() {
+ dodoc pam.conf ldap.conf ldapns.schema chsh chfn certutil
+ dodoc ChangeLog CVSVersionInfo.txt README AUTHORS ns-pwd-policy.schema
+ doman pam_ldap.5
+
+ docinto pam.d
+ dodoc pam.d/*
+}
diff --git a/sys-auth/pam_ldap/pam_ldap-186.ebuild b/sys-auth/pam_ldap/pam_ldap-186.ebuild
new file mode 100644
index 000000000000..da78691c7d9f
--- /dev/null
+++ b/sys-auth/pam_ldap/pam_ldap-186.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils pam
+
+DESCRIPTION="PAM LDAP Module"
+HOMEPAGE="http://www.padl.com/OSS/pam_ldap.html"
+SRC_URI="http://www.padl.com/download/${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 LGPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="ssl sasl"
+DEPEND="|| ( >=sys-libs/glibc-2.1.3 >=sys-freebsd/freebsd-lib-9.1 )
+ virtual/pam
+ >=net-nds/openldap-2.1.30-r5
+ sasl? ( dev-libs/cyrus-sasl )"
+
+src_unpack() {
+ unpack ${A}
+
+ cd "${S}"
+}
+
+src_compile() {
+ econf --with-ldap-lib=openldap `use_enable ssl` || die
+ emake || die
+}
+
+src_install() {
+ dopammod pam_ldap.so
+
+ dodoc pam.conf ldap.conf ldapns.schema chsh chfn certutil
+ dodoc ChangeLog CVSVersionInfo.txt README AUTHORS ns-pwd-policy.schema
+ doman pam_ldap.5
+
+ docinto pam.d
+ dodoc pam.d/*
+}
diff --git a/sys-auth/pam_mktemp/Manifest b/sys-auth/pam_mktemp/Manifest
new file mode 100644
index 000000000000..3d443770be71
--- /dev/null
+++ b/sys-auth/pam_mktemp/Manifest
@@ -0,0 +1,6 @@
+AUX pam_mktemp-1.1.1-e2fsprogs-libs.patch 1613 SHA256 a271e66a96c758d752eb185dfc03d6367ca5dfaf8735b0bbb6dd178beeaafaac SHA512 8ba4836d9fcf4fd44f8f210c81c9bb3152051dff291b5e9b94f569b94bc1602990fd27defe80a3c971061a94a076aedb1289a06599d16749ebaacac923d4e488 WHIRLPOOL dc70da019d6767529ebe217cd80dd01bf61a60bdce28c6213a75d902e54273dba02351682bd238a1b2429409ebeaac6957c08ed7d0f9d6fd0424f69a4ba038d6
+DIST pam_mktemp-1.1.1.tar.gz 6754 SHA256 66cf80c18439ca3456db96402f2eeac14b1a0503cc1d1be7f2b16d5f079f3f3d SHA512 e2e42115a1fe70c128397d842dc69f96863d721dfa886ebc21b5e8249333adc671d74213ecf1222d65417cd4747eb6114f515271fd7eac4376a2b7e28925996d WHIRLPOOL 3d59873ffad85de82c385a3d5f6c221a2fac061463bc85c176e401ba2456995b21448ba9b6518a876763753a654d880c5a4e723e123c5a5e10ecdf005cd0c7e4
+EBUILD pam_mktemp-1.1.1.ebuild 1241 SHA256 1622042504c5a5fff8b056f7c1d4ded00fb89206509efabcf0811621dbc8f51a SHA512 de42baf1b53ded97a39a36cbd381a8a6a28fc14c0df7789aaa83802ef6cb1a92533e36d1ea02a5a06d1671aafbbbeb68a1525b20ecdb387e5e2a32fb54d66cd7 WHIRLPOOL 39daaeb122d0db0c8fd98349ab6ea4f43019cca715682a359db46dcaaf4d522af070eb513854d03f4555f0ff968c012c8a269edfb9e4bf930e0e0983e8f885c8
+MISC ChangeLog 3012 SHA256 b925b05a9d7b850382fe2730e88262ced02fa1e29572a83d058674d1970ee98e SHA512 93857039b442d015a7d9101d3085d7155c5b8db16d41d0d88c1f50896a7072ab6531228add4048eb539a5a8dd23e81f6a04e147ffe5c89cd24915bc57ebff9af WHIRLPOOL 824a84cf07bef45b02be837b874082ddfde7c0c1221262f3fb5da01f42e627fcd695e76180f768de61602adfc5125917d34f8db95a801c3d398b7cb2a817a705
+MISC ChangeLog-2015 3561 SHA256 9b8e13bf1ad774aa471ca45e1c7b3739bae093ac4eae0651ceb3d836aa552af8 SHA512 03324dea8dc11a2a8ff2bdb388f8765044aaeeb4f79db85f2a3793ba16366dcfe48586d116ca9b239f0ea610aba42122672215578b0ffe37aadb6689d22bd7c3 WHIRLPOOL 2ba18cc1778b97ce891944a8d276b90156cb35f0ebb56df612b831820631a44836a1a49a1621b79f3063086e91fc9be313fd8dd5edc9d51ea3bd85e28eb617c3
+MISC metadata.xml 500 SHA256 47a8717ee0e9a5a22be7a251d380049f247ee54c487d545d1c17e0cebb0372dc SHA512 3754bf9bdd145d97ed13da18f21de463a4f8a58f89cb42e4a820a5ac8813ffa0d0dd0df986b6a1e278f7ad58974920e49dd7769e0dfce136106ff3a164a6cdcc WHIRLPOOL a5ff8ab5a89b92b325c226aa453698bb14d81bb0b7c0f56510473b94f01ce40b17b914684f4dba32beaf032445b540e96711e1c25ce1ed0e25d07b4c2e4e946e
diff --git a/sys-auth/pam_mktemp/files/pam_mktemp-1.1.1-e2fsprogs-libs.patch b/sys-auth/pam_mktemp/files/pam_mktemp-1.1.1-e2fsprogs-libs.patch
new file mode 100644
index 000000000000..34e1a8591f77
--- /dev/null
+++ b/sys-auth/pam_mktemp/files/pam_mktemp-1.1.1-e2fsprogs-libs.patch
@@ -0,0 +1,49 @@
+Index: pam_mktemp-1.1.1/pam_mktemp.c
+===================================================================
+--- pam_mktemp-1.1.1.orig/pam_mktemp.c
++++ pam_mktemp-1.1.1/pam_mktemp.c
+@@ -55,7 +55,7 @@
+ */
+ # include <fcntl.h>
+ # include <sys/ioctl.h>
+-# include <ext2fs/ext2_fs.h>
++# include <linux/fs.h>
+ #else
+ # undef USE_APPEND_FL
+ #endif /* HAVE_APPEND_FL */
+@@ -88,7 +88,7 @@ static int ext2fs_chflags(const char *na
+ if ((fd = open(name, O_RDONLY)) < 0)
+ return -1;
+
+- if (ioctl(fd, EXT2_IOC_GETFLAGS, &old_flags)) {
++ if (ioctl(fd, FS_IOC_GETFLAGS, &old_flags)) {
+ if ((errno == ENOTTY) /* Inappropriate ioctl for device */
+ || (errno == ENOSYS)) /* Function not implemented */
+ errno = EOPNOTSUPP;
+@@ -98,7 +98,7 @@ static int ext2fs_chflags(const char *na
+
+ new_flags = (old_flags | set) & ~clear;
+ if (new_flags != old_flags)
+- retval = ioctl(fd, EXT2_IOC_SETFLAGS, &new_flags);
++ retval = ioctl(fd, FS_IOC_SETFLAGS, &new_flags);
+
+ if (close(fd))
+ retval = -1;
+@@ -233,7 +233,7 @@ PAM_EXTERN int pam_sm_open_session(pam_h
+ */
+
+ #ifdef USE_APPEND_FL
+- ext2fs_chflags(PRIVATE_PREFIX, EXT2_APPEND_FL, 0);
++ ext2fs_chflags(PRIVATE_PREFIX, FS_APPEND_FL, 0);
+ #endif /* USE_APPEND_FL */
+
+ userdir = malloc(strlen(PRIVATE_PREFIX) + strlen(user) + 2);
+@@ -260,7 +260,7 @@ PAM_EXTERN int pam_sm_open_session(pam_h
+ } else {
+ /* Don't let the append-only flag get inherited
+ * from the parent directory. */
+- if (ext2fs_chflags(userdir, 0, EXT2_APPEND_FL) &&
++ if (ext2fs_chflags(userdir, 0, FS_APPEND_FL) &&
+ errno != EOPNOTSUPP)
+ goto out;
+ #endif /* HAVE_APPEND_FL */
diff --git a/sys-auth/pam_mktemp/metadata.xml b/sys-auth/pam_mktemp/metadata.xml
new file mode 100644
index 000000000000..e3e873af7723
--- /dev/null
+++ b/sys-auth/pam_mktemp/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+<email>swegener@gentoo.org</email>
+</maintainer>
+<maintainer type="project">
+<email>pam-bugs@gentoo.org</email>
+<name>Pluggable Authentication Method maintenance</name>
+</maintainer>
+<use>
+<flag name="prevent-removal">If supported, set EXT2_APPEND_FL on /tmp/.private to prevent temporary directories from being removed</flag>
+</use>
+</pkgmetadata>
diff --git a/sys-auth/pam_mktemp/pam_mktemp-1.1.1.ebuild b/sys-auth/pam_mktemp/pam_mktemp-1.1.1.ebuild
new file mode 100644
index 000000000000..e79e64aea6ca
--- /dev/null
+++ b/sys-auth/pam_mktemp/pam_mktemp-1.1.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+
+inherit toolchain-funcs pam eutils
+
+DESCRIPTION="Create per-user private temporary directories during login"
+HOMEPAGE="http://www.openwall.com/pam/"
+SRC_URI="http://www.openwall.com/pam/modules/${PN}/${P}.tar.gz"
+
+LICENSE="BSD-2" # LICENSE file says "heavily cut-down 'BSD license'"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="selinux +prevent-removal"
+
+RDEPEND="virtual/pam
+ selinux? ( sys-libs/libselinux )"
+DEPEND="${RDEPEND}
+ prevent-removal? ( sys-kernel/linux-headers )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-e2fsprogs-libs.patch
+}
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS} -fPIC" \
+ LDFLAGS="${LDFLAGS} --shared -Wl,--version-script,\$(MAP)" \
+ USE_SELINUX="$(use selinux && echo 1 || echo 0)" \
+ USE_APPEND_FL="$(use prevent-removal && echo 1 || echo 0)"
+}
+
+src_install() {
+ dopammod pam_mktemp.so
+ dodoc README
+}
+
+pkg_postinst() {
+ elog "To enable pam_mktemp put something like"
+ elog
+ elog "session optional pam_mktemp.so"
+ elog
+ elog "into /etc/pam.d/system-auth!"
+}
diff --git a/sys-auth/pam_mount/Manifest b/sys-auth/pam_mount/Manifest
new file mode 100644
index 000000000000..b58c285f7d44
--- /dev/null
+++ b/sys-auth/pam_mount/Manifest
@@ -0,0 +1,9 @@
+DIST pam_mount-2.14.tar.xz 312776 SHA256 6f66cbb34568875772d854d3f2a8948f97f3f1c7f30e3ea2474e1d4b227adcf9 SHA512 621fc13f01c625bb0c8cb9ac1b7bcfd9851f239b37c4479eb9ff958ad2b7f00698df32e32893558119f486e2e5fa05514f6e8e34498359c432db75706cc2477e WHIRLPOOL 6d4f74067e73cb61cb777d8125c2d4bb4e41510e4ec031b23f00cc3eb06c70312b6c53d785c2a4e3509a16fa1880b726bb165e3a81ba27b16d820180a776b30e
+DIST pam_mount-2.15.tar.xz 312076 SHA256 a54efb4a8e8dd52c77b15cd36d9354b4733bb9b4cae75083801c18e67fc12a24 SHA512 97252f3b65b1d1a42168b515c384a118e9f06fa68e2ceb9213cfc8ec4b967c52f2cb58742ebe117d7f5764551a371b7f71322a3de5f2912fc8722253081d77a4 WHIRLPOOL bbaacf839861d70e4fafdce07aad1f7fb35eb8c18cbd8d37520c60ff38cc8e21af428a0348a35d6ff134a5e198add201fb81b632832abd8ef75f04f8b3ce29e5
+DIST pam_mount-2.16.tar.xz 312316 SHA256 ae0207ea6c96189414f906a7b0880abc7751a98e26b3d0375c9afab3722471e7 SHA512 3a579d7287cfcaef831d3e54d3e912407b65a966303e81c47f445d601f38f866ce04326e3d37a061f74f97b9cfb201e56109f57e55699d15d8f947ae2b91c8e3 WHIRLPOOL dbda92627c55abe113cebfc2961d7ba5cf4d734f63099f407d40da6a8985a927311521f2e183cb1153f85156841c32d55a8ea1733ad5481aaecb1a079212dd12
+EBUILD pam_mount-2.14.ebuild 922 SHA256 322cf71bb86f69189db1feac3e54e5dda51ce955e501ac2a305c9a4b9f901b46 SHA512 0530001d56aeddd1d56afcc7da6e3d575d16f9c8b9d3383b10a16f73f16a2f391dce31f4633160c49b976a4f6c07a59781484c5575632b616d7df18abedbbc13 WHIRLPOOL b8fdf8e71e6462d499712d4566f229e9f622df4670ace2a56a78f8633d537f5ad95c663b195630205631ac74cbdd21a49a787d40cd02bb998d0dd5319a0a9251
+EBUILD pam_mount-2.15.ebuild 903 SHA256 1454eeea832d70998acbbed8b98e7983cc6a69b1ec9815ffe2cf03e12223ec28 SHA512 b8c5deb1f7f232c4b4d761a80e80da75d056dd99e07db804d54a1df3da645341eafd19d3ebe21d3f1978a359f543e9a4b40147cb7ecfa867a096710a272fc6fa WHIRLPOOL 0f2ccfbd0f8a5919940bbd58936d5263262b55fb915b416330a0e2ccb1932c0b0a43ac853ffe0afb84f43226ee7c26bea3281d01bf0b149e18fb7e040695a37f
+EBUILD pam_mount-2.16.ebuild 898 SHA256 cb8c1eb561975c995d0d8fa0d0a4930fe9f678886b929bf5114ae362f00df293 SHA512 4cee527f52a845f669752c59a583ba88b0be841a98e939567c4be2691d4385caa1af57f026ddc8c1d8cfeea54e3f753e9f55d6e12169dab7eabf658738b0d476 WHIRLPOOL d57edc9eea9f779d37a088348f3e17ed1ee9ad05098e13aca8b841ae6e2e9f7514fea2d282b3ca67c0a12aa50d73bbd5a852595221bdfe77bbc107e9cfe4f4f7
+MISC ChangeLog 2437 SHA256 55b218bdd6e4aa537fa02e2adf80af4c2fa88c03b2493ee5a7e5dd48335f188b SHA512 be2aaf2d5dcb0a25f22e6bf61a48a5c4908dcd91f62285f8160dd1201f27257194b879b56f41d8ff31bd319d7465da94ab8d4304346a0bc71d4959ad35b6d4b4 WHIRLPOOL b6e1ec6bb66fde4790607087dc8462ae5bd3fe0ed71b287ff0ee5a1f57d8012981c2448c750e1dff174648a851ccb2c4d35805af667b8588a2b0d247bcb8f05a
+MISC ChangeLog-2015 11090 SHA256 44897632f09ccdaa9198f32ed1835ddd8bbe6efc498b3a7fb4c48d29b3632974 SHA512 4a6f62445ecbf37a64853f1ab5877725393ffe1902dfcd97b4da1f27ac3e44c0b079629a96f8aad98016d12d30ddaf37fa1fb4a2d4ba96240eb85fe4e118ecd0 WHIRLPOOL 6d44f7595867eab9fbcf35da4aed5c52c6db13267b64cb5c9e854289ba1f76989d427ee1329a9a1d006ddbf412bb996e9bc820dfe62b15e93da23f756b8dbf1f
+MISC metadata.xml 402 SHA256 27526fc94bb84e27c6986250276115f2f86e462e3a8b87418cd1e8e32771ec9a SHA512 546dd1bb071d1cc634250930b70328fc83f8bb4ac8a857fc3ccddadae5fcfb48d0a40adb0845e07535c63fd2dd2e6ef91779c0b48b6d147efa7aeb7fcde412e1 WHIRLPOOL 8f52d2b9bc0885ed63f579ac25bc72d9c376d2d9eb8248bbb810d42aab6349b0f6fbb33b71d4220fa3708e3c729c2e8ac485ada43b66167b869ed074f1dc9464
diff --git a/sys-auth/pam_mount/metadata.xml b/sys-auth/pam_mount/metadata.xml
new file mode 100644
index 000000000000..c579fd57aaa2
--- /dev/null
+++ b/sys-auth/pam_mount/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>hanno@gentoo.org</email>
+ </maintainer>
+ <maintainer type="person">
+ <email>mattst88@gentoo.org</email>
+ <name>Matt Turner</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">pam-mount</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_mount/pam_mount-2.14.ebuild b/sys-auth/pam_mount/pam_mount-2.14.ebuild
new file mode 100644
index 000000000000..bef98ff742b8
--- /dev/null
+++ b/sys-auth/pam_mount/pam_mount-2.14.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit multilib
+
+DESCRIPTION="A PAM module that can mount volumes for a user session"
+HOMEPAGE="http://pam-mount.sourceforge.net"
+SRC_URI="mirror://sourceforge/pam-mount/${P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+IUSE="crypt ssl selinux"
+
+COMMON_DEPEND=">=sys-libs/pam-0.99
+ >=sys-libs/libhx-3.12.1
+ >=dev-libs/libxml2-2.6
+ crypt? ( >=sys-fs/cryptsetup-1.1.0 )
+ ssl? ( >=dev-libs/openssl-0.9.8 )
+ selinux? ( sys-libs/libselinux )"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ app-arch/xz-utils"
+RDEPEND="${COMMON_DEPEND}
+ >=sys-apps/util-linux-2.20"
+
+src_configure() {
+ econf --with-slibdir="/$(get_libdir)" \
+ $(use_with crypt cryptsetup) \
+ $(use_with ssl crypto) \
+ $(use_with selinux)
+}
+
+src_install() {
+ default
+ use selinux || rm -r "${D}"/etc/selinux
+ dodoc doc/*.txt
+}
diff --git a/sys-auth/pam_mount/pam_mount-2.15.ebuild b/sys-auth/pam_mount/pam_mount-2.15.ebuild
new file mode 100644
index 000000000000..d2d25b9e5962
--- /dev/null
+++ b/sys-auth/pam_mount/pam_mount-2.15.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit multilib
+
+DESCRIPTION="A PAM module that can mount volumes for a user session"
+HOMEPAGE="http://pam-mount.sourceforge.net"
+SRC_URI="mirror://sourceforge/pam-mount/${P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+IUSE="crypt ssl selinux"
+
+COMMON_DEPEND=">=sys-libs/pam-0.99
+ >=sys-libs/libhx-3.12.1
+ >=dev-libs/libxml2-2.6
+ crypt? ( >=sys-fs/cryptsetup-1.1.0 )
+ ssl? ( >=dev-libs/openssl-0.9.8 )
+ selinux? ( sys-libs/libselinux )"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig"
+RDEPEND="${COMMON_DEPEND}
+ >=sys-apps/util-linux-2.20"
+
+src_configure() {
+ econf --with-slibdir="/$(get_libdir)" \
+ $(use_with crypt cryptsetup) \
+ $(use_with ssl crypto) \
+ $(use_with selinux)
+}
+
+src_install() {
+ default
+ use selinux || rm -r "${D}"/etc/selinux
+ dodoc doc/*.txt
+}
diff --git a/sys-auth/pam_mount/pam_mount-2.16.ebuild b/sys-auth/pam_mount/pam_mount-2.16.ebuild
new file mode 100644
index 000000000000..becc55fc9ca3
--- /dev/null
+++ b/sys-auth/pam_mount/pam_mount-2.16.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multilib
+
+DESCRIPTION="A PAM module that can mount volumes for a user session"
+HOMEPAGE="http://pam-mount.sourceforge.net"
+SRC_URI="mirror://sourceforge/pam-mount/${P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+IUSE="crypt ssl selinux"
+
+COMMON_DEPEND=">=sys-libs/pam-0.99
+ >=sys-libs/libhx-3.12.1
+ >=dev-libs/libxml2-2.6
+ crypt? ( >=sys-fs/cryptsetup-1.1.0 )
+ ssl? ( dev-libs/openssl:0= )
+ selinux? ( sys-libs/libselinux )"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig"
+RDEPEND="${COMMON_DEPEND}
+ >=sys-apps/util-linux-2.20"
+
+src_configure() {
+ econf --with-slibdir="/$(get_libdir)" \
+ $(use_with crypt cryptsetup) \
+ $(use_with ssl crypto) \
+ $(use_with selinux)
+}
+
+src_install() {
+ default
+ use selinux || rm -r "${D}"/etc/selinux
+ dodoc doc/*.txt
+}
diff --git a/sys-auth/pam_mysql/Manifest b/sys-auth/pam_mysql/Manifest
new file mode 100644
index 000000000000..a415a7a83730
--- /dev/null
+++ b/sys-auth/pam_mysql/Manifest
@@ -0,0 +1,8 @@
+AUX pam_mysql-0.7_rc1-link-to-pam.diff 453 SHA256 fbd881e6d82ff1ef133cc6ff05b0de4d35df4944cdb7e89c9d781657312c54d8 SHA512 4a2f714cbe7e951a95ef2a4d22df702b6c3545f02333e30fafc69bf374dceb7f662107894df0c3cd0f1c8ceac241c85af4fb689fd6526e8b81350fc3f6a6e278 WHIRLPOOL 389d26d546db55339ca4b99c9188ca25a099ee624a5a33b61f620191a87f4933a3ddd71f9199c1b2a8d1cbfe6cf5b1a600c2f9201dd70fcdfad84d1ff1ab5b59
+AUX pam_mysql-0.7_rc1-memleak.diff 274 SHA256 d692bfb5bfe91e2da35346cd551b5978c68dcfe99e773e4dc750bbb7ced708dd SHA512 1ca65d2ea0eea7859863769a9763301d795c24aada9eb33b625789647fd076dcf976ab291f31149bf0d04a3482c150ec980aba81ec56ee01f57c724d80cee5f0 WHIRLPOOL 0830d07d25ea6be87378914590f0e94a540d03ec4a00891437f3f8f0cf80b8c59a3064be153e5b2576ef166d2b2e18075eea629be8be55acc04b395811c16bb5
+DIST pam_mysql-0.7RC1.tar.gz 335240 SHA256 cb3cf89b9b51cb196ee8d731f85acbab72b4878a3a7c4183c5534161d4385ce7 SHA512 c057999c62d29dfa7a07db9a8d33d0cf0377dae4770c73019bd85f67c9c92fc9dac36fa606739162a5f7b0f9fbd849e5833fee827febfe4af883b8c2ddbd8b4f WHIRLPOOL 4d47d4be6c95ad70705884f2023975a719d06915ac41738d7c28ceff2d57e0c58187b52314e1f11e0e4bcfe3b3471525a3e97591d653342847f1d2ed66ecdc57
+EBUILD pam_mysql-0.7_rc1-r4.ebuild 947 SHA256 eb897eb689914d790afbaf8dd747df2296a8ad2d5cd9e2fcc1ebcbfb40cc335a SHA512 31877907ee2506e88928ced3ab66ef221a53faeec26742d1fe60358a09864a4bdbe9ac6afd118dff13cabece94f246beb8f7389072080f19890f4d18772bd2d3 WHIRLPOOL 13fb39edf8c5fc4a82368022974dc96679a108d3869009fb1c52d91a3c922a54407950e32c11e46fc6acf75b3ced9921f56af1dbee984051962e43011562e258
+EBUILD pam_mysql-0.7_rc1-r5.ebuild 1155 SHA256 7af7443af1efbf1709d8466a44eca2b7044322df7d3df129e1e630c3ae486063 SHA512 2345868d1d5e30926a38e3a6e6a07f9cbfbc040f059fb16509704b53352a07c598a5d6ca24b6d08f0a77f8fe24fee785cda9e31327acbcd7b600d4e483330921 WHIRLPOOL f164182d7554a58c4c188b33b6af5818faa4025d332f52a43e42a1d1e0983edc1b5796b524205eed75d1cef240c5485b24fff83dc63613f6e640696099a59b18
+MISC ChangeLog 2595 SHA256 ce0a2499341ec71fec0290b6ebc6996853de8b5fbc54c8454859e40da17fee33 SHA512 8ec0c3d03232abbdf72c5648fb177a6cdd82eca22d250e8acf1d711013a6fb02b68b01eb0ebd2aaad22ef1795b24e8c3ceddf0e50ee00db6a50651254744929b WHIRLPOOL bdae0ae5c1a3b9c5661e53bd3cbc7ceaf494d1b5a06c2b33491a97d6a049c8122bc1c70be9684584f499e9d4beb9e80a16de826b562f869a02757dcc1c5e39dd
+MISC ChangeLog-2015 5036 SHA256 0d9b648bb39763ae08cbb834b9917fc799f1cb45266521a9a8a01b1610c6ef8a SHA512 075ab50f3023bf46cc4a8c19fe1931d77676e59ca8dd6b37b73efe3638f26faec97029b04083341f267e67c4bfa368d9b31085fd5a9c04871044f96dcb8d4e7c WHIRLPOOL fd397ee2142c08e55ed17cd40ec3573caaaac9ccc612a25948f841462629d027d03e70f6a9a7c9cd7135754d4c40dea4183cfd030abe303a9097ed875e4117d6
+MISC metadata.xml 404 SHA256 fe7811c3a70a3a3fa120d16c0029ab69c6649f64341e3a8c84181f4dca545a76 SHA512 d78e3f912015ea18a9385b21c0f7f4d29a2af8773c0a154fd41a1a16abc71af8a7d43b71fa66f835be1b44d3afc22f0333e741313dfccb6446d628962d25915b WHIRLPOOL e3794cf4d7c7ebde97a2d415896559481dbb4b14914f2b73a9f1660afebede889c775b97e5eaf46c7ac9080c368eafa641fcd693b9bee7de8c245fdf10c5c61b
diff --git a/sys-auth/pam_mysql/files/pam_mysql-0.7_rc1-link-to-pam.diff b/sys-auth/pam_mysql/files/pam_mysql-0.7_rc1-link-to-pam.diff
new file mode 100644
index 000000000000..0b32b37e9e05
--- /dev/null
+++ b/sys-auth/pam_mysql/files/pam_mysql-0.7_rc1-link-to-pam.diff
@@ -0,0 +1,9 @@
+--- pam_mysql-0.7RC1/Makefile.am 2005-09-20 07:43:44.000000000 +0200
++++ pam_mysql-0.7RC1-1/Makefile.am 2011-09-13 09:21:53.198200066 +0200
+@@ -3,5 +3,6 @@
+ noinst_FILES=pam_mysql.la pam_mysql.a
+ pam_mysql_la_SOURCES=pam_mysql.c
+ pam_mysql_la_LDFLAGS=-module -avoid-version
++pam_mysql_la_LIBADD=-lpam
+ INCLUDES=@INCLUDES@
+ EXTRA_DIST=COPYING NEWS README CREDITS ChangeLog INSTALL pam_mysql.spec.in install-sh missing mkinstalldirs pkg.m4 pam_mysql.spec
diff --git a/sys-auth/pam_mysql/files/pam_mysql-0.7_rc1-memleak.diff b/sys-auth/pam_mysql/files/pam_mysql-0.7_rc1-memleak.diff
new file mode 100644
index 000000000000..e746be72029d
--- /dev/null
+++ b/sys-auth/pam_mysql/files/pam_mysql-0.7_rc1-memleak.diff
@@ -0,0 +1,10 @@
+--- pam_mysql-0.7RC1/pam_mysql.c 2006-01-09 11:35:59.000000000 +0100
++++ pam_mysql-0.7RC1-1/pam_mysql.c 2011-10-18 20:26:38.655425994 +0200
+@@ -2338,6 +2338,7 @@
+ }
+
+ mysql_close(ctx->mysql_hdl);
++ mysql_library_end();
+
+ xfree(ctx->mysql_hdl);
+ ctx->mysql_hdl = NULL;
diff --git a/sys-auth/pam_mysql/metadata.xml b/sys-auth/pam_mysql/metadata.xml
new file mode 100644
index 000000000000..5caadde7fc50
--- /dev/null
+++ b/sys-auth/pam_mysql/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>mysql-bugs@gentoo.org</email>
+ <name>MySQL</name>
+ </maintainer>
+ <use>
+ <flag name="openssl">Use OpenSSL for md5 and sha1 support</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">pam-mysql</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_mysql/pam_mysql-0.7_rc1-r4.ebuild b/sys-auth/pam_mysql/pam_mysql-0.7_rc1-r4.ebuild
new file mode 100644
index 000000000000..a521b12c0351
--- /dev/null
+++ b/sys-auth/pam_mysql/pam_mysql-0.7_rc1-r4.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=2
+inherit autotools libtool pam eutils
+
+DESCRIPTION="pam_mysql is a module for pam to authenticate users with mysql"
+HOMEPAGE="http://pam-mysql.sourceforge.net/"
+
+SRC_URI="mirror://sourceforge/pam-mysql/${P/_rc/RC}.tar.gz"
+DEPEND=">=sys-libs/pam-0.72 virtual/mysql"
+RDEPEND="${DEPEND}"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 ppc ~sparc x86"
+IUSE="openssl"
+S="${WORKDIR}/${P/_rc/RC}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-link-to-pam.diff"
+ epatch "${FILESDIR}/${P}-memleak.diff"
+ eautoreconf
+ elibtoolize
+}
+
+src_configure() {
+ econf $(use_with openssl)
+}
+
+src_compile() {
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" libdir="$(getpam_mod_dir)" install || die "install failed"
+ rm "${D}/$(getpam_mod_dir)/pam_mysql.la" || die "Failed to remove pam_mysql.la"
+ dodoc CREDITS ChangeLog NEWS README
+}
diff --git a/sys-auth/pam_mysql/pam_mysql-0.7_rc1-r5.ebuild b/sys-auth/pam_mysql/pam_mysql-0.7_rc1-r5.ebuild
new file mode 100644
index 000000000000..1b2408a564f2
--- /dev/null
+++ b/sys-auth/pam_mysql/pam_mysql-0.7_rc1-r5.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit autotools-utils pam
+
+DESCRIPTION="pam_mysql is a module for pam to authenticate users with mysql"
+HOMEPAGE="http://pam-mysql.sourceforge.net/"
+
+SRC_URI="mirror://sourceforge/pam-mysql/${P/_rc/RC}.tar.gz"
+DEPEND="
+ openssl? ( dev-libs/openssl:0= )
+ >=sys-libs/pam-0.72:0=
+ virtual/mysql:0=
+ "
+RDEPEND="${DEPEND}"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 ppc sparc x86"
+IUSE="openssl"
+S="${WORKDIR}/${P/_rc/RC}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-link-to-pam.diff"
+ "${FILESDIR}/${P}-memleak.diff"
+ )
+DOCS=( CREDITS ChangeLog NEWS README )
+AUTOTOOLS_AUTORECONF="yes"
+AUTOTOOLS_PRUNE_LIBTOOL_FILES="modules"
+
+src_prepare() {
+ # Update autotools deprecated file name and macro for bug 468750
+ mv configure.in configure.ac || die "configure rename failed"
+ sed -i s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/ configure.ac || die "sed failed"
+ autotools-utils_src_prepare
+}
+
+src_configure() {
+ local myeconfargs=( $(use_with openssl) )
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install libdir="$(getpam_mod_dir)"
+}
diff --git a/sys-auth/pam_p11/Manifest b/sys-auth/pam_p11/Manifest
new file mode 100644
index 000000000000..7a72339809f9
--- /dev/null
+++ b/sys-auth/pam_p11/Manifest
@@ -0,0 +1,5 @@
+DIST pam_p11-0.1.6.tar.gz 351244 SHA256 666c58a9789567e3598669f16fbee324cff9b0a91a5902d2ecef3e7a51555ad4 SHA512 92ea894dfe605400dd3684b67bfb3fa4a4b6b67f0818791b492dd002063ebcf85eeb93c07d2f60ece98e579f298061c2e0c225554b6dc618bb1e335ac69f36b0 WHIRLPOOL 5879bf159f1bb90dd97c82b35ae227c244af48a05dcf326c3e1e34f6c1ec70d22385d1a36c6412495c718ee7a0ea3c5726f4e27ec10089a751869999d817d61f
+EBUILD pam_p11-0.1.6.ebuild 611 SHA256 ce7865015ccc0af33e943868553a8ebbd1a72301fd960dd754b44a2e05fd9d6e SHA512 d500cae47e3bea469f7597e818a630ff95a07d1722ef0841fe6062916caa62216f730380efadd7e474652d36deec6fa5ca9812497041bcb361a1aaada1b2133b WHIRLPOOL 4e07e522361068fbcf430318b3f46d75460c6488f68e4b9a6f8bb1e12771054693e9f30ebd8be60c9d5bbcd29502c242b28a1b343c35fe48224578a30a10461e
+MISC ChangeLog 2457 SHA256 61cbaefa87bf6fa63ddf3609add1447cc7f5cc8d0238f2bb632379fc9612b04a SHA512 778e272de22726943dadb513897f5b07ff3a3d0866f496d312b254b2a4cf9445020cfd10273747869568199e2eab171c574d12a612ef81958d0775280b67a8a0 WHIRLPOOL f6095492cedaebe106f10d50e4971e0bb0e2e5f5fe8252cd0e661291287d2b8cbce0b87ebed1aa1c9dc28fbf7dacfe64c00a5eedee48d91035605f5d72b2cc53
+MISC ChangeLog-2015 4854 SHA256 97c16f0c2ab72ace10acc5a06169c84e957275bea0806c7ec3e18c3f0150447d SHA512 55387230a1952bf99e285bc595c9675b9cbbb042f8810b6230ecb4bb2697003b9378a5880b3f69469a3dcb4c1b4c7c30d532425d9376db47a45b90ef197bcaeb WHIRLPOOL 91c28aa43b53aca5fca404ade03f4d4c58336608f158c45abfcf91dbd84389e4ae127cf185408fa41387320d74435a282a58d54fbaca766b0ed08fd26f9f0b73
+MISC metadata.xml 528 SHA256 5ba5fc31b46bfa83d85f40aa1d5498989051ec1c32e233b043a2214a4af75119 SHA512 7d3ab0a89f1be52b1937fe300710c23ca4c24c548448b5c7edd5b6817c45a0a184fef8e07d60c0c4f6f9e1ee2fdb843dc6ceb95e5731ce9e9d76f98ae5b7e652 WHIRLPOOL 35c67be6ef119dd23c41a4ba740c0ee5df8ae39f3818c7cea0d4e95bde604aa6022e37cedc008c94a7cf3dc7bdb900f23086879fceb92e086eea57d930ecfb21
diff --git a/sys-auth/pam_p11/metadata.xml b/sys-auth/pam_p11/metadata.xml
new file mode 100644
index 000000000000..869d7547d645
--- /dev/null
+++ b/sys-auth/pam_p11/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>crypto@gentoo.org</email>
+ <name>Crypto</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ <name>Pluggable Authentication Method maintenance</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">opensc</remote-id>
+ <remote-id type="github">opensc/pam_p11</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_p11/pam_p11-0.1.6.ebuild b/sys-auth/pam_p11/pam_p11-0.1.6.ebuild
new file mode 100644
index 000000000000..b3747044554b
--- /dev/null
+++ b/sys-auth/pam_p11/pam_p11-0.1.6.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit pam
+
+DESCRIPTION="PAM module for authenticating against PKCS#11 tokens"
+HOMEPAGE="https://github.com/opensc/pam_p11/wiki"
+SRC_URI="https://github.com/OpenSC/${PN}/releases/download/${P}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 sparc x86"
+IUSE=""
+
+RDEPEND="virtual/pam
+ dev-libs/libp11
+ dev-libs/openssl:0="
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_install() {
+ dopammod src/.libs/pam_p11_opensc.so
+ dopammod src/.libs/pam_p11_openssh.so
+}
diff --git a/sys-auth/pam_passwdqc/Manifest b/sys-auth/pam_passwdqc/Manifest
new file mode 100644
index 000000000000..613618f55b4f
--- /dev/null
+++ b/sys-auth/pam_passwdqc/Manifest
@@ -0,0 +1,10 @@
+AUX pam_passwdqc-1.0.4-makefile.patch 1505 SHA256 8736d920f457f8192302c77a8bf344c53b5f91605eaebc14bb044e30f28abe99 SHA512 59139e2c9bec335cc036d7b375e691ef545ac9ee3553582b9447c931c0cd65920b6d0106e5ff37030ebe5d50ca826fe7a3995d312890ce9ba0e00714cc747e5b WHIRLPOOL 528b50c9bf7ea454f837b3e4d1d3e655add49785ba3a07cf7d496fcf296f59ac82b1a31ffd79519711459d8bc5720c0d65a9ab05e7a75709f10638d00a2f1711
+AUX pam_passwdqc-1.0.5-makefile.patch 1245 SHA256 98ae79c4a6e742b391c81b686a7475ced85d61946012f7c78a52e389c20530ae SHA512 d4c5ca882f17b51ababc62a863653f70603763de99a0b8db9129d319100dbe4055b3ad7a9dbdcc6f3bca0be06521a7b5ef20856ef8e5b954097040a91b850d35 WHIRLPOOL 475d90e909abeb85e3ca1d485349dcae5b231147826c0273afa6c0a2987a58fcedec74b10b6bb2ef0bc4af1d9b11e7b008c12f83e9cb606483196846dcf47bad
+DIST pam_passwdqc-1.0.4.tar.gz 30572 SHA256 192d0eb131f203fd809c371751aa1a670df044190b56444b1e6576d8c8672cb6 SHA512 f9ea432614b5ce68a76d2fad0d290f5c9400e1185c8a893eb716b232c03c037a5cd725403b4ff74cd432d7368788dca708fafbc1b4305dd14089405d56c540d7 WHIRLPOOL 0bc050e7ac80aac9db225d5b7da0c0e2552b8efbfd4d3fcfbc01a1804a5b1957360b44ce51985b3f4c2332b165a2411f6345ffb0f8aefc814be2987481f45472
+DIST pam_passwdqc-1.0.5.tar.gz 29973 SHA256 32528ddf7d8219c788b6e7702361611ff16c6340b6dc0f418ff164aadc4a4a88 SHA512 8ae6cb4cc520b06b05fadf60ac360964721a8a1e4481aff9cd7247c203e62b58d3aed4c14ba687b303de820689e0f5cdcf070fd396b7e13b0aae4cc5d1442235 WHIRLPOOL 78876bfcb8cf9225f393b5ad3edfb1b603f4a53d5c9f34856cffb838cacc97e270b94e14774e67f419599bbee0eb532bc62b32aa78f3e10f48ad8668cceb9008
+EBUILD pam_passwdqc-1.0.4.ebuild 1054 SHA256 a59ff971d3310ad853f0094637bbb79559c8f43f97864d9f0ad9cd7c12685ddb SHA512 c146b436d0f0fb13f466bb0b21b5482bc5b94ab11398d4cd610b102ab9e3eca3734953db455b9d3c0da6c351a5f182d256181b6956f13016e19842f25c1670e0 WHIRLPOOL fe76c3095b31beffa4e7ec3ab58252aec65801b4bc3f1998c124f8221a0d50362f0d2b7f2859fd803ea74a2c7b7227e079a8446b53e4d4ad5cc9f133852f20b4
+EBUILD pam_passwdqc-1.0.5.ebuild 1120 SHA256 a17cbaff339c3eb24b2ad01e6b4edb15c97b17f6f4055cce2dc0ea554cf1c72e SHA512 04c7befb362ead9947121fd20bf40a8f6dd5dd359876ce6359bb86a6928fe72705921fbb4635cc57c21935d7e4691380e98c82c0874cf96dec5afe7c288934c1 WHIRLPOOL b6f472ea0f333fc8fb2708e9c019cf2f16d3a88c30dd0e24052fb6acd513091767a6bce8d271c697e8b41ec7499b9e04693d2fd53fb7af3ca0888a07acd82a82
+EBUILD pam_passwdqc-1.3.0.ebuild 480 SHA256 77f97dd0057c6afe2ffdb3fd901588ad50904c1ae5a3cfe40f65ce01dea02188 SHA512 c8344e37c9c64488a6e7cb14b93d34e761ffecb699e5e4263a0f7c4d8efb216602bfc6deb457774fe79aa4084d31f214789713af0f328b03f2be0a15cfe845c7 WHIRLPOOL 22d3f57ff4cdc5d0d1f89ffde03d5f087f4b047c966fb63ba13932ad08219f753e733acbdaacdc9497b18d23e6bdcddf26365be707ca29161c44f7146c1fa8db
+MISC ChangeLog 2656 SHA256 d3ff6a5e1823ad08c975381d1d6f16dbc7ae6b5169ac3286c6712310cead3ef5 SHA512 6710d4338d64707515d79f9e6fc9e25dafb9894283c0e32f257536e0a16c380e519194ecff3ca45381dc1f2439d43f32b84b4755f8fbd19fd7abaa9cbd2fba2d WHIRLPOOL c710213cb6c9edaf8c8e8eb175b984d8ae46a3a3165f625002db79482393499ac5fb2c79dfc9a4e5a72feed7b831ac054ec4f9a00d4198a64940496147af6217
+MISC ChangeLog-2015 5132 SHA256 d6f84e92e0bc15f4c0ab1c507e2f7c2249459f2b68cafcc8b22ae45b5a1f5bb2 SHA512 5092a7eafe58f8ef0972a8c56bcd89133764825d6e204ea6b94660f40b01d23f688dd6ec1e730c875e80d602a90fe7164c1eeffab50022dba6c24356e6fb9d6a WHIRLPOOL 1168e512002f7e548d07e1ccaaabccdfb9e0052db3ce39ff130160eff2aabd468cb16a8bfaf222152e47ba6f34e0deaaf0c1174a573c2ef0c0f7af6ef0c7eff8
+MISC metadata.xml 578 SHA256 72fbe9c6c6fe8c285193237012486be012cf3d358a48c20ae584dee5ae391b94 SHA512 c30a7c29140cc19f56ef40c0854bc5f59b8feae8cb6e6c1a325d5bb9e44b2d9d691b3f33aa5610916787c3fa3cfa5111f46537c7f17845658607520629a4e6c5 WHIRLPOOL 293a258650949fff46bf24813ecb866d659a4716be2802503c4e4631659ab5c2b2d1dc884b2263c36c92f9a75eb233e513c1095268b2dee4eb82941455d68932
diff --git a/sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.4-makefile.patch b/sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.4-makefile.patch
new file mode 100644
index 000000000000..13f8bd435ddf
--- /dev/null
+++ b/sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.4-makefile.patch
@@ -0,0 +1,44 @@
+Index: pam_passwdqc-1.0.4/Makefile
+===================================================================
+--- pam_passwdqc-1.0.4.orig/Makefile
++++ pam_passwdqc-1.0.4/Makefile
+@@ -7,11 +7,11 @@ LD = $(CC)
+ RM = rm -f
+ MKDIR = mkdir -p
+ INSTALL = install -c
+-CFLAGS = -Wall -fPIC -O2
+-LDFLAGS = -s --shared
+-LDFLAGS_LINUX = -s --shared -Wl,--version-script,$(MAP)
+-LDFLAGS_SUN = -s -G
+-LDFLAGS_HP = -s -b
++CFLAGS = -Wall -fPIC $(OPTCFLAGS)
++LDFLAGS_GENERIC = --shared
++LDFLAGS_LINUX = --shared -Wl,--version-script,$(MAP)
++LDFLAGS_SUN = -G
++LDFLAGS_HP = -b
+ LDLIBS = -lpam -lcrypt
+ LDLIBS_LINUX = -lpam -lcrypt
+ LDLIBS_SUN = -lpam -lcrypt
+@@ -41,18 +41,18 @@ MAP = pam_passwdqc.map
+ all:
+ if [ "`uname -s`" = "Linux" ]; then \
+ $(MAKE) CFLAGS="$(CFLAGS) -DHAVE_SHADOW" \
+- LDFLAGS="$(LDFLAGS_LINUX)" LDLIBS="$(LDLIBS_LINUX)" \
++ LDFLAGS="$(LDFLAGS) $(LDFLAGS_LINUX)" LDLIBS="$(LDLIBS_LINUX)" \
+ $(PROJ); \
+ elif [ "`uname -s`" = "SunOS" ]; then \
+ $(MAKE) CFLAGS="$(CFLAGS) -DHAVE_SHADOW" \
+- LD=ld LDFLAGS="$(LDFLAGS_SUN)" LDLIBS="$(LDLIBS_SUN)" \
++ LD=ld LDFLAGS="$(LDFLAGS) $(LDFLAGS_SUN)" LDLIBS="$(LDLIBS_SUN)" \
+ $(PROJ); \
+ elif [ "`uname -s`" = "HP-UX" ]; then \
+ $(MAKE) CFLAGS="$(CFLAGS) -DHAVE_SHADOW" \
+- LD=ld LDFLAGS="$(LDFLAGS_HP)" LDLIBS="$(LDLIBS_HP)" \
++ LD=ld LDFLAGS="$(LDFLAGS) $(LDFLAGS_HP)" LDLIBS="$(LDLIBS_HP)" \
+ $(PROJ); \
+ else \
+- $(MAKE) $(PROJ); \
++ $(MAKE) LDFLAGS="$(LDFLAGS) $(LDFLAGS_GENERIC)" $(PROJ); \
+ fi
+
+ $(LIBSHARED): $(OBJS) $(MAP)
diff --git a/sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.5-makefile.patch b/sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.5-makefile.patch
new file mode 100644
index 000000000000..20375b76a381
--- /dev/null
+++ b/sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.5-makefile.patch
@@ -0,0 +1,35 @@
+Index: pam_passwdqc-1.0.5/Makefile
+===================================================================
+--- pam_passwdqc-1.0.5.orig/Makefile
++++ pam_passwdqc-1.0.5/Makefile
+@@ -7,8 +7,8 @@ LD = $(CC)
+ RM = rm -f
+ MKDIR = mkdir -p
+ INSTALL = install -c
+-CFLAGS = -Wall -fPIC -O2
+-LDFLAGS = --shared
++CFLAGS = -Wall -fPIC -O2 $(OPTCFLAGS)
++LDFLAGS_GENERIC = --shared
+ LDFLAGS_LINUX = --shared -Wl,--version-script,$(MAP)
+ LDFLAGS_SUN = -G
+ LDFLAGS_HP = -b
+@@ -41,16 +41,16 @@ MAP = pam_passwdqc.map
+ all:
+ case "`uname -s`" in \
+ Linux) $(MAKE) CFLAGS="$(CFLAGS) -DHAVE_SHADOW" \
+- LDFLAGS="$(LDFLAGS_LINUX)" LDLIBS="$(LDLIBS_LINUX)" \
++ LDFLAGS="$(LDFLAGS) $(LDFLAGS_LINUX)" LDLIBS="$(LDLIBS_LINUX)" \
+ $(PROJ);; \
+ SunOS) $(MAKE) CFLAGS="$(CFLAGS) -DHAVE_SHADOW" \
+- LD=ld LDFLAGS="$(LDFLAGS_SUN)" LDLIBS="$(LDLIBS_SUN)" \
++ LD=ld LDFLAGS="$(LDFLAGS) $(LDFLAGS_SUN)" LDLIBS="$(LDLIBS_SUN)" \
+ $(PROJ);; \
+ HP-UX) $(MAKE) CFLAGS="$(CFLAGS) -DHAVE_SHADOW" \
+- LD=ld LDFLAGS="$(LDFLAGS_HP)" LDLIBS="$(LDLIBS_HP)" \
++ LD=ld LDFLAGS="$(LDFLAGS) $(LDFLAGS_HP)" LDLIBS="$(LDLIBS_HP)" \
+ $(PROJ);; \
+- *) $(MAKE) $(PROJ);; \
++ *) $(MAKE) LDFLAGS="$(LDFLAGS) $(LDFLAGS_GENERIC)" $(PROJ);; \
+ esac
+
+ $(LIBSHARED): $(OBJS) $(MAP)
diff --git a/sys-auth/pam_passwdqc/metadata.xml b/sys-auth/pam_passwdqc/metadata.xml
new file mode 100644
index 000000000000..6d9cd6a9f8eb
--- /dev/null
+++ b/sys-auth/pam_passwdqc/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+<email>pam-bugs@gentoo.org</email>
+</maintainer>
+<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/pam_passwdqc/pam_passwdqc-1.0.4.ebuild b/sys-auth/pam_passwdqc/pam_passwdqc-1.0.4.ebuild
new file mode 100644
index 000000000000..0d721858e4b8
--- /dev/null
+++ b/sys-auth/pam_passwdqc/pam_passwdqc-1.0.4.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit pam eutils toolchain-funcs
+
+DESCRIPTION="Password strength checking for PAM aware password changing programs"
+HOMEPAGE="http://www.openwall.com/passwdqc/"
+SRC_URI="http://www.openwall.com/pam/modules/pam_passwdqc/${P}.tar.gz"
+
+LICENSE="Openwall BSD public-domain"
+SLOT="0"
+KEYWORDS="alpha ~amd64 arm ~hppa m68k ~mips ppc s390 sh ~sparc x86"
+
+DEPEND="virtual/pam"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+
+ cd "${S}"
+ epatch "${FILESDIR}/${P}-makefile.patch"
+}
+
+src_compile() {
+ emake \
+ OPTCFLAGS="${CFLAGS}" \
+ CC="$(tc-getCC)" \
+ LD="$(tc-getCC)" \
+ || die "emake failed"
+}
+
+src_install() {
+ dopammod pam_passwdqc.so
+
+ doman pam_passwdqc.8
+ dodoc README PLATFORMS INTERNALS
+}
+
+pkg_postinst() {
+ elog
+ 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."
+ elog
+}
diff --git a/sys-auth/pam_passwdqc/pam_passwdqc-1.0.5.ebuild b/sys-auth/pam_passwdqc/pam_passwdqc-1.0.5.ebuild
new file mode 100644
index 000000000000..106358f09379
--- /dev/null
+++ b/sys-auth/pam_passwdqc/pam_passwdqc-1.0.5.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit pam eutils toolchain-funcs
+
+DESCRIPTION="Password strength checking for PAM aware password changing programs"
+HOMEPAGE="http://www.openwall.com/passwdqc/"
+SRC_URI="http://www.openwall.com/pam/modules/pam_passwdqc/${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 ~amd64-linux ~x86-linux"
+
+DEPEND="virtual/pam"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+
+ cd "${S}"
+ epatch "${FILESDIR}/${P}-makefile.patch"
+}
+
+src_compile() {
+ emake \
+ OPTCFLAGS="${CFLAGS}" \
+ CC="$(tc-getCC)" \
+ LD="$(tc-getCC)" \
+ || die "emake failed"
+}
+
+src_install() {
+ dopammod pam_passwdqc.so
+
+ doman pam_passwdqc.8
+ dodoc README PLATFORMS INTERNALS
+}
+
+pkg_postinst() {
+ elog
+ 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."
+ elog
+}
diff --git a/sys-auth/pam_passwdqc/pam_passwdqc-1.3.0.ebuild b/sys-auth/pam_passwdqc/pam_passwdqc-1.3.0.ebuild
new file mode 100644
index 000000000000..fa6c22ac00d2
--- /dev/null
+++ b/sys-auth/pam_passwdqc/pam_passwdqc-1.3.0.ebuild
@@ -0,0 +1,14 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+DESCRIPTION="Stub ebuild to help migrate to newer package name"
+HOMEPAGE="http://www.openwall.com/passwdqc/"
+
+LICENSE="Openwall BSD public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+
+DEPEND="sys-auth/passwdqc[pam]"
+RDEPEND="${DEPEND}"
diff --git a/sys-auth/pam_radius/Manifest b/sys-auth/pam_radius/Manifest
new file mode 100644
index 000000000000..afeb606a8234
--- /dev/null
+++ b/sys-auth/pam_radius/Manifest
@@ -0,0 +1,7 @@
+AUX pam_radius-1.3.17-gentoo.patch 1061 SHA256 768b55e3cd6c7cf4c159af5b896d27041d16a81d7334f0400a14d4ec367c44dc SHA512 1dfd9aa33e7da3982633797bd00a6ebb765c614798f4cc2ae072d721466f88a0f4a5dfb146a274a9ea7147fff51bd61e6e64e24ca0776ea29818400196013a4e WHIRLPOOL b3c0038237ff522be348daeb6292aa1f85ad323b30dc7a06e133003ba43defec01be16e1a855e6be2191ed00b218d30f25c083fefe4e7c7b860773003ce3261e
+AUX server 955 SHA256 1f936dd73ae61d305f18be2ca3465531f2ce9cdad3e393dd8f2a807db6e08c03 SHA512 c91b321973d6452e952ab8a8c43f916a73a01426f53d398444618297b86037ce146017674f51796749dc272f6914967e0ca3c8b40a2f0199f62c1519b8212d81 WHIRLPOOL c802e67005956cc971d0cba8863e54db0d3ad3261325f4c843c112986c346a5e91489fbf0f2cd37cb82bf3c1820d1b4bd17d42300725ecfaafbe0ec714567cdf
+DIST pam_radius-1.3.17.tar.gz 31341 SHA256 60ee863cbea797be46eff8b9d568af057c6e54335bdb19a6bd2cadde389d7dca SHA512 82fc1431e8fc18c389880da4f93490363af8acd605283a5923c531fede77f449324f1ac4850783355cc7d610b3ee73bd172c94d8b73800c3deaa649af4c41060 WHIRLPOOL 4f0ad918c4bbe7a74fb1b3b3a292842fd8610ae12b3f9d21895c02efade27833c9c85ff42efce03e7500b4389198bb198bc0ecc87555e745ef0f4841a25a7262
+EBUILD pam_radius-1.3.17-r1.ebuild 1080 SHA256 b44c20134a4e7adfeb963de7c2b4966c35406979741c6deb89fbd7ee2cceb299 SHA512 12565f548c903e1eff417f31cd13d43e1e51b977c3b25ac3cc21921dccd7e719c38e2e0197ee76a2a7a1139f277f0a1e25052ac6eabb3d45a20f14b9b9a4f19b WHIRLPOOL 7236f74fc1d87d6c0b36e4e7927effbcbb7249a4536abb16abf3040d217dfd632a244010f99bbd57b69cc50795099a2c9c3e40ceba48fff2b61b4d1bb698b056
+MISC ChangeLog 2893 SHA256 9bf4d62eb9591062ec53f64aa3b77b199d6e336d88efba1c632f520aca0ce2c6 SHA512 5b0728a8ca9b55208dfeccf3cc02ff7b485a0a3ac3d4020e4f0ddef0fe264a83e1aee1d959df43f5d9259d0ccc44b713b5ef986d5ca1101f44ba794db166e70e WHIRLPOOL ee462eff2245d0790f43d3b0ecc73072c62401ea5e30ddc8d4eb1352b05bedc8f3597813e0064d781c32915dbbed1d70773486496e10790e039b3248de97f0c5
+MISC ChangeLog-2015 751 SHA256 e928bf8eb89dd4df72e22a1c800ca6bc7b9cb5201b106701133c93070b08e9e6 SHA512 677d0d114f2342fcf9f7a3f17a66d65fcb9057af342a3b583cb883d49314d85285a3489c37c36e8eeb18d338c81ba47dc4e9ba8253e1094de27e22be4446b6c5 WHIRLPOOL 0bf8f48bd049a6a7a9d19adc8cb2874291bfc9aca255398740dbe7c757dfff9d73614c57f231a1d2685a004ab7941a1c93f2c09adfde9f588bf16a7032cb04bd
+MISC metadata.xml 491 SHA256 e8738cddaef61da7cc3a8aa30c62a4738aca448becbdb88ffb7dcf9e555fe464 SHA512 31db96c750befa2da4be15f3f69bb9b86ad1682bfaaf34cf646d521c2670cedaeb7fbeeabc4f0e5c3f066d95ee07e287ce5504d97d579b898d282c91a3f0fe23 WHIRLPOOL af37f1b909a2e36cc60592ed3083595437fd4bc2f2a4f6ad5df374edbb2217427a386d9060aea4c0a378e405cfd92e1fb5c52fa9f30b46b95da60148dbd3284c
diff --git a/sys-auth/pam_radius/files/pam_radius-1.3.17-gentoo.patch b/sys-auth/pam_radius/files/pam_radius-1.3.17-gentoo.patch
new file mode 100644
index 000000000000..3e0b02f7020d
--- /dev/null
+++ b/sys-auth/pam_radius/files/pam_radius-1.3.17-gentoo.patch
@@ -0,0 +1,27 @@
+diff -Nru pam_radius-1.3.17.orig/pam_radius_auth.c pam_radius-1.3.17/pam_radius_auth.c
+--- pam_radius-1.3.17.orig/pam_radius_auth.c 2007-03-26 11:36:13.000000000 +0200
++++ pam_radius-1.3.17/pam_radius_auth.c 2008-06-28 08:43:24.000000000 +0200
+@@ -1062,7 +1062,7 @@
+ pam_sm_authenticate(pam_handle_t *pamh,int flags,int argc,CONST char **argv)
+ {
+ CONST char *user;
+- CONST char **userinfo;
++ CONST char *userinfo;
+ char *password = NULL;
+ CONST char *rhost;
+ char *resp2challenge = NULL;
+diff -Nru pam_radius-1.3.17.orig/USAGE pam_radius-1.3.17/USAGE
+--- pam_radius-1.3.17.orig/USAGE 2008-06-28 08:43:43.000000000 +0200
++++ pam_radius-1.3.17/USAGE 2008-06-28 08:42:57.000000000 +0200
+@@ -3,9 +3,9 @@
+
+ The pam configuration can be:
+ ...
+-auth sufficient /lib/security/pam_radius_auth.so [options]
++auth sufficient pam_radius_auth.so [options]
+ ...
+-account sufficient /lib/security/pam_radius_auth.so
++account sufficient pam_radius_auth.so
+
+ ---------------------------------------------------------------------------
+
diff --git a/sys-auth/pam_radius/files/server b/sys-auth/pam_radius/files/server
new file mode 100644
index 000000000000..4c31e60ae856
--- /dev/null
+++ b/sys-auth/pam_radius/files/server
@@ -0,0 +1,23 @@
+# This is pam_radius_auth configuration file.
+#
+# There are 3 fields per line in this file. There may be multiple
+# lines. Blank lines or lines beginning with '#' are treated as
+# comments, and are ignored. The fields are:
+#
+# server[:port] secret [timeout]
+#
+# the port name or number is optional. The default port name is
+# "radius", and is looked up from /etc/services The timeout field is
+# optional. The default timeout is 3 seconds.
+#
+# If multiple RADIUS server lines exist, they are tried in order. The
+# first server to return success or failure causes the module to return
+# success or failure. Only if a server fails to response is it skipped,
+# and the next server in turn is used.
+#
+# The timeout field controls how many seconds the module waits before
+# deciding that the server has failed to respond.
+#
+# server[:port] shared_secret timeout (s)
+# 127.0.0.1 secret 1
+# other-server other-secret 3
diff --git a/sys-auth/pam_radius/metadata.xml b/sys-auth/pam_radius/metadata.xml
new file mode 100644
index 000000000000..3bc72a583bde
--- /dev/null
+++ b/sys-auth/pam_radius/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ <name>Pluggable Authentication Method maintenance</name>
+ </maintainer>
+ <longdescription>
+ This is the PAM to RADIUS authentication module. It allows any
+ PAM-capable machine to become a RADIUS client for authentication
+ and accounting requests.
+ </longdescription>
+</pkgmetadata>
diff --git a/sys-auth/pam_radius/pam_radius-1.3.17-r1.ebuild b/sys-auth/pam_radius/pam_radius-1.3.17-r1.ebuild
new file mode 100644
index 000000000000..1fa29ffb2f23
--- /dev/null
+++ b/sys-auth/pam_radius/pam_radius-1.3.17-r1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils pam toolchain-funcs
+
+DESCRIPTION="PAM RADIUS authentication module"
+HOMEPAGE="http://www.freeradius.org/pam_radius_auth/"
+SRC_URI="ftp://ftp.freeradius.org/pub/radius/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/pam"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gentoo.patch
+}
+
+doecho() {
+ echo "$@"
+ "$@" || die
+}
+
+src_compile() {
+ # using the Makefile would require patching it to work properly, so
+ # rather simply re-create it here.
+
+ pammod_hide_symbols
+ doecho $(tc-getCC) ${CFLAGS} -shared -fPIC ${LDFLAGS} *.c -lpam -o pam_radius_auth.so
+}
+
+src_install() {
+ dopammod pam_radius_auth.so
+
+ insopts -m600
+ insinto /etc/raddb
+ doins "${FILESDIR}"/server
+
+ dodoc README Changelog USAGE
+}
+
+pkg_postinst() {
+ elog "Before you can use this you'll have to add RADIUS servers to /etc/raddb/server."
+ elog "The usage of pam_radius_auth module is explained in /usr/share/doc/${PF}/USAGE."
+}
diff --git a/sys-auth/pam_require/Manifest b/sys-auth/pam_require/Manifest
new file mode 100644
index 000000000000..425d21251ff9
--- /dev/null
+++ b/sys-auth/pam_require/Manifest
@@ -0,0 +1,5 @@
+DIST pam_require-0.7.tgz 84299 SHA256 91176b7587808862374ff6a8b7b30dd049cdb41d496e3528e02e3505e8037e96 SHA512 aba95c823bfcf35bca26881d79c904e9e77b86c2bf664ea63f16fa78304834a0e1e24a0392ce86cfd00309a35ad5d597f6d20a4d46139546b310daec86512198 WHIRLPOOL 7a2f859e4acc91fc681debbd43790219ae56fcfca59e4e707bdbcd67ec242b5e075b7b764f19c5aeda919dc87df728f81296aceac6c77cac0cc3e55faca72b29
+EBUILD pam_require-0.7.ebuild 633 SHA256 7ce5471f5816b6ceb188104ef1c9ff00489174ada7a8be2b1f5e4b9382d4dba6 SHA512 3bbccc572053a2d2ac0c3f1cab4f5b3ffd93e2a36c485b6b68cdc991fb035e971a6cdfc7408f673bc8e41c29e70d4852609797d4a6d675bb16716a7fe4610811 WHIRLPOOL 6cae6fc284c4a0f8d346b4489f2805643cd7551191a63af02a8669c9ae19dd3b9faa006695de3c721c2799df6e4ddcf773c23bc497be2d04a514189c2f60bd12
+MISC ChangeLog 2530 SHA256 8a8a5b6bfe735eed72c705bddab0a7613352b70723328708cc6c01115d084a30 SHA512 dea1eaf51ff402a788a3cad11410f176e89ea5fcf7a78f3c2e7c18f20a10d5299fefa249a45ada002049818c6d695a81a5d37143d46396962fb04665ba865c51 WHIRLPOOL b57be6bc28f7853bb0be80d61737c7605774c2470d5572e72bcd4d2a9b47b1d96329c78342548d7621c13ada8ef16fb078a128fd43bb293e9f9a4598f90aebf4
+MISC ChangeLog-2015 1507 SHA256 cccde0578bbaa0ee5d464e5e1196b004a0d87200dc04bf7e597f5cd65f5473dd SHA512 61fa7b6ee085bf35f13e7664e94fbdbaf8e1676b29daa0801b7be1410696cb2fc5762661b367157d05ec37c142450f1509cafdc54a37da03315481456836aca3 WHIRLPOOL b18538ca76c56a06f260fd4ddb5929671aafa0853ff895a9c13efe88b5e693f7efdeb54ce791a0b61b2863f82da53d88a482a45901866f988175329033e0205d
+MISC metadata.xml 166 SHA256 2caff447f5bd2701d8456ada5cc633c41ef4373fa4bfeabeb73599d40bcc941b SHA512 a56648c974a1d14dd4c18237532773c72057a13ab90c58b5da04f185e3c12a8bd8d5c21fb06053507f31766291a82dc7d87b34cd65fd94cfe2af7295c813ef84 WHIRLPOOL 1ff70497eca6531f0e0614c72a19f4b8e5ff486a58d369f4f0b36308d1d6b01168f9da887740e3b9f536236be251d3fe05f904d27a9233a7cf613416ba882968
diff --git a/sys-auth/pam_require/metadata.xml b/sys-auth/pam_require/metadata.xml
new file mode 100644
index 000000000000..6f49eba8f496
--- /dev/null
+++ b/sys-auth/pam_require/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<!-- maintainer-needed -->
+</pkgmetadata>
diff --git a/sys-auth/pam_require/pam_require-0.7.ebuild b/sys-auth/pam_require/pam_require-0.7.ebuild
new file mode 100644
index 000000000000..4804c0b1a5aa
--- /dev/null
+++ b/sys-auth/pam_require/pam_require-0.7.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils pam
+
+DESCRIPTION="Allows you to require a special group or user to access a service"
+HOMEPAGE="http://www.splitbrain.org/projects/pam_require"
+SRC_URI="http://www.splitbrain.org/_media/projects/pamrequire/${P}.tgz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ia64 ~ppc ~x86"
+IUSE=""
+
+DEPEND="virtual/pam"
+
+S=${WORKDIR}/${P/_/-}
+
+src_compile() {
+ ./configure --prefix=/ || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ dopammod "${S}/pam_require.so"
+
+ dodoc AUTHORS ChangeLog NEWS README
+}
diff --git a/sys-auth/pam_skey/Manifest b/sys-auth/pam_skey/Manifest
new file mode 100644
index 000000000000..d7822ca8d708
--- /dev/null
+++ b/sys-auth/pam_skey/Manifest
@@ -0,0 +1,6 @@
+DIST pam_skey-1.1.5-patches-6.tar.xz 9264 SHA256 a1e3f43a36cb570e0690394647912c7d51bb335326e1a74ea4f97cdf8c62854d SHA512 c777ed094efe9cbfb275cfb30d036e3a1bd9477b08297815f07156b432a2724f8c08e9e841ef6bf7ba62ccf7df361f541e59024b42164bd35d7eef16da1f75ec WHIRLPOOL 651509487e6a86fd5f96a3ab55d31ecb13cf5d95d0079679665feb0c828e49186325f0670094fda439a73b0e3fbfad4899e32b66220bd3a55e85120ed85b5101
+DIST pam_skey-1.1.5.tar.gz 76963 SHA256 31f56a85780aa59326c7da891687af3820e997a80805dc47171175481f3762f7 SHA512 12817cedf15a3b2287982e4beab5d3b388239cc0a1e141e66e41759ddb2da7fb9dd0df12202dcc8140db0868c8df1a8d19d5859224179e2419ffefd691cb9834 WHIRLPOOL 835da66136cde2a19580c3e75a59cb9eadbbcb76dc542d1c96825438dff5c835d392c2232cae785c2999bc3e65772f06c91dea5fb03b945312a1a3a641647f1e
+EBUILD pam_skey-1.1.5-r5.ebuild 1531 SHA256 60a5a45241951584ebe54f596c223e45efaa5201e00dad56d6d2d91622e6f919 SHA512 cd08947908ec7de45be172d19e44f1efc098f0acee1b93e884561ee9df0baba5cf46821abd8c842ee29169b41a77ea5e18fc652b24c36903a95ab33bf51df5aa WHIRLPOOL 0420e592149476795965ec2ca951ee381d9e63dd9a5040b25acf5b5eab1d446d3751061a0c969cf4160f66641501e7f445e2c6e911986633e68389ac11907d25
+MISC ChangeLog 2582 SHA256 1cafad93d1cb249b7c956a1b3edb7da31d1f34910846518cd0bbec6cf68d6c77 SHA512 06090d4e79a55aed217dfd116648af746cdb29a4462c96d616703a487e08beea60720aaf6d90558d286ac01c1463ea63dee909e46a9970de8cd7ca85107adc6a WHIRLPOOL 52906ad9834886639bd800b43d7828bebf26b0fd3776f2d63683bd974bd0dde1c89ef0c2f01c627406e0f1c87d8de9a7a12bb40d3a11c06b00d3ffe26823b9b7
+MISC ChangeLog-2015 3762 SHA256 c19e8926cf4e51730bceb7d596313caf05474d9a025c649234c3cd2812a75c94 SHA512 170863027e6a7796608108dd1949eb01d013224e13e3b130e4181fb4411423a8fdca94c6b479ede57dd5836ffcd75c1dd560c902560695013c716e187701de83 WHIRLPOOL b944dad55155810df39b0f19f32fc9f0ecd11481f8fd1e6b86dccc2376a4597bda182bb5249e1f382981b637fec029d428471b0d851226843690b56edc4fe185
+MISC metadata.xml 444 SHA256 0a908d1bd12c86a0c14a3e9f06984a56889bb5ce42dd95fcb1c61714ce53a460 SHA512 64531817fb541562dbc2340836e0bf3e7241238f96e49b8eee17930084ef21b3b729d1e27e691f1be6a0ba4d3b96e66dfa20c9379d20a7b9da593c6937e8bb4d WHIRLPOOL e40c28cf0776a95c6f5181661e4e19563ad8443f5f73c49d7b7930293fc83010171582759a187bca0de54610dc008f91d307953f884df3637319dc3a7b3bc8ab
diff --git a/sys-auth/pam_skey/metadata.xml b/sys-auth/pam_skey/metadata.xml
new file mode 100644
index 000000000000..4b171f573719
--- /dev/null
+++ b/sys-auth/pam_skey/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>ulm@gentoo.org</email>
+ </maintainer>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ <name>Pluggable Authentication Method maintenance</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="freshmeat">pam_skey</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_skey/pam_skey-1.1.5-r5.ebuild b/sys-auth/pam_skey/pam_skey-1.1.5-r5.ebuild
new file mode 100644
index 000000000000..3bf82c937ae0
--- /dev/null
+++ b/sys-auth/pam_skey/pam_skey-1.1.5-r5.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils pam autotools multilib readme.gentoo-r1
+
+DESCRIPTION="PAM interface for the S/Key authentication system"
+HOMEPAGE="http://freshmeat.net/projects/pam_skey/"
+SRC_URI="http://dkorunic.net/tarballs/${P}.tar.gz
+ mirror://gentoo/${P}-patches-6.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND=">=sys-libs/pam-0.78-r3
+ >=sys-auth/skey-1.1.5-r4"
+DEPEND="${RDEPEND}
+ app-arch/xz-utils"
+
+DOCS="README INSTALL"
+DOC_CONTENTS="To use the pam_skey module, you need to configure PAM
+ by adding a line like:
+ \n\nauth [success=done ignore=ignore auth_err=die default=bad] pam_skey.so\n
+ \nto an appropriate place in the /etc/pam.d/system-auth file.
+ Consult the README and INSTALL files in /usr/share/doc/${PF}
+ for detailed instructions.
+ \n\nPlease note that calling this module from unprivileged
+ applications, e.g. screensavers, is not supported.
+ \n\nError checking has become stricter in pam_skey-1.1.5-r4;
+ errors returned from the underlying skey library when accessing
+ the S/Key data base will no longer be ignored.
+ Make sure that your PAM configuration is correct."
+
+src_prepare() {
+ EPATCH_SUFFIX=patch epatch
+ epatch_user
+
+ cd autoconf
+ eautoconf
+ eautoheader
+ mv configure defs.h.in .. || die "mv failed"
+}
+
+src_configure() {
+ econf --libdir="/$(get_libdir)" CFLAGS="${CFLAGS} -fPIC"
+}
+
+src_install() {
+ default
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
diff --git a/sys-auth/pam_smb/Manifest b/sys-auth/pam_smb/Manifest
new file mode 100644
index 000000000000..e817d3cdde83
--- /dev/null
+++ b/sys-auth/pam_smb/Manifest
@@ -0,0 +1,8 @@
+AUX 10-pam_smb-bash-3.1.patch 559 SHA256 ebc731df2e247e38f8084b81596cb13a957696bf60c1cc5f05a8259f14de9e8c SHA512 4a99c4fa3428dfc01a846c7571c3355d0f07aaadf55e7e43bd57c2cae393ef1c4dff26533d381e88ef30a50ee0e756feeb1c658135057af5d55bea49ab408928 WHIRLPOOL 0f0f60fcf2655cf3e7592a45125457a2cf2b26a2ee51bed254da9b795f35354bb5c23ae21ca3007505408b4badc6a5983594f5ca719342adebde24fc91e05403
+AUX pamsmbd-init 356 SHA256 8f605d933a831b5d898b308f1e88120d9c9c98a0d5e3a23e69c130759676311c SHA512 2bf495c9915e025a3c89a127131c2489cca9b76a1995fe3a6c9e473cac22a4b5dd22ef80c42d42c0ddf759ea63ac643096711cb1db9331b8033de7f26b4634f4 WHIRLPOOL dc7a4c28794bfb70c8bfbddf30b317154de2569a5737ec92a4cb76f73fc6e7d904a1102086529adf25052ec1bb48aad51232888fb45f7bf3936f49d10fce6c5f
+DIST pam_smb-2.0.0-rc6.tar.gz 115069 SHA256 b787b11dade66b1078553fc0662843f3aa9f69629542ff5fd6802d62555295c5 SHA512 c41519ae2b657dd7cbbbeb6d097ec82fd2d0d5c0f51f658eecea98e7aaf4eb87975fc1bc6592d19dbef0a650e428ec69829270a3c119fdab9443cddd6facbe6a WHIRLPOOL c3a5aba05c6eb7ace1aa71dc802a057d4674e3d47bfe1549f41e25d13f750b271e9cb4a730364ba6d8bcabf322609c50652106277fdd7b9c02516c89bc320974
+EBUILD pam_smb-2.0.0_rc6-r1.ebuild 1096 SHA256 bb2eb710f515c70b8270140079f1869a015d5263a6db3d7f0c4ac74f6018d77b SHA512 92f7e84841de9f014578cf9dcb089db4647f629b5084be7a20175f8f842f0dc43f62640dca6ca9babbb717ccdc02592f13a19ad038f4c4ec26003fe231dd2cc6 WHIRLPOOL 6f3dc02e67c7d4504b4c02f85e78f59670c76605e04135f9636db23eed54508169b76abb598289e290c189dafb731bea784b3a2100d276884ab6aebdb5316676
+EBUILD pam_smb-2.0.0_rc6-r2.ebuild 1055 SHA256 e7774751da346f59061df3d2c3e5afced2681b5f73848eb85837ae6b715a5522 SHA512 339044de8279ab0482326a688970a569145bc7f8ec745c2007ad90753c2d901c4c915324dc6f923468453544b2249f77d0d8113fe71e061a1cde228e63f81b02 WHIRLPOOL 1e8a5018af670acdee24bd6a51bd190cda899c8d7eaabf8fd7e43d5a0ee84471bc0acfcb6c2357d3f6a60dce7b63019d2fbdb8fb9f1e0114876a58d82522e42e
+MISC ChangeLog 2442 SHA256 abbd4dfe98b7811bbbba96d4319fdea7c1cf7e0168e87e8ca07848f0e35c8595 SHA512 de3cbccd18694710ed89b5ea58426c39dbed5b4cab0d2010aed3920608206e8df049ae728769a8083ae95da2a86a6fc728a0b1baa07a19bfb92f33458990efda WHIRLPOOL 57e98c1a3919590fed0c191d9b89f91f1fac9992665fd355cb00e07b06947b3b8050b9de31dff4894106e255e37d196d2853120be7ed2c8be2d45eb2a3146556
+MISC ChangeLog-2015 2526 SHA256 0c2dfdb83f5e03638e80a0b0667b40ff6d56585c147bf08cf62831f10d01c5b5 SHA512 64cd9e389624d0e68deb1943d7a6d071dbd8751acc0e65cec5795d0bfba6b78481a083f35ff15fbec6a9da5de6717bac5e70517b2749f3cf2596a4c8c46ce0b4 WHIRLPOOL 10d4c47aff398d5674925796530a3b7fae4fff382de6664f6aab11d0f983622ef768d9036ca6d9235e1026fa84a87486ffb970ecf18b2f2c9f222657ccd12d61
+MISC metadata.xml 522 SHA256 feb6bc4a20f661cc6ea661d20f9a14e4a5dbbd51ee49976297de5a35a91c0acb SHA512 1ea0b00bb5b075243685de5dd76340ecc64f6694f299c8800039211d721635562f608a702c17394da508ad16dcdd2d88903405155b200901ed698d5b4b16c45d WHIRLPOOL 7eb058c450570689ce060746be92b5b0432d46dc841f9be0800fc847df2cda6b348bcd1008b6f8eab5ea91494d8d1dbb8ea643e7f84a77918ea588a2f9b39b6a
diff --git a/sys-auth/pam_smb/files/10-pam_smb-bash-3.1.patch b/sys-auth/pam_smb/files/10-pam_smb-bash-3.1.patch
new file mode 100644
index 000000000000..570655d82462
--- /dev/null
+++ b/sys-auth/pam_smb/files/10-pam_smb-bash-3.1.patch
@@ -0,0 +1,12 @@
+diff -Nurp pam_smb-2.0.0_rc6.orig/configure pam_smb-2.0.0_rc6/configure
+--- configure 2006-03-17 15:02:01.000000000 +0000
++++ configure 2006-03-17 15:02:01.000000000 +0000
+@@ -1486,7 +1486,7 @@ else
+ # results, and the version is kept in special file).
+
+ if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
+- system=MP-RAS-`awk '{print $3}' /etc/.relid'`
++ system=MP-RAS-`awk '{print $3}' /etc/.relid`
+ fi
+ if test "`uname -s`" = "AIX" ; then
+ system=AIX-`uname -v`.`uname -r`
diff --git a/sys-auth/pam_smb/files/pamsmbd-init b/sys-auth/pam_smb/files/pamsmbd-init
new file mode 100644
index 000000000000..ba11ef6cdfe0
--- /dev/null
+++ b/sys-auth/pam_smb/files/pamsmbd-init
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ need net
+}
+
+start() {
+ ebegin "Starting pamsmbd"
+ start-stop-daemon --start --quiet --exec /usr/sbin/pamsmbd
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping pamsmbd"
+ start-stop-daemon --stop --quiet --name pamsmbd
+ eend $?
+}
diff --git a/sys-auth/pam_smb/metadata.xml b/sys-auth/pam_smb/metadata.xml
new file mode 100644
index 000000000000..3b1eb11254dc
--- /dev/null
+++ b/sys-auth/pam_smb/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>samba@gentoo.org</email>
+ <name>Samba Team</name>
+</maintainer>
+<longdescription>
+The PAM SMB module, which allows authentication against a SMB (such as the Win_x families) server.
+</longdescription>
+<longdescription lang="ja">
+ PAM の SMB モジュールは SMB サーバ( Win_x ファミリの類)の認証を許します。
+</longdescription>
+</pkgmetadata>
diff --git a/sys-auth/pam_smb/pam_smb-2.0.0_rc6-r1.ebuild b/sys-auth/pam_smb/pam_smb-2.0.0_rc6-r1.ebuild
new file mode 100644
index 000000000000..efee20c4cd7d
--- /dev/null
+++ b/sys-auth/pam_smb/pam_smb-2.0.0_rc6-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils pam
+
+MY_P=${P/_rc/-rc}
+
+DESCRIPTION="The PAM SMB module, allows authentication against a SMB (such as the Win_x families) server"
+HOMEPAGE="http://www.csn.ul.ie/~airlied/pam_smb/"
+SRC_URI="
+ mirror://samba/pam_smb/v2/${MY_P}.tar.gz
+ http://www.csn.ul.ie/~airlied/pam_smb/v2/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~ppc x86"
+IUSE=""
+
+DEPEND=">=sys-libs/pam-0.75"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/10-pam_smb-bash-3.1.patch"
+}
+
+src_compile() {
+ econf --disable-root-only
+ emake || die "emake failed"
+}
+
+src_install() {
+ dopammod pamsmbm/pam_smb_auth.so
+ dosbin pamsmbd/pamsmbd
+
+ dodoc BUGS CHANGES README TODO faq/{pam_smb_faq.sgml,additions.txt}
+ docinto pam.d
+ dodoc pam_smb.conf*
+
+ newinitd "${FILESDIR}/pamsmbd-init pamsmbd"
+}
+
+pkg_postinst() {
+ echo
+ elog "You must create /etc/pam_smb.conf yourself, containing"
+ elog "your domainname, PDC and BDC. See example files in docdir."
+ echo
+}
diff --git a/sys-auth/pam_smb/pam_smb-2.0.0_rc6-r2.ebuild b/sys-auth/pam_smb/pam_smb-2.0.0_rc6-r2.ebuild
new file mode 100644
index 000000000000..0cac116f3aad
--- /dev/null
+++ b/sys-auth/pam_smb/pam_smb-2.0.0_rc6-r2.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils pam
+
+MY_P=${P/_rc/-rc}
+
+DESCRIPTION="The PAM SMB module, allows authentication against a SMB (such as the Win_x families) server"
+HOMEPAGE="http://www.csn.ul.ie/~airlied/pam_smb/"
+SRC_URI="
+ mirror://samba/pam_smb/v2/${MY_P}.tar.gz
+ http://www.csn.ul.ie/~airlied/pam_smb/v2/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~ppc ~x86"
+IUSE=""
+
+DEPEND=">=sys-libs/pam-0.75"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}/10-pam_smb-bash-3.1.patch"
+}
+
+src_configure() {
+ econf --disable-root-only
+}
+
+src_install() {
+ dopammod pamsmbm/pam_smb_auth.so
+ dosbin pamsmbd/pamsmbd
+
+ dodoc BUGS CHANGES README TODO faq/{pam_smb_faq.sgml,additions.txt}
+ docinto pam.d
+ dodoc pam_smb.conf*
+
+ newinitd "${FILESDIR}/pamsmbd-init pamsmbd"
+}
+
+pkg_postinst() {
+ echo
+ elog "You must create /etc/pam_smb.conf yourself, containing"
+ elog "your domainname, PDC and BDC. See example files in docdir."
+ echo
+}
diff --git a/sys-auth/pam_ssh/Manifest b/sys-auth/pam_ssh/Manifest
new file mode 100644
index 000000000000..e46cc62cf8c9
--- /dev/null
+++ b/sys-auth/pam_ssh/Manifest
@@ -0,0 +1,15 @@
+AUX pam_ssh-1.97-EOF.patch 433 SHA256 47315060f04fe991e443c9e9bfb8cc072c0d81d901ee6706cd29255ad08e44ac SHA512 3987eee53a3ef009aaaa0729d57cc33df9d94cd3e1288e450066b6d4df1b108eade079b6516a112a5b1eebec8a3b158405ed87b7edb8c39bb23e30499675ebb1 WHIRLPOOL b7cd8da53b9d88359ec55728c6f79035c401817eda7206ebd6fb21f6009dd11a56a1d698b0ba55df28ac3eca00c183ee42d42e35655b2242008a0f9dd59cc7e9
+AUX pam_ssh-1.97-doublefree.patch 975 SHA256 035b20e4cfc0e723166c44414216ed4234d130877f9d717c905c5f1697421df0 SHA512 a80592c8e36cc1a27de07e11c79a449d33fa9f976df459add7def643af4c2d65863e0b4e28f4f73038002fcf0c874ba583e9b96f30dc90a1ed161afa0d7d3efb WHIRLPOOL 6fc74640b368daac54f730cbf323d6cd77cc6ca3478e08e74c6e1ee71f4d3541525c7fd809034cb458a53a96b251f8eeae020cb388a2f2788f862b9956545170
+AUX pam_ssh-2.1-dot-ssh-check.patch 701 SHA256 c145bb267c77dc5896a34a1eb692315f451a8c520c4de26449a3c43c26057701 SHA512 96fd0d648115f5004a5a8b67f23240abdb2a58e46ba10009030bb1162561c1554fdf5c14c56605d7e1758dd1c2560a1b7647532a4c69c75df85e141df394d794 WHIRLPOOL 5f66c4231a7b049df295d7a26b5a1cc6a59720ed849a8e7430db0cfa7d37b03473f6b5478dd91a9deca53317eebaad9e8ed374baac3c26e97a15f71ba311125a
+AUX pam_symbols.ver 35 SHA256 3359a9186617879479a4e943a16bc8c69e4d0ab259e6b729f983ca9328616756 SHA512 40e2d23783153bdfefc9ec7d9caf818e1d157bfa4f3074434e034aae47e3aa7d08b04dedbe06ef60ed2a93729f0e04aa09cf8e9f6929dfb15e4ae49c75c9d0d9 WHIRLPOOL 38a5ec5d4befec6eaf034471f8c37554a42d56ed88f4586d7bf964a8f0850968ad0d94bc44f4fc0830e34edbef5f851eb58722cefb5be4916f68cc33a1ffe3d3
+DIST pam_ssh-1.97.tar.bz2 200184 SHA256 10233b0d3e480fdc977d4e3a1ea5a994cf1f257c3b948650a86e4d753796789d SHA512 78632ef5baf8c7ac6d28d16a4c7e452978ad09a969c562cfcc708b835dbba3da12317569a618768ef6f9d59db1d5d31f2a0c7b2ab1244ed9caa37eb89413494e WHIRLPOOL efe23d1d86f92298682edeb960e046d0c5def65961e3e51dc82bb244b98f76ac7b7a456fd80d31740e851602e8d8cd27d17d0b66ca6e0e44d1356982c4496887
+DIST pam_ssh-1.98.tar.bz2 292989 SHA256 30312f242c00551b120cc39defd3745b8cb50408ea845e8688d18d2a28b51180 SHA512 bf6da4ced0619549d56516c6b24e899664e0948da7a0cc04ff1b536d06cc8c26242c83eb36ed835668c824b777e270aa293162ac77e3c479311386e6e5da39ff WHIRLPOOL a62dccfec3a0208e8e94c0635aa1d8813ff3bbfeba5eebbff854c44638c51a547251a22460f78d08d34cc60b0318bcec622649b6a0dac030d159378451df09ae
+DIST pam_ssh-2.1.tar.xz 361000 SHA256 55fbe8488d59cff05a77523b4afc2e2a8d1ba35d93546f1828ec48e20e2600cb SHA512 8252b15efffa5687f740963f7a3c3479b73f99eca26a17155f915a10b9a71362a2778449adf10f01c174cc8545961ce3ea64459338a7c995c242b209529fd640 WHIRLPOOL e46d22325b06d9801d99d36b1045a4b8da0b8e874d83c6309353c54827189e47bbadb5789f498037829b6b9b9e618fec3ea5a441ac349643d93667fcf1dc2759
+EBUILD pam_ssh-1.97-r1.ebuild 1049 SHA256 cb9d61699605260aa035fe7a387f620f62917d661a067d88eda3f55db9cbe6af SHA512 5b63cea3bfb1a0c85b51bfd87a53dd4bd0685a9a70dcd8c7a3e5f58d71202de7704cfebec87bcc04d1d5fffd03f2b06c0d44acce112673c55aebaf18a8239632 WHIRLPOOL 737d78a9b7edc6d0a799c5e95d73c4cb20b467aa0e75c2321db91def11555545c6e1bd9da038f83a699c90a2bb36f78b85e274cbe7c3018a4a2aac0f37cac8d1
+EBUILD pam_ssh-1.97-r2.ebuild 1372 SHA256 f8ddd0392d5bbef5b179257367c74265c8a791f630b3762b1c04e5ed4b9bd286 SHA512 a08ad0de3d85fbe0c798082a52bd7dfb1e105850e96012e1cd59e68a4c53d9528378f8ad044f650383f7b89bae99332a1290972f8420b054372c723a7ac6f712 WHIRLPOOL d5d8c25f964527cc3d940c85af56caf279e600fc34ba04744fddaa6eaab960386d5584d9a752093f5525998189da8ba7915732c8b8b53b24f4348f586f5e9ada
+EBUILD pam_ssh-1.97-r3.ebuild 1420 SHA256 af309d429cc643e89a1c786bfa15bf5d64ec48e7845cf41e32ed7cd54151e11a SHA512 403f33e263f97cb1589d9178850b94fe2aaa85fe3fdc5919c673627a9ddf0f9310210cb6c0b054cc36225dbc09793190bf97b8849a2392816a7053ab0f9dccb3 WHIRLPOOL f381135e16e8798159b9ecdeccb51d009508fe5e443e4136b87e5eeb707238830c2d15c541e6a29e4a61918332cd7c1ca4b3b4c0adcc00b9600362a857cd77d5
+EBUILD pam_ssh-1.98.ebuild 1150 SHA256 1b8f08926c13d33d9b991cbdb2ea6a96abf467fc8e855aca52901223ce7268a4 SHA512 8d74d642a671baad3ad0a08037cafe9b59720cfb3c9e66b1a745599868b8809ebfc17bd273e7dc3d770e71e062318b982e48dfb13770da9acec76b9660419230 WHIRLPOOL 2835ec5a03636518a43a0b50b11fea1c6a8a120776cbf058aa13a9c0c7978731ad6db9b4412808e60e8eb9e8d323230be65a475a380afbab3fc948cca27ff17e
+EBUILD pam_ssh-2.1.ebuild 1674 SHA256 1c74616a9190054ad1bb586d6c4bca8ac21797ebe7231dc557155595271793e3 SHA512 12508a96cff523b740ee0dc8cded9ddec545124417e65290fabe7644f5cc9b96206804cf7f071b793722f41305ad4e49ba4612a97ebea6ee01036a5f37cbc62e WHIRLPOOL f4a1d5a4f6ef4f18fbd432f8c8fd437160a833538d528c8a5ed2ef662fb6bd652e360e1cd494d5383002b78220cac95e74bccaea6cdd0caeed0e9128d25b7442
+MISC ChangeLog 3045 SHA256 5c89320c22eae65d5106e2d3db75e70aa1c30491b5094f7ce4d7f0e2f71b1142 SHA512 5970b34279dd2f37f955bfc2f87d10224d00c8d57dbbe8d04d2c6a12f2b85230d27471fd270bd473a143d0ebdb03b54f3be4a35e49ad44724d35189437f370a1 WHIRLPOOL a62b915f7f2bb9344c9135c3dfa68d96f1166cd4f1228d8ff3d4de75d5c3f892cc0a54070689d6415112328f8deaff4415d741653638ca8ced1e14dd747993c7
+MISC ChangeLog-2015 8924 SHA256 2337eaead4e1ac5fcd83a6a6d1f902e793d53c3b22cdeb99ee1d7689dde4b9a4 SHA512 9c2f2384a5400c7136f90c3f20a32630ac1bf8c0381f174e969aaa41cfe78843aab828340df97764c67587d11d369c62ecdfc8eaf363fb8d48eb5c20430a857d WHIRLPOOL 828bf10358a2196a27d0beed0d2ed3a445d52e55f83d1c3b0152b8992883856a212ec95cf7a01a5e1a6f28ad2f5d86e7153f6f1c6f0fc44b4f57791d35dd74b6
+MISC metadata.xml 297 SHA256 920c427e9078daf7c855a89d22a193b010b4ce829bc0a63c9a274f5d077cb992 SHA512 f524068347954519bce747d0bcb8b45ef078438da36f5f3ad18b07429b731e15c3ab6f888e7f0d399a9c93ff76fb07d36087bdb55afee3eae1499ffeb8ff1d27 WHIRLPOOL da30c011bf2505719c6d2865f19daf99c921eb402fb040f40a8e5b8170e0bcab4595c591bc5da473d69ed794d09c7b2d8a99a2d9fce27a3e7e2afc31eee8b07f
diff --git a/sys-auth/pam_ssh/files/pam_ssh-1.97-EOF.patch b/sys-auth/pam_ssh/files/pam_ssh-1.97-EOF.patch
new file mode 100644
index 000000000000..80214a1df70c
--- /dev/null
+++ b/sys-auth/pam_ssh/files/pam_ssh-1.97-EOF.patch
@@ -0,0 +1,11 @@
+--- pam_ssh-1.92.orig/pam_get_pass.c 2004-02-19 19:59:05.000000000 +0100
++++ pam_ssh-1.92/pam_get_pass.c 2009-04-18 13:51:10.000000000 +0200
+@@ -63,6 +63,8 @@
+ retval = conv->conv(1, msgs, &resp, conv->appdata_ptr);
+ if (retval != PAM_SUCCESS)
+ return retval;
++ if (resp[0].resp == NULL)
++ return PAM_AUTHTOK_RECOVERY_ERR;
+ retval = pam_set_item(pamh, PAM_AUTHTOK, resp[0].resp);
+ if (retval != PAM_SUCCESS)
+ return retval;
diff --git a/sys-auth/pam_ssh/files/pam_ssh-1.97-doublefree.patch b/sys-auth/pam_ssh/files/pam_ssh-1.97-doublefree.patch
new file mode 100644
index 000000000000..2f63ff8bdcb0
--- /dev/null
+++ b/sys-auth/pam_ssh/files/pam_ssh-1.97-doublefree.patch
@@ -0,0 +1,20 @@
+--- pam_ssh-1.97/pam_ssh.c.orig 2009-08-01 20:11:00.000000000 +0200
++++ pam_ssh-1.97/pam_ssh.c 2009-08-01 20:11:16.000000000 +0200
+@@ -627,7 +627,7 @@
+ * than the file creation time */
+ if (retval = stat(per_agent, &stat_buf)) {
+ pam_ssh_log(LOG_ERR, "stat() failed on %s", per_agent);
+- free(per_agent);
++ pam_set_data(pamh, "ssh_agent_env_agent", NULL, NULL);
+ fclose(env_read);
+ return retval;
+ }
+@@ -646,7 +646,7 @@
+ if (start_agent) {
+ if ((env_write = open(per_agent, O_CREAT | O_WRONLY, S_IRUSR | S_IWUSR)) < 0) {
+ pam_ssh_log(LOG_ERR, "can't write to %s", per_agent);
+- free(per_agent);
++ pam_set_data(pamh, "ssh_agent_env_agent", NULL, NULL);
+ openpam_restore_cred(pamh);
+ return PAM_SERVICE_ERR;
+ }
diff --git a/sys-auth/pam_ssh/files/pam_ssh-2.1-dot-ssh-check.patch b/sys-auth/pam_ssh/files/pam_ssh-2.1-dot-ssh-check.patch
new file mode 100644
index 000000000000..a0737b377bea
--- /dev/null
+++ b/sys-auth/pam_ssh/files/pam_ssh-2.1-dot-ssh-check.patch
@@ -0,0 +1,22 @@
+https://bugs.gentoo.org/503424#c5
+https://sourceforge.net/p/pam-ssh/bugs/16/
+
+--- a/pam_ssh.c
++++ b/pam_ssh.c
+@@ -867,6 +867,7 @@
+ int attempt; /* No. of attempt to contact agent */
+ const char *user; /* username */
+ struct options options; /* PAM options */
++ struct stat sb; /* to check for existing .ssh */
+
+ #if HAVE_PAM_STRUCT_OPTIONS || !HAVE_PAM_STD_OPTION
+ memset(&options, 0, sizeof options);
+@@ -916,7 +917,7 @@
+ openpam_restore_cred(pamh);
+ return PAM_SERVICE_ERR;
+ }
+- if ((access(dotdir,F_OK)) == -1) {
++ if (stat(dotdir, &sb) == -1) {
+ pam_ssh_log(LOG_DEBUG, "inexistent configuration directory");
+ free(dotdir);
+ openpam_restore_cred(pamh);
diff --git a/sys-auth/pam_ssh/files/pam_symbols.ver b/sys-auth/pam_ssh/files/pam_symbols.ver
new file mode 100644
index 000000000000..dbc677b77a2d
--- /dev/null
+++ b/sys-auth/pam_ssh/files/pam_symbols.ver
@@ -0,0 +1,4 @@
+{
+ global: pam_sm_*;
+ local: *;
+};
diff --git a/sys-auth/pam_ssh/metadata.xml b/sys-auth/pam_ssh/metadata.xml
new file mode 100644
index 000000000000..0bfa63fd11c6
--- /dev/null
+++ b/sys-auth/pam_ssh/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">pam-ssh</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_ssh/pam_ssh-1.97-r1.ebuild b/sys-auth/pam_ssh/pam_ssh-1.97-r1.ebuild
new file mode 100644
index 000000000000..37f128a89230
--- /dev/null
+++ b/sys-auth/pam_ssh/pam_ssh-1.97-r1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=2
+
+inherit pam autotools eutils
+
+DESCRIPTION="Uses ssh-agent to provide single sign-on"
+HOMEPAGE="http://pam-ssh.sourceforge.net/"
+SRC_URI="mirror://sourceforge/pam-ssh/${P}.tar.bz2"
+
+LICENSE="BSD-2 BSD ISC"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+# Doesn't work on OpenPAM.
+DEPEND="sys-libs/pam
+ sys-devel/libtool"
+
+RDEPEND="sys-libs/pam
+ virtual/ssh"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-doublefree.patch"
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ "--with-pam-dir=$(getpam_mod_dir)" \
+ || die "econf failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "install failed"
+ dodoc AUTHORS ChangeLog NEWS README TODO || die
+
+ find "${D}" -name '*.la' -delete || die "Unable to remove libtool archives."
+}
+
+pkg_postinst() {
+ elog "You can enable pam_ssh for system authentication by enabling"
+ elog "the ssh USE flag on sys-auth/pambase."
+}
diff --git a/sys-auth/pam_ssh/pam_ssh-1.97-r2.ebuild b/sys-auth/pam_ssh/pam_ssh-1.97-r2.ebuild
new file mode 100644
index 000000000000..11e3cc24d817
--- /dev/null
+++ b/sys-auth/pam_ssh/pam_ssh-1.97-r2.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=2
+
+inherit pam autotools eutils flag-o-matic
+
+DESCRIPTION="Uses ssh-agent to provide single sign-on"
+HOMEPAGE="http://pam-ssh.sourceforge.net/"
+SRC_URI="mirror://sourceforge/pam-ssh/${P}.tar.bz2"
+
+LICENSE="BSD-2 BSD ISC"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ~ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+# Doesn't work on OpenPAM; looks for OpenSSH at build time (bug
+# #282993) and won't work with other implementations either
+RDEPEND="sys-libs/pam
+ net-misc/openssh"
+
+DEPEND="${RDEPEND}
+ sys-devel/libtool"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-doublefree.patch"
+ eautoreconf
+}
+
+src_configure() {
+ # hide all the otherwise-exported symbols that may clash with
+ # other software loading the PAM modules (see bug #274924 as an
+ # example).
+ append-ldflags -Wl,--version-script="${FILESDIR}"/pam_symbols.ver
+
+ econf \
+ "--with-pam-dir=$(getpam_mod_dir)" \
+ || die "econf failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "install failed"
+ dodoc AUTHORS ChangeLog NEWS README TODO || die
+
+ find "${D}" -name '*.la' -delete || die "Unable to remove libtool archives."
+}
+
+pkg_postinst() {
+ elog "You can enable pam_ssh for system authentication by enabling"
+ elog "the ssh USE flag on sys-auth/pambase."
+}
diff --git a/sys-auth/pam_ssh/pam_ssh-1.97-r3.ebuild b/sys-auth/pam_ssh/pam_ssh-1.97-r3.ebuild
new file mode 100644
index 000000000000..d4c29b80106a
--- /dev/null
+++ b/sys-auth/pam_ssh/pam_ssh-1.97-r3.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=2
+
+inherit pam autotools eutils flag-o-matic
+
+DESCRIPTION="Uses ssh-agent to provide single sign-on"
+HOMEPAGE="http://pam-ssh.sourceforge.net/"
+SRC_URI="mirror://sourceforge/pam-ssh/${P}.tar.bz2"
+
+LICENSE="BSD-2 BSD ISC"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+# Doesn't work on OpenPAM; looks for OpenSSH at build time (bug
+# #282993) and won't work with other implementations either
+RDEPEND="sys-libs/pam
+ net-misc/openssh"
+
+DEPEND="${RDEPEND}
+ sys-devel/libtool"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-doublefree.patch"
+ epatch "${FILESDIR}/${P}-EOF.patch"
+ eautoreconf
+}
+
+src_configure() {
+ # hide all the otherwise-exported symbols that may clash with
+ # other software loading the PAM modules (see bug #274924 as an
+ # example).
+ append-ldflags -Wl,--version-script="${FILESDIR}"/pam_symbols.ver
+
+ econf \
+ "--with-pam-dir=$(getpam_mod_dir)" \
+ || die "econf failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "install failed"
+ dodoc AUTHORS ChangeLog NEWS README TODO || die
+
+ find "${D}" -name '*.la' -delete || die "Unable to remove libtool archives."
+}
+
+pkg_postinst() {
+ elog "You can enable pam_ssh for system authentication by enabling"
+ elog "the ssh USE flag on sys-auth/pambase."
+}
diff --git a/sys-auth/pam_ssh/pam_ssh-1.98.ebuild b/sys-auth/pam_ssh/pam_ssh-1.98.ebuild
new file mode 100644
index 000000000000..46964376549b
--- /dev/null
+++ b/sys-auth/pam_ssh/pam_ssh-1.98.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit pam eutils flag-o-matic readme.gentoo
+
+DESCRIPTION="Uses ssh-agent to provide single sign-on"
+HOMEPAGE="http://pam-ssh.sourceforge.net/"
+SRC_URI="mirror://sourceforge/pam-ssh/${P}.tar.bz2"
+
+LICENSE="BSD-2 BSD ISC"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+# Doesn't work on OpenPAM; looks for OpenSSH at build time (bug
+# #282993) and won't work with other implementations either
+RDEPEND="
+ sys-libs/pam
+ net-misc/openssh
+"
+DEPEND="${RDEPEND}
+ sys-devel/libtool
+"
+
+DOC_CONTENTS="
+ You can enable pam_ssh for system authentication by enabling
+ the pam_ssh USE flag on sys-auth/pambase.
+"
+
+src_configure() {
+ # hide all the otherwise-exported symbols that may clash with
+ # other software loading the PAM modules (see bug #274924 as an
+ # example).
+ append-ldflags -Wl,--version-script="${FILESDIR}"/pam_symbols.ver
+
+ econf \
+ "--with-pam-dir=$(getpam_mod_dir)"
+}
+
+src_install() {
+ default
+ prune_libtool_files --modules
+ readme.gentoo_create_doc
+}
diff --git a/sys-auth/pam_ssh/pam_ssh-2.1.ebuild b/sys-auth/pam_ssh/pam_ssh-2.1.ebuild
new file mode 100644
index 000000000000..fc7b3e0e8a1c
--- /dev/null
+++ b/sys-auth/pam_ssh/pam_ssh-2.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit pam eutils flag-o-matic readme.gentoo
+
+DESCRIPTION="Uses ssh-agent to provide single sign-on"
+HOMEPAGE="http://pam-ssh.sourceforge.net/"
+SRC_URI="mirror://sourceforge/pam-ssh/${P}.tar.xz"
+
+LICENSE="BSD-2 BSD ISC"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+# Only supports OpenSSH via `ssh-agent` #282993
+DEPEND="virtual/pam
+ dev-libs/openssl:0="
+RDEPEND="${DEPEND}
+ net-misc/openssh"
+
+DOC_CONTENTS="
+ You can enable pam_ssh for system authentication by enabling
+ the pam_ssh USE flag on sys-auth/pambase.
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-dot-ssh-check.patch #503424#c5
+}
+
+src_configure() {
+ # hide all the otherwise-exported symbols that may clash with
+ # other software loading the PAM modules (see bug #274924 as an
+ # example).
+ append-ldflags -Wl,--version-script="${FILESDIR}"/pam_symbols.ver
+
+ # Set the cache var so the configure script doesn't go probing hardcoded
+ # file system paths and picking up the wrong thing.
+ export ac_cv_openssldir=''
+
+ # Avoid cross-compiling funkiness and requiring openssh at build time.
+ export PATH_SSH_AGENT="${EPREFIX}/usr/bin/ssh-agent"
+
+ econf \
+ "--with-pam-dir=$(getpam_mod_dir)"
+}
+
+src_install() {
+ default
+ prune_libtool_files --modules
+ readme.gentoo_create_doc
+}
+
+pkg_preinst() {
+ if has_version "<${CATEGORY}/${PN}-2.0" ; then #554150
+ ewarn "Upstream pam_ssh has changed where ssh keys live. Only keys in your"
+ ewarn "~/.ssh/login-keys.d/ will be accepted for authentication."
+ fi
+}
diff --git a/sys-auth/pam_ssh_agent_auth/Manifest b/sys-auth/pam_ssh_agent_auth/Manifest
new file mode 100644
index 000000000000..8aa5bca38394
--- /dev/null
+++ b/sys-auth/pam_ssh_agent_auth/Manifest
@@ -0,0 +1,12 @@
+AUX pam_ssh_agent_auth-0.9.2-libs.patch 1314 SHA256 cf0df8ce67d80a7ca569e1066c9a30aeff733a651386ab46f8d5fcfef4e5ec86 SHA512 ea99c2253081543e041ec043b62df9531ea9ffad029f213f17ce9e8b8b6d673cb4e7a794ddfe57fcea995b49c26a5cb775433e3dc413800c45d625c4e3c8808c WHIRLPOOL ee8c4edd2141f9f58219763cced124c209756c08da31b635191ce18a6b33606f6a0ea61a18bf5d92fe49c3f707a3a2184e46c2f3b3bf269ff389c97782b88acb
+DIST pam_ssh_agent_auth-0.10.2.tar.bz2 246412 SHA256 99bbbae3494032e17b62ff3b9ff71e2d78e3c6809463649afe7bae79e4f81fcd SHA512 b4b9bc4486d873f236f7c54874c996e24f344f889dfda3beadb12b97cbb89078028a103a4a7175cd919fb0a12fd5bcefef50420510ae5eff9252e494e0124b38 WHIRLPOOL e5c5390b31ff131a24ed299df556847ef65ca69c2d1dc438a3b5fc43d7e9b3ff8045504ae7d5cca6906a4f96078bcdfaaa3e10109b3cad14be6dce0f80c2a6c4
+DIST pam_ssh_agent_auth-0.9.2.tar.bz2 237156 SHA256 76c80b6482ea5d03e1f33514f30ac77cd56e2fc8cb233a470562686df7426f4b SHA512 e710a4dff315c8d79c5d5edc4ebe1629a8fc6d09651813fd4792a2021e7c2d5768d6b7e8539801e31b947cc30817f32375d751fc396707fc4f257df4f33cd408 WHIRLPOOL 073e47de9c9205a1eac8e116c5b22b2b6c4dd42be261abe18bcac4c25dc98ce0023f44a17558afb9823ba457dcc7e1f16e4e195c7aa09483b9ed32e7ae1a7eed
+DIST pam_ssh_agent_auth-0.9.3.tar.bz2 239596 SHA256 10017968f5a8a41e1fcfaac6cdec479b70998bbbd19a70e94e2f654befafe5a6 SHA512 c2304dcf623858339b5fd77bcf64e9c980a3ee241384b9125d64ba6ab9539a65eacbd3576b31a94bb390e4c089e702f9df2963119250b773bd8be872ae63a050 WHIRLPOOL 41205f5f501b0ef90b71f4f72993da3514bffbdf779565eaee1e4e7b442103b4fb7f3ea278279cb99cffa2f42c700e2e9f6c74b79c0f3a25ae964a8a1df9c858
+DIST pam_ssh_agent_auth-0.9.4.tar.bz2 239250 SHA256 496de600771d6296c7a7d01636399fd603e5a79930416ffbdc150c3784d80ca9 SHA512 3d469e85bf7c49dcf9345c63678ebe050db4d15447592bc337bfc762f2337f92cebd7e840fc12d7be94acf1aa47b0272efe2c1688888ecd8f9daf63549520792 WHIRLPOOL 20960e24fb548fd9e6722def1cb2a07cd2f7abb1ddb235339c61e7b544bf6470f74b2d890d9aa834908d04e35fdd842e8b4f64a4b55e6d5ff892fd56d5b1e1a6
+EBUILD pam_ssh_agent_auth-0.10.2.ebuild 790 SHA256 a8e662ed0636ff817f5e9cf011cec44c713e28f3d1443339d58928bad10f0ff2 SHA512 49c0e34eae182fccef342a3d4afa3bdcf9932222866478b028b6ce071a2afe14783ba3a6083411b074db4c9795854e22eb3391f103fa6ecac9b3a7c72853066d WHIRLPOOL 4b93fc1c602439cdfb2aff84b16cc0feb065ec58fc4505e4ba81897b5263b2b5e2e1361612fa2ee67ee3954e49c2255532d396695a58472501362d6e111e1180
+EBUILD pam_ssh_agent_auth-0.9.2.ebuild 853 SHA256 f93149b457eb4e44836af29c8538af80d94b71c04c340edaa44fb2dc4386fe74 SHA512 326af2ffaa4d7f871584e2f0c659e23c6f089f86eade0f85eee50785e1810f2fe394459f9b977f47142ecbb26317572c812a585d0d9bf61be555fd868493e6c4 WHIRLPOOL 29313fa7533e06f52bb6f39223bd79a509ea148ecab7139790f842f23b1ceb9373a515045948ff70f1acbcfb11cadf3abd71f718eadd3a67c8f159fd13c3c625
+EBUILD pam_ssh_agent_auth-0.9.3.ebuild 873 SHA256 50fd0320f31231a203b188b65aea0d2d03562813266614cdccca85ddb10cdf19 SHA512 d3aaac053792d87967fb01cc16dec5b3d3efe58fef3a1b0443c87121d01d34305b9d9fbe25dcafa277638e78801d03238d88160796e97601dc4708def758277e WHIRLPOOL fae9884307079bd0e6dfb3602e19c35e857af522ea2146a81ef5224d5863a3b6a4ce0f21462291b5970393e1a82571c4a71aaf5b77ea0315caaa9ce95110b027
+EBUILD pam_ssh_agent_auth-0.9.4.ebuild 802 SHA256 692af0656a215c934aeff2710596d740d324b85b33e647107ae6734ee83508ea SHA512 4a94a25449e2313a8ec657f62a378e6452af8b6a944fa54b31eeecea2753f475d2ded378b59eadf9b2233c39cfaa168f432c7f2bbbd95ee0782b38d0d9c06061 WHIRLPOOL fb0692cef8011ffe69910f62e68a051c795f637a391bb27fd467459cf647186de93e1abc9519018b10cd61bf21083e0caf4a896c0fe5f3f7860d637202d31093
+MISC ChangeLog 2732 SHA256 e86ea059758871602a73c014267017d90fbecabe9e8353b17a80d59131cde800 SHA512 20f9db6aa035dabd3fdc85c9afbf4bd8b70d0287adee049399529b88a29257543ac03937f9fc6ca966136fb61d47c8427839600434dbcadb321becd5711dda14 WHIRLPOOL dd3527ad6cfc1832888f52c885ab050614f09fa09ecb564cd934983e939373192d5656ba0120b16a4b25b69b2720c7713e56f588576c9c1888682497a3e3da43
+MISC ChangeLog-2015 1140 SHA256 0ec80b4fd491ed59e6307c3892798b67025345df8e9c0eb27abd139527da22ab SHA512 4a61dca4d8b96f6a63bc19992cb87f6bc590b785461894008a55b01487f9402c7ef732003926219fb9bd33b7808d2b7b722063f31c1b3e1006684f1d1129143c WHIRLPOOL 2526d04b21535dc30c2bd8dced0932afed5dafecafe3b79804887b83f57b8ce513ae85b5cfd715e6b490cc9e4dc904e805f6cd3f42f4d094e0c9abfe7c81a0d7
+MISC metadata.xml 305 SHA256 e747d54a5bb5d677854c4d6601d23cd15c8af9915157e37059210e907d24f383 SHA512 4bbf43d0541b9313197f5883f7913d9a611d8cc549829e652ef24fda5b2e9ae55f3f52ff04b85f143fb8a3c9cecf0f4d164384241af53f453abe42b9aaa022bd WHIRLPOOL 0ac19e140027e51a11d7f68d8cea6662f1f0fa94058138d01eeca5451bc4f65e98456cfb6cf225b51e737534743d0488a561e47ddde0d5042ad4a71b670ccb0c
diff --git a/sys-auth/pam_ssh_agent_auth/files/pam_ssh_agent_auth-0.9.2-libs.patch b/sys-auth/pam_ssh_agent_auth/files/pam_ssh_agent_auth-0.9.2-libs.patch
new file mode 100644
index 000000000000..3e259761a2e2
--- /dev/null
+++ b/sys-auth/pam_ssh_agent_auth/files/pam_ssh_agent_auth-0.9.2-libs.patch
@@ -0,0 +1,24 @@
+diff --git a/Makefile.in b/Makefile.in
+index 3428c51..4b5ea8a 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -48,7 +48,7 @@ PAM_MODULES=pam_ssh_agent_auth.so
+
+ SSHOBJS=xmalloc.o atomicio.o authfd.o bufaux.o bufbn.o buffer.o cleanup.o entropy.o fatal.o key.o log.o misc.o secure_filename.o ssh-dss.o ssh-rsa.o uuencode.o compat.o
+
+-PAM_SSH_AGENT_AUTH_OBJS=pam_user_key_allowed2.o iterate_ssh_agent_keys.o userauth_pubkey_from_id.o pam_user_authorized_keys.o
++PAM_SSH_AGENT_AUTH_OBJS=pam_user_key_allowed2.o iterate_ssh_agent_keys.o userauth_pubkey_from_id.o pam_user_authorized_keys.o pam_ssh_agent_auth.o
+
+
+ MANPAGES_IN = pam_ssh_agent_auth.pod
+@@ -72,8 +72,8 @@ $(LIBCOMPAT): always
+ (cd openbsd-compat && $(MAKE))
+ always:
+
+-pam_ssh_agent_auth.so: $(LIBCOMPAT) $(SSHOBJS) $(PAM_SSH_AGENT_AUTH_OBJS) pam_ssh_agent_auth.o
+- $(LD) $(LDFLAGS_SHARED) -o $@ $(SSHOBJS) $(PAM_SSH_AGENT_AUTH_OBJS) $(LDFLAGS) -lopenbsd-compat $(LIBS) -lpam pam_ssh_agent_auth.o
++pam_ssh_agent_auth.so: $(LIBCOMPAT) $(SSHOBJS) $(PAM_SSH_AGENT_AUTH_OBJS)
++ $(LD) $(LDFLAGS_SHARED) -o $@ $(SSHOBJS) $(PAM_SSH_AGENT_AUTH_OBJS) $(LDFLAGS) -lopenbsd-compat $(LIBS) -lpam
+
+ $(MANPAGES): $(MANPAGES_IN)
+ pod2man --section=8 --release=v0.8 --name=pam_ssh_agent_auth --official --center "PAM" pam_ssh_agent_auth.pod > pam_ssh_agent_auth.8
diff --git a/sys-auth/pam_ssh_agent_auth/metadata.xml b/sys-auth/pam_ssh_agent_auth/metadata.xml
new file mode 100644
index 000000000000..b2c4b0002ee6
--- /dev/null
+++ b/sys-auth/pam_ssh_agent_auth/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">pamsshagentauth</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.10.2.ebuild b/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.10.2.ebuild
new file mode 100644
index 000000000000..3faa51dfab8b
--- /dev/null
+++ b/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.10.2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit pam
+
+DESCRIPTION="Simple module to authenticate users against their ssh-agent keys"
+HOMEPAGE="http://pamsshagentauth.sourceforge.net"
+SRC_URI="mirror://sourceforge/pamsshagentauth/${PN}/v${PV}/${P}.tar.bz2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+DEPEND="virtual/pam
+ dev-libs/openssl"
+
+RDEPEND="${DEPEND}
+ virtual/ssh"
+
+# needed for pod2man
+DEPEND="${DEPEND}
+ dev-lang/perl"
+
+src_configure() {
+ pammod_hide_symbols
+
+ econf \
+ --libexecdir="$(getpam_mod_dir)"
+}
+
+src_install() {
+ # Don't use emake install as it makes it harder to have proper
+ # install paths.
+ dopammod pam_ssh_agent_auth.so
+ doman pam_ssh_agent_auth.8
+
+ dodoc CONTRIBUTORS
+}
diff --git a/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.2.ebuild b/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.2.ebuild
new file mode 100644
index 000000000000..9d12c9d6d898
--- /dev/null
+++ b/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit eutils pam
+
+DESCRIPTION="Simple module to authenticate users against their ssh-agent keys"
+HOMEPAGE="http://pamsshagentauth.sourceforge.net"
+SRC_URI="mirror://sourceforge/pamsshagentauth/${PN}/v${PV}/${P}.tar.bz2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/pam
+ dev-libs/openssl"
+
+RDEPEND="${DEPEND}
+ virtual/ssh"
+
+# needed for pod2man
+DEPEND="${DEPEND}
+ dev-lang/perl"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-libs.patch
+}
+
+src_configure() {
+ pammod_hide_symbols
+
+ econf \
+ --libexecdir=$(getpam_mod_dir)
+}
+
+src_test() { :; }
+
+src_install() {
+ # Don't use emake install as it makes it harder to have proper
+ # install paths.
+ dopammod pam_ssh_agent_auth.so
+
+ doman pam_ssh_agent_auth.8 || die
+}
diff --git a/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.3.ebuild b/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.3.ebuild
new file mode 100644
index 000000000000..2ebe6d4f5743
--- /dev/null
+++ b/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.3.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit eutils pam
+
+DESCRIPTION="Simple module to authenticate users against their ssh-agent keys"
+HOMEPAGE="http://pamsshagentauth.sourceforge.net"
+SRC_URI="mirror://sourceforge/pamsshagentauth/${PN}/v${PV}/${P}.tar.bz2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/pam
+ dev-libs/openssl"
+
+RDEPEND="${DEPEND}
+ virtual/ssh"
+
+# needed for pod2man
+DEPEND="${DEPEND}
+ dev-lang/perl"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.9.2-libs.patch
+}
+
+src_configure() {
+ pammod_hide_symbols
+
+ econf \
+ --libexecdir=$(getpam_mod_dir)
+}
+
+src_test() { :; }
+
+src_install() {
+ # Don't use emake install as it makes it harder to have proper
+ # install paths.
+ dopammod pam_ssh_agent_auth.so
+ doman pam_ssh_agent_auth.8
+
+ dodoc CONTRIBUTORS
+}
diff --git a/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.4.ebuild b/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.4.ebuild
new file mode 100644
index 000000000000..0bc8de146ed8
--- /dev/null
+++ b/sys-auth/pam_ssh_agent_auth/pam_ssh_agent_auth-0.9.4.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit pam
+
+DESCRIPTION="Simple module to authenticate users against their ssh-agent keys"
+HOMEPAGE="http://pamsshagentauth.sourceforge.net"
+SRC_URI="mirror://sourceforge/pamsshagentauth/${PN}/v${PV}/${P}.tar.bz2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="virtual/pam
+ dev-libs/openssl"
+
+RDEPEND="${DEPEND}
+ virtual/ssh"
+
+# needed for pod2man
+DEPEND="${DEPEND}
+ dev-lang/perl"
+
+src_configure() {
+ pammod_hide_symbols
+
+ econf \
+ --libexecdir=$(getpam_mod_dir)
+}
+
+src_test() { :; }
+
+src_install() {
+ # Don't use emake install as it makes it harder to have proper
+ # install paths.
+ dopammod pam_ssh_agent_auth.so
+ doman pam_ssh_agent_auth.8
+
+ dodoc CONTRIBUTORS
+}
diff --git a/sys-auth/pam_u2f/Manifest b/sys-auth/pam_u2f/Manifest
new file mode 100644
index 000000000000..2e1c8e76acfb
--- /dev/null
+++ b/sys-auth/pam_u2f/Manifest
@@ -0,0 +1,5 @@
+AUX pam_u2f-1.0.2-fix-Makefile.patch 324 SHA256 538bf36cdb4afef6454834b9ec40d0a76639395af51288bd6436eba3717e19f3 SHA512 eddf3c607e953b952ba91acb7d7bb1b8a43d6b70da86faece994011eb3eac43476c6ad9721be0a76805688dc9f9bab02ee5e13f58ce556bb68b8d574135ca44d WHIRLPOOL bc69564f02e24e223e9c28a6790b840024bbb0d2bb8ff03a32a41104ef550b2e8566451b684ab42c7bd338d118476e595a4fb673f4f7b7002f6f3a74cd9bba53
+DIST pam_u2f-1.0.4.tar.gz 349114 SHA256 71542e4568e6d2acaa50810a93c67297ba402f960da1ebb621413bd31f0732a1 SHA512 324d1a1172eae567372f95971d9ee6bb237b47758b89c083f3cfb11275c4b0c22c4cf02a51380451f88d372dd6aaa415bdb671a43a7444062fbf8f50b658f087 WHIRLPOOL a4aeb74cb551d2c22de7cd1ab5cddf1ccff7d5d660017b0569c83478f33902dd8641325fef1f76033b7df2c4919c0def892208e1451a673f0c21b518f66dcd83
+EBUILD pam_u2f-1.0.4.ebuild 723 SHA256 0067b359d5c8fa92f5ccd63aba93ca093b0a5c3fd80bb1ba7477c22f5348ad05 SHA512 c676790a38f771e79dd410645a5be6fab70119c25c4c3bddea557702ea596c825ed939317c31d7002b84e45220847f8522970ea815631429cabd134b8febdfdf WHIRLPOOL faab08cf2589be27248f06d10e4c98a9f60ab6894ac3ec49f6e996048ec09fd16827af55183a535808d2ac0b9a29b6261819ae66054054f2b6239f3d5a901072
+MISC ChangeLog 374 SHA256 086f233f954062c6627ddf7d055361553b8eb289b0fde5e1ab0ef538f3838cef SHA512 ed5634878a51cf047e9f4bbbdb67d8eb992191fbff0922adb533c08a100b24b210d5347c8c17a30b36664a435c12dd51e81c77c21a854aa1264fb1763ab7a182 WHIRLPOOL 6b5e0a34cc72b5afc6e9733c8d259ea43ab46ca6478bc402746722d3999fdf23401cfe3bf9a3ac5da8991fdcd41cdaf2303ab5f8d27ff89d7d27f38af91a2f38
+MISC metadata.xml 702 SHA256 d5baa6d5a61adefeb06e8e4375d953e9cac078e8b14271ad2907c777e71ccc0c SHA512 b0ef72e1a2f8f34345492a6d9b4eda2e427fec504bb0e2b5ae2adc07d79d9e0fdfdf72dd8cdc2e222025e3beb8b2ff7596ccff4daaa18213584428e163244940 WHIRLPOOL 68e935030cb699e12cc8d1e0affec4101bcb218c3e98ccfdeeaa5ab341b97e2983833161f9670dd22f1271be90e3e48454b61e538d29d1bcfb7880711d1cb2bd
diff --git a/sys-auth/pam_u2f/files/pam_u2f-1.0.2-fix-Makefile.patch b/sys-auth/pam_u2f/files/pam_u2f-1.0.2-fix-Makefile.patch
new file mode 100644
index 000000000000..a83597602d45
--- /dev/null
+++ b/sys-auth/pam_u2f/files/pam_u2f-1.0.2-fix-Makefile.patch
@@ -0,0 +1,13 @@
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -34,8 +34,8 @@
+ # Release
+
+ install-exec-hook:
+- rm -f $(PAMDIR)/pam_u2f.la
+- chmod -f 644 $(PAMDIR)/pam_u2f.so || true
++ rm -f $(DESTDIR)/$(PAMDIR)/pam_u2f.la
++ chmod -f 644 $(DESTDIR)/$(PAMDIR)/pam_u2f.so || true
+
+ indent:
+ indent -kr -nut -i2 *.c *.h pamu2fcfg/*.c pamu2fcfg/*.h
diff --git a/sys-auth/pam_u2f/metadata.xml b/sys-auth/pam_u2f/metadata.xml
new file mode 100644
index 000000000000..11ec7f2c19e3
--- /dev/null
+++ b/sys-auth/pam_u2f/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>shirk+gentoo@bitspin.org</email>
+ <name>René Köcher</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>gokturk@gentoo.org</email>
+ <name>Göktürk Yüksek</name>
+ </maintainer>
+ <use>
+ <flag name="debug">
+ Enable debug messages using the pam logging macros.
+ (Note: these will be visible on stdout for terminal logins).
+ </flag>
+ </use>
+ <upstream>
+ <remote-id type="github">Yubico/pam-u2f</remote-id>
+ <bugs-to>https://github.com/Yubico/pam-u2f/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_u2f/pam_u2f-1.0.4.ebuild b/sys-auth/pam_u2f/pam_u2f-1.0.4.ebuild
new file mode 100644
index 000000000000..49c2d94d66be
--- /dev/null
+++ b/sys-auth/pam_u2f/pam_u2f-1.0.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools flag-o-matic pam
+
+DESCRIPTION="Library for authenticating against PAM with a Yubikey"
+HOMEPAGE="https://github.com/Yubico/pam-u2f"
+SRC_URI="https://developers.yubico.com/${PN/_/-}/Releases/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug"
+
+RDEPEND="
+ app-crypt/libu2f-host
+ app-crypt/libu2f-server
+ virtual/pam"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}/${PN}-1.0.2-fix-Makefile.patch" )
+
+src_prepare() {
+ default
+ use debug || append-cppflags -UDEBUG_PAM -UPAM_DEBUG
+ eautoreconf
+}
+
+src_configure() {
+ econf --with-pam-dir=$(getpam_mod_dir)
+}
diff --git a/sys-auth/pam_yubico/Manifest b/sys-auth/pam_yubico/Manifest
new file mode 100644
index 000000000000..8d30b7910630
--- /dev/null
+++ b/sys-auth/pam_yubico/Manifest
@@ -0,0 +1,7 @@
+DIST pam_yubico-2.23.tar.gz 418567 SHA256 bc7193ed10c8fb7a2878088af859a24a7e6a456e1728a914eb5ed47cdff0ecb8 SHA512 435a5013ef7d020f8fe6d54614b22a4d3df6295adeb8e1fd26722246d105375b8d19940098b62956a18f439dad82f67e3996a7067af3357fddff380d20fa4728 WHIRLPOOL c26921a2703ebaac336a3bf9fa653020af9a55a390a1e7460c85a7b07fecba0c2192cf6663e2f77953798052957c925c65892b5da3cedc435fd704c551f28e88
+DIST pam_yubico-2.24.tar.gz 418419 SHA256 0326ff676e2b32ed1dda7fb5f1358a22d629d71caad8f8db52138bbf3e95e82d SHA512 3554b40d97ede9d02102a0661e732347a0ab2cb012fa4330cc8227289a03398a7b974ee9d170604dce53ebef1bedade5c7ab9d5657560b0ba8e4c65432c1112c WHIRLPOOL 62c5c270dbcd83d1c25d67b56ee8c39181dbdd5dee076619f071bb57f2f07a185d22d508a18581c8a8d3804889569d297c9071c0cf28e27379d20ea900c294a7
+EBUILD pam_yubico-2.23.ebuild 896 SHA256 642ea35539ebe91fd7347cf217605cfbedede85a873e3a3de202d4bb832b7ec2 SHA512 cfd9f0a2b8c22ca25366b86460cf58535e6dd2f48aa8d1c899efe323643167a66cfda1a1af2a0aded8731855dba45bfaa89f27c4092d70d75d1715a2894a78a6 WHIRLPOOL 79556adb95d789bd7469b4b4ddcdd1469c619b9fa99947031520f418c3092188b23f02a81a06a46b6751056aa5abdfd4578ecacf0beb6653017b62c3f82f80c6
+EBUILD pam_yubico-2.24.ebuild 896 SHA256 642ea35539ebe91fd7347cf217605cfbedede85a873e3a3de202d4bb832b7ec2 SHA512 cfd9f0a2b8c22ca25366b86460cf58535e6dd2f48aa8d1c899efe323643167a66cfda1a1af2a0aded8731855dba45bfaa89f27c4092d70d75d1715a2894a78a6 WHIRLPOOL 79556adb95d789bd7469b4b4ddcdd1469c619b9fa99947031520f418c3092188b23f02a81a06a46b6751056aa5abdfd4578ecacf0beb6653017b62c3f82f80c6
+MISC ChangeLog 3046 SHA256 f64096158d7e0b07298f19312ff4ff94b3e37388faa39f6d1151c1de092f4cdb SHA512 9c99004c8ab8273fdede73392e1c22bafd1bc15887a0df12c01ef92f7f3bc6411c277483db2ec7424b20f7c32427eec903fb1e5c4e15511c0dcd4583ab02176a WHIRLPOOL 038674992e3e59d34307fdc784bd7d1ac9247fa587e46b0f1be3d1a12361d92469f45f16714d21033f003ed7ed3e1da96a1b76291d678cb53f97980067e48c7d
+MISC ChangeLog-2015 1479 SHA256 4058a1d4d5f0c796f746a82d61d5554f791a1682379e619c863fc3fea41c1f39 SHA512 a03716c59b81fec416d453bc01090e1ba80a77a274881be52b5a0d72f7c889e295372c8caeac81eb4a1e4b91121f90c0812b447357beec79ca151f02e5867d0f WHIRLPOOL 653de5bf4a9bfe67635705cd27bb30cf3895fb205ad123c6ec04496e91ce33a1aa91dac3065905c5b9d18672f2f5ae399c373cb736649928c04e6c368ff637d5
+MISC metadata.xml 339 SHA256 98bc0b8a0c82d67e58feda0f95d9a0eb432ad75216a41d5ba673cdb0b18d1a72 SHA512 f6d6b5fc3be0305b4481ec8b93401bfdbfb094304b89a8c1acefb4ff3b4b341579afd26844abe31dbb08903f72b52e673ae7a65d7c366ed1341381547759c6f8 WHIRLPOOL 75636294ba425d2261055c7fef01062684575359de12285821ed96fae3c933d2705fedef2612319920bbcf9e109a9e015bb36289e748121255415120a2eefa76
diff --git a/sys-auth/pam_yubico/metadata.xml b/sys-auth/pam_yubico/metadata.xml
new file mode 100644
index 000000000000..938e8ea6ece6
--- /dev/null
+++ b/sys-auth/pam_yubico/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>zerochaos@gentoo.org</email>
+ <name>Rick Farina</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Yubico/yubico-pam</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/pam_yubico/pam_yubico-2.23.ebuild b/sys-auth/pam_yubico/pam_yubico-2.23.ebuild
new file mode 100644
index 000000000000..17602d4f705a
--- /dev/null
+++ b/sys-auth/pam_yubico/pam_yubico-2.23.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multilib
+
+DESCRIPTION="Library for authenticating against PAM with a Yubikey"
+HOMEPAGE="https://github.com/Yubico/yubico-pam"
+SRC_URI="http://opensource.yubico.com/yubico-pam/releases/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="ldap test"
+
+RDEPEND="
+ virtual/pam
+ sys-auth/libyubikey
+ >=sys-auth/ykclient-2.15
+ >=sys-auth/ykpers-1.6
+ ldap? ( net-nds/openldap )"
+DEPEND="${RDEPEND}
+ app-text/asciidoc
+ test? ( dev-perl/Net-LDAP-Server )"
+
+src_configure() {
+ #challenge response could be optional but that seems horribly dangerous to me
+ econf \
+ --with-cr \
+ $(use_with ldap) \
+ --with-pam-dir=/$(get_libdir)/security
+}
+
+src_install() {
+ default
+ dodoc doc/*
+ #prune_libtool_files #why doesn't this work?
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/sys-auth/pam_yubico/pam_yubico-2.24.ebuild b/sys-auth/pam_yubico/pam_yubico-2.24.ebuild
new file mode 100644
index 000000000000..17602d4f705a
--- /dev/null
+++ b/sys-auth/pam_yubico/pam_yubico-2.24.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multilib
+
+DESCRIPTION="Library for authenticating against PAM with a Yubikey"
+HOMEPAGE="https://github.com/Yubico/yubico-pam"
+SRC_URI="http://opensource.yubico.com/yubico-pam/releases/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="ldap test"
+
+RDEPEND="
+ virtual/pam
+ sys-auth/libyubikey
+ >=sys-auth/ykclient-2.15
+ >=sys-auth/ykpers-1.6
+ ldap? ( net-nds/openldap )"
+DEPEND="${RDEPEND}
+ app-text/asciidoc
+ test? ( dev-perl/Net-LDAP-Server )"
+
+src_configure() {
+ #challenge response could be optional but that seems horribly dangerous to me
+ econf \
+ --with-cr \
+ $(use_with ldap) \
+ --with-pam-dir=/$(get_libdir)/security
+}
+
+src_install() {
+ default
+ dodoc doc/*
+ #prune_libtool_files #why doesn't this work?
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/sys-auth/pambase/Manifest b/sys-auth/pambase/Manifest
new file mode 100644
index 000000000000..855c4471d9fc
--- /dev/null
+++ b/sys-auth/pambase/Manifest
@@ -0,0 +1,17 @@
+AUX pambase-20120417-lastlog-silent.patch 694 SHA256 9bce9de7831fcafaee0c5f56b28ed91d4e1974bef806f50b38cca82189f81782 SHA512 3bcef6d9e97cf38df079675ffdffaf233a185bbb09bf79930c81b8b7b802247de0f0bfb9e69d935bce7a7297f544f1c7abc199224e7a536cdfe606f2c0217500 WHIRLPOOL a4db8e5ab534cfc80d9452165dc492853f6fa717025dc49daab4c51847ea03a584ad6a44317804f56361e8916cab0d897bd8d8f065c31afd0ae22df5d8eaf367
+AUX pambase-20120417-systemd-auth.patch 937 SHA256 27d6d03273818922ee2d1de28bbce496b88fbdea7363743bd3e80a9233a9ae02 SHA512 0d78a7dd4851bccf95bb3f92c095c4fc4e7fbbc077c1369797aa230e21763ecb6d087c17bc22c93adeaa695305179d54d838f2e4fe25e9ff16c683fb1edbb2bf WHIRLPOOL c38bdb6b37c885c2b07b59966ae77ec572d89be1ff6a35cc715a8f20e386c8f5471687a30049a1a94c64927d60d8c52dbc09744f153ddd2bdc053461d7bf35c2
+AUX pambase-20120417-systemd.patch 608 SHA256 888f05068801f11cb49988a3da64f658782f0056410fdb7d68d240a7d1f619ff SHA512 c06d4e35cae11b1156ba32051a4f25a4551857081e9a723f5c0b48758859d7794de94889eb91b19424b49bd4fd5509d34cba943d7a7bbc89f4339a771f29f754 WHIRLPOOL 0336ca519f528e3a0ac840d9da84cc7f28b420ee2864090dac459fd163962e251aa83e11bfd8d02bc7a8a313bac92598df19fb1278dd98a167942cbbca692de2
+AUX pambase-20150213-elogind.patch 436 SHA256 a4c0d60f5665f4f70f72b8f236f3df1bb561c68b738127afff3e5678fdd08082 SHA512 e5865431fa616335f3732deefec96b11ba5e3f29523182ecbe24bafa80a0fd9b9dc5914b610d7ba485dcf5cd66775d9e668d8ba30f776ce33492b4da75301a1d WHIRLPOOL 9a2b3583db13e945830c4e773ecda0b4f3f090b8333d0c10e8c24859082870e4b791b7c0f3806bc2baf80081913b7ceccc706feff6cc95d8897c5147d03e6f2b
+AUX pambase-20150213-selinux-note.patch 441 SHA256 b9189bd921e91bb99b26424bc9f876784bc22baeecd065081145be8cc067d9fc SHA512 560afa6b9d2ac657f16ef41abf3f9243480c0d6c57ff725be00a936a92a392c1a5f59f787b1b0ddfe05a81da10cb3c1fc8d24ed9560731bbcae1608a5f155fdb WHIRLPOOL 8b0a34ffcf9df95a08b2b0fe069754ca2a538cfb09c8d97bd4dc7efd6b7860824cfe3ebfac5b368469cc276e02094dc5e7df3f96f5722dae46f9d4b29f133201
+DIST pambase-20101024.tar.bz2 3201 SHA256 89d60dd598d3da0ce1d1bcd7dc325f6c55002a1d4a7d27f9bb024f6732e9fba4 SHA512 8d2a89b38d94d2e423a033ea6922c0a0039a0fb64d60c05991d877b4fa893954723fe1c1763f3f67ed6fbc3639282a4ee1d76824f7f29025b6050632a6984b6f WHIRLPOOL 644965507d1f537c357a7020c13282d9de4131a6cf72e589b1e750e3b86a2185b9a882d0b3f865145a86e1ef613e4b92998be53734aefb6d6d8a69f65de806a4
+DIST pambase-20120417.tar.bz2 3361 SHA256 3fde3ff7714b3722b45545da36fdde6ca95a55d1b0a8cfb23666ec0de3ec5871 SHA512 7a666eb67f6484e536ecb070402036bcfdd137aced27df3f08b136d06eee5c13a6dc14aa93ea09e94c7f31e5a98db97dbaccd0c46af24b57028247de3a7cd9fe WHIRLPOOL 323edb9ef488a0ba562ef279d4acfb682540bf87838be9a3319ad2029ba1465d015fdf94c3192e24517ae9f0ed264e38d17aba65934211bd7b39bf309ee12540
+DIST pambase-20140313.tar.bz2 3417 SHA256 70f11281975eb1d7b14f36a16d2b9eff78099a246aeda96e4f8c667b2574b2a4 SHA512 76dd2a70947dac9573d47b81764ebe4f829bfd38d59c007e698a52c70757fa88525f510c14a1f474c58e3d33cb421ff61aa4ed1aae54497456004eff7494bfc8 WHIRLPOOL e9aac79b37c76af4389d193cb4eb79ad4372e25520a3f6bba6b473948999f1ac2ade00930180a4b9f47cdd7a458d1a174bd15ccf0a94130d216118d7d76485a9
+DIST pambase-20150213.tar.xz 3480 SHA256 cf1ea75e29c33bfddbc6f8519b860a6f0710345e936966014f59fe3e93ab7f44 SHA512 3b49dd3f06a0942fcced95527f62cbc4ff723c48dc896a0b57ecd19736d2892db974c782be3fe24e8e6e17294869a772ae9ee6118af96dfdc7a3a6561dc3f3e5 WHIRLPOOL 493084f04032b93d8021e84bdbcf6c339ec6c928b468aa59556f3d3d10403e4557316d516ea303d66422df13150c7c19761d9979aba32e5e4c9fe7e198c733a2
+EBUILD pambase-20101024-r2.ebuild 2871 SHA256 91d38716fe76df79de7c7e5c081eaeac143206a35ae34375b86df4d5b763dde9 SHA512 fa01ee22dcba9126c824b8a488fe7e91750d13a263e0a89b912538156e865f344293e1cd2c15fc9e538140634f7294f16ff70f5621d5575afddceeaa2f816ef9 WHIRLPOOL 0e9b04b3bf678f3d7219d0fc2622a9426a85dd2765871481a57ab094d4f51297385ca2079f272efa2087b1827ed780a0ff73343c970a7a4b2df7acf6d789ce99
+EBUILD pambase-20120417-r3.ebuild 3492 SHA256 8ecd7f1cc4e55e54fbe3a67560d4ce77e6ae53afc28750f2b7a808827c4a5a2e SHA512 228044837a5d4133d54570ad233ea3dcb63b5e69f17882ef7e5faf5bfaf3e922d50ff01b44c2d0ee15470b6375ea2316f92df2a9607e9041152c5ec0fc5e19c5 WHIRLPOOL aca227184a5ae48865f30965ef0a6163c6f8632ac5dc98066cd27dfe938c83134ca7c6c0249c0dec8f9ec400ac787bd1055fedfd39909bea4bbb4cfc0de2e331
+EBUILD pambase-20140313.ebuild 2726 SHA256 32c38e82a9f40081cba1d9b1cc7271b4dc9886fb35776288fa0cdd64b43ee4ae SHA512 44e02b2afaf441b8313433630c872eb6f1e34cec55de331f64d3cce5d36395eda4f0c34016e262e01f5064226b6cbbdf8922792e68fdebe6c032727e9cb823b2 WHIRLPOOL 6cfed351ae30ecf90f88a4733db2c6ff1496cc1e4a0acae4a21bca8419f7f20ab16ffd31eda695cbdcafbbc72d554c7502c671a4c1a5360643356ec68a344004
+EBUILD pambase-20150213-r1.ebuild 2930 SHA256 96120be10e4b0922a45c869a1e458862644daf1db4b45ccd7f131ff439bb4d7d SHA512 b9ebae2b4c3021a117b751719644aa541274242e89cd4d9b8fd12e2efd508d6db1c38c5de982c61673c8c3e6e3e2cc2657d44b8f58f49851e350008f90ec07bd WHIRLPOOL d7ea3a26fa17d1d18a1abfc37ad3016c640e5dc581c282939a50f3bf203644155a9de9fc5eb7cf3ed55584b8c24c56439985a80cc08aaed2df77e2bda30e04be
+EBUILD pambase-20150213.ebuild 2849 SHA256 0b3f0cbe686ceb156ebc37efddc3f3fc84ebcab33eb78afaee781c311247fe95 SHA512 c2da34ce75650346f60bf6ec7b4aa10de3d98aac3a57cf58cb2e2520703fbd4ec56c3a0a0ccefac950e247d422f49eb3d84cf7cd2941465966bc4fc3e92c485e WHIRLPOOL 2b367bd28050ff313a585dc515b6cee89e7cfbf07d9870f0661d16f617fce75c4c2b8607edc0a8e6edddae5fd1d947b9ea9376ee0a40e18fac5bd3734430372c
+MISC ChangeLog 3041 SHA256 7ad606bb738a689b03dfe912805b64342c3340795d9ad17f12d6386acf4b20e0 SHA512 853f5a70e79e7d9506a9d2afd0ffa74bdf0a53f2256e6d4f026bc967b561fdff38d3c0f27bd7f3b436a95c740892e2df8bbf22b4445fbb534a2158983d87754e WHIRLPOOL 04803356f73a657963c1aa6f85a6c88c0c2c8fcba674091d705e5da7371243148d5bc72f26fc3002523e33c33aab4994af961b1b77c48a73feb8cd86dcefff54
+MISC ChangeLog-2015 22015 SHA256 9359bffedab79a79961fd59cd622c43608bdb2865de61742e35a53868e761c3f SHA512 d8d3827ebea9fd168b484d701d6f639af49ac92c22578be26201ef4c2a1e396fc3c0961fe101659585be9481d438e5d2e8c208cf0785971887f015f29d839718 WHIRLPOOL 33be8f3b4a265f1dfc9ff9fb5b432ed7eff05c6da54de912a935b0cd9e1b0ef41f4cf477543b1e31816ba3c29177170ebce989e762e77886973f2b9063f84063
+MISC metadata.xml 4297 SHA256 eef1c273f7bcc80a3f1538dbb7f957d0be91aa56430892f46656244c350abc26 SHA512 d717c2916e154630a756f7925794d43d43c5881bc9df53b82b35f86104366902a76f2d9298cf5a8511431084f0103fe91234c5e4172555677bbdc00db0a73a04 WHIRLPOOL cbc8f68c7f3d49afe53b60d945347316aca4ab77853eab5841758277546eed9fdcb7e615646a83882fa20a4afbae98778e5174fc578d946299ddc345c0082d1f
diff --git a/sys-auth/pambase/files/pambase-20120417-lastlog-silent.patch b/sys-auth/pambase/files/pambase-20120417-lastlog-silent.patch
new file mode 100644
index 000000000000..79266a740b61
--- /dev/null
+++ b/sys-auth/pambase/files/pambase-20120417-lastlog-silent.patch
@@ -0,0 +1,20 @@
+--- pambase-20120417/login.in.orig 2012-11-21 14:31:49.031948988 +0100
++++ pambase-20120417/login.in 2012-11-21 14:32:41.172330601 +0100
+@@ -3,4 +3,6 @@
+
+ account include system-local-login
+ password include system-local-login
++
++session optional pam_lastlog.so DEBUG
+ session include system-local-login
+--- pambase-20120417/system-login.in.orig 2012-11-21 14:31:42.232160039 +0100
++++ pambase-20120417/system-login.in 2012-11-21 14:35:20.738025880 +0100
+@@ -41,7 +41,7 @@
+ session required pam_env.so DEBUG
+ #endif
+ #if HAVE_LASTLOG
+-session optional pam_lastlog.so DEBUG
++session optional pam_lastlog.so silent DEBUG
+ #endif
+ session include system-auth
+ #if HAVE_CONSOLEKIT
diff --git a/sys-auth/pambase/files/pambase-20120417-systemd-auth.patch b/sys-auth/pambase/files/pambase-20120417-systemd-auth.patch
new file mode 100644
index 000000000000..99c38e784771
--- /dev/null
+++ b/sys-auth/pambase/files/pambase-20120417-systemd-auth.patch
@@ -0,0 +1,26 @@
+diff -u pambase-20120417.old/system-auth.in pambase-20120417/system-auth.in
+--- pambase-20120417.old/system-auth.in 2013-10-27 15:58:21.766193297 +0100
++++ pambase-20120417/system-auth.in 2013-10-27 16:01:10.614555766 +0100
+@@ -35,3 +35,7 @@
+ session optional pam_ssh.so
+ #endif
+ #include "system-session.inc"
++
++#if HAVE_SYSTEMD
++-session optional pam_systemd.so
++#endif
+Sólo en pambase-20120417: system-auth.in~
+diff -u pambase-20120417.old/system-login.in pambase-20120417/system-login.in
+--- pambase-20120417.old/system-login.in 2013-10-27 15:58:21.766193297 +0100
++++ pambase-20120417/system-login.in 2013-10-27 15:59:42.032316285 +0100
+@@ -47,9 +47,6 @@
+ #if HAVE_CONSOLEKIT
+ -session optional pam_ck_connector.so nox11
+ #endif
+-#if HAVE_SYSTEMD
+--session optional pam_systemd.so
+-#endif
+ #if HAVE_GNOME_KEYRING
+ session optional pam_gnome_keyring.so auto_start
+ #endif
+Sólo en pambase-20120417: system-login.in~
diff --git a/sys-auth/pambase/files/pambase-20120417-systemd.patch b/sys-auth/pambase/files/pambase-20120417-systemd.patch
new file mode 100644
index 000000000000..047fb41c8592
--- /dev/null
+++ b/sys-auth/pambase/files/pambase-20120417-systemd.patch
@@ -0,0 +1,29 @@
+http://bugs.gentoo.org/372229
+
+--- Makefile
++++ Makefile
+@@ -28,6 +28,10 @@
+ PAMFLAGS += -DHAVE_CONSOLEKIT=1
+ endif
+
++ifeq "$(SYSTEMD)" "yes"
++PAMFLAGS += -DHAVE_SYSTEMD=1
++endif
++
+ ifeq "$(GNOME_KEYRING)" "yes"
+ PAMFLAGS += -DHAVE_GNOME_KEYRING=1
+ endif
+--- system-login.in
++++ system-login.in
+@@ -45,7 +45,10 @@
+ #endif
+ session include system-auth
+ #if HAVE_CONSOLEKIT
+-session optional pam_ck_connector.so nox11
++-session optional pam_ck_connector.so nox11
++#endif
++#if HAVE_SYSTEMD
++-session optional pam_systemd.so
+ #endif
+ #if HAVE_GNOME_KEYRING
+ session optional pam_gnome_keyring.so auto_start
diff --git a/sys-auth/pambase/files/pambase-20150213-elogind.patch b/sys-auth/pambase/files/pambase-20150213-elogind.patch
new file mode 100644
index 000000000000..7ec92f787b82
--- /dev/null
+++ b/sys-auth/pambase/files/pambase-20150213-elogind.patch
@@ -0,0 +1,23 @@
+--- a/Makefile
++++ b/Makefile
+@@ -32,6 +32,10 @@
+ PAMFLAGS += -DHAVE_SYSTEMD=1
+ endif
+
++ifeq "$(ELOGIND)" "yes"
++PAMFLAGS += -DHAVE_ELOGIND=1
++endif
++
+ ifeq "$(GNOME_KEYRING)" "yes"
+ PAMFLAGS += -DHAVE_GNOME_KEYRING=1
+ endif
+--- a/system-auth.in
++++ b/system-auth.in
+@@ -39,3 +39,7 @@
+ #if HAVE_SYSTEMD
+ -session optional pam_systemd.so
+ #endif
++
++#if HAVE_ELOGIND
++-session optional pam_elogind.so
++#endif
diff --git a/sys-auth/pambase/files/pambase-20150213-selinux-note.patch b/sys-auth/pambase/files/pambase-20150213-selinux-note.patch
new file mode 100644
index 000000000000..0c44d108090c
--- /dev/null
+++ b/sys-auth/pambase/files/pambase-20150213-selinux-note.patch
@@ -0,0 +1,11 @@
+--- a/system-login.in.orig 2015-04-17 16:58:02.247000000 +0200
++++ b/system-login.in 2015-04-17 16:58:07.684000000 +0200
+@@ -48,7 +48,7 @@
+ session optional pam_ck_connector.so nox11
+ #endif
+ #if HAVE_SELINUX
+-# Note: modules that run in the user's context must come after this line.
++ # Note: modules that run in the user's context must come after this line.
+ session required pam_selinux.so multiple open
+ #endif
+ #if HAVE_GNOME_KEYRING
diff --git a/sys-auth/pambase/metadata.xml b/sys-auth/pambase/metadata.xml
new file mode 100644
index 000000000000..7cd2dea5abe7
--- /dev/null
+++ b/sys-auth/pambase/metadata.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>pam-bugs@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="cracklib">
+ Enable pam_cracklib module on system authentication stack. This
+ produces warnings when changing password to something easily
+ crackable. It requires the same USE flag to be enabled on
+ <pkg>sys-libs/pam</pkg> or system login might be impossible.
+ </flag>
+ <flag name="consolekit">
+ Enable pam_ck_connector module on local system logins. This
+ allows for console logins to make use of ConsoleKit
+ authorization.
+ </flag>
+ <flag name="elogind">
+ Use pam_elogind module to register user sessions with elogind.
+ </flag>
+ <flag name="systemd">
+ Use pam_systemd module to register user sessions in the systemd
+ control group hierarchy.
+ </flag>
+ <flag name="gnome-keyring">
+ Enable pam_gnome_keyring module on system login stack. This
+ enables proper Gnome Keyring access to logins, whether they are
+ done with the login shell, a Desktop Manager or a remote login
+ systems such as SSH.
+ </flag>
+ <flag name="debug">
+ Enable debug information logging on syslog(3) for all the
+ modules supporting this in the system authentication and system
+ login stacks.
+ </flag>
+ <flag name="passwdqc">
+ Enable pam_passwdqc module on system auth stack for password
+ quality validation. This is an alternative to pam_cracklib
+ producing warnings, rejecting or providing example passwords
+ when changing your system password. It is used by default by
+ OpenWall GNU/*/Linux and by FreeBSD.
+ </flag>
+ <flag name="mktemp">
+ Enable pam_mktemp module on system auth stack for session
+ handling. This module creates a private temporary directory for
+ the user, and sets TMP and TMPDIR accordingly.
+ </flag>
+ <flag name="pam_ssh">
+ Enable pam_ssh module on system auth stack for authentication
+ and session handling. This module will accept as password the
+ passphrase of a private SSH key (one of ~/.ssh/id_rsa,
+ ~/.ssh/id_dsa or ~/.ssh/identity), and will spawn an ssh-agent
+ instance to cache the open key.
+ </flag>
+ <flag name="sha512">
+ Switch Linux-PAM's pam_unix module to use sha512 for passwords
+ hashes rather than MD5. This option requires
+ <pkg>sys-libs/pam</pkg> version 1.0.1 built against
+ <pkg>sys-libs/glibc</pkg> version 2.7, if it's built against an
+ earlier version, it will silently be ignored, and MD5 hashes
+ will be used. All the passwords changed after this USE flag is
+ enabled will be saved to the shadow file hashed using SHA512
+ function. The password previously saved will be left
+ untouched. Please note that while SHA512-hashed passwords will
+ still be recognised if the USE flag is removed, the shadow file
+ will not be compatible with systems using an earlier glibc
+ version.
+ </flag>
+ <flag name="pam_krb5">
+ Enable pam_krb5 module on system auth stack, as an alternative
+ to pam_unix. If Kerberos authentication succeed, only pam_unix
+ will be ignore, and all the other modules will proceed as usual,
+ including Gnome Keyring and other session modules. It requires
+ <pkg>sys-libs/pam</pkg> as PAM implementation.
+ </flag>
+ <flag name="minimal">
+ Disables the standard PAM modules that provide extra information
+ to users on login; this includes pam_tally (and pam_tally2 for
+ Linux PAM 1.1 and later), pam_lastlog, pam_motd and other
+ similar modules. This might not be a good idea on a multi-user
+ system but could reduce slightly the overhead on single-user
+ non-networked systems.
+ </flag>
+ <flag name="nullok">
+ Enable the nullok option with the pam_unix module. This allows
+ people to login with blank passwords.
+ </flag>
+ <flag name="securetty">
+ Enable pam_securetty module in the login stack. Not generally
+ relevant anymore as the login stack only refers to local logins
+ and local terminals imply secure access in the first place.
+ </flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-auth/pambase/pambase-20101024-r2.ebuild b/sys-auth/pambase/pambase-20101024-r2.ebuild
new file mode 100644
index 000000000000..bc5bc3f7019d
--- /dev/null
+++ b/sys-auth/pambase/pambase-20101024-r2.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit eutils
+
+DESCRIPTION="PAM base configuration files"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:PAM"
+SRC_URI="https://dev.gentoo.org/~flameeyes/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="debug cracklib passwdqc consolekit gnome-keyring selinux mktemp pam_ssh +sha512 pam_krb5 minimal"
+RESTRICT="binchecks"
+
+RDEPEND="
+ || (
+ >=sys-libs/pam-0.99.9.0-r1
+ ( sys-auth/openpam
+ || ( sys-freebsd/freebsd-pam-modules sys-netbsd/netbsd-pam-modules )
+ )
+ )
+ cracklib? ( >=sys-libs/pam-0.99[cracklib] )
+ consolekit? ( >=sys-auth/consolekit-0.3[pam] )
+ gnome-keyring? ( >=gnome-base/gnome-keyring-2.20[pam] )
+ selinux? ( >=sys-libs/pam-0.99[selinux] )
+ passwdqc? ( >=sys-auth/pam_passwdqc-1.0.4 )
+ mktemp? ( sys-auth/pam_mktemp )
+ pam_ssh? ( sys-auth/pam_ssh )
+ sha512? ( >=sys-libs/pam-1.0.1 )
+ pam_krb5? (
+ || ( >=sys-libs/pam-1.1.0 sys-auth/openpam )
+ >=sys-auth/pam_krb5-4.3
+ )
+ !<sys-freebsd/freebsd-pam-modules-6.2-r1
+ !<sys-libs/pam-0.99.9.0-r1"
+DEPEND="app-portage/portage-utils"
+
+src_compile() {
+ local implementation=
+ local linux_pam_version=
+ if has_version sys-libs/pam; then
+ implementation="linux-pam"
+ local ver_str=$(qatom `best_version sys-libs/pam` | cut -d ' ' -f 3)
+ linux_pam_version=$(printf "0x%02x%02x%02x" ${ver_str//\./ })
+ elif has_version sys-auth/openpam; then
+ implementation="openpam"
+ else
+ die "PAM implementation not identified"
+ fi
+
+ use_var() {
+ local varname=$(echo $1 | tr [a-z] [A-Z])
+ local usename=${2-$(echo $1 | tr [A-Z] [a-z])}
+ local varvalue=$(use $usename && echo yes || echo no)
+ echo "${varname}=${varvalue}"
+ }
+
+ emake \
+ GIT=true \
+ $(use_var debug) \
+ $(use_var cracklib) \
+ $(use_var passwdqc) \
+ $(use_var consolekit) \
+ $(use_var GNOME_KEYRING gnome-keyring) \
+ $(use_var selinux) \
+ $(use_var mktemp) \
+ $(use_var PAM_SSH pam_ssh) \
+ $(use_var sha512) \
+ $(use_var KRB5 pam_krb5) \
+ $(use_var minimal) \
+ IMPLEMENTATION=${implementation} \
+ LINUX_PAM_VERSION=${linux_pam_version}
+}
+
+src_test() { :; }
+
+src_install() {
+ emake GIT=true DESTDIR="${ED}" install
+}
+
+pkg_postinst() {
+ if use sha512; then
+ elog "Starting from version 20080801, pambase optionally enables"
+ elog "SHA512-hashed passwords. For this to work, you need sys-libs/pam-1.0.1"
+ elog "built against sys-libs/glibc-2.7 or later."
+ elog "If you don't have support for this, it will automatically fallback"
+ elog "to MD5-hashed passwords, just like before."
+ elog
+ elog "Please note that the change only affects the newly-changed passwords"
+ elog "and that SHA512-hashed passwords will not work on earlier versions"
+ elog "of glibc or Linux-PAM."
+ fi
+}
diff --git a/sys-auth/pambase/pambase-20120417-r3.ebuild b/sys-auth/pambase/pambase-20120417-r3.ebuild
new file mode 100644
index 000000000000..6f6b7a3a695d
--- /dev/null
+++ b/sys-auth/pambase/pambase-20120417-r3.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="PAM base configuration files"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:PAM"
+SRC_URI="https://dev.gentoo.org/~flameeyes/${PN}/${P}.tar.bz2
+ https://dev.gentoo.org/~phajdan.jr/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 -sparc-fbsd -x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="consolekit cracklib debug gnome-keyring minimal mktemp pam_krb5 pam_ssh passwdqc selinux +sha512 systemd"
+
+RESTRICT=binchecks
+
+MIN_PAM_REQ=1.1.3
+
+RDEPEND="
+ || (
+ >=sys-libs/pam-${MIN_PAM_REQ}
+ ( sys-auth/openpam || ( sys-freebsd/freebsd-pam-modules sys-netbsd/netbsd-pam-modules ) )
+ )
+ consolekit? ( >=sys-auth/consolekit-0.4.5_p2012[pam] )
+ cracklib? ( >=sys-libs/pam-${MIN_PAM_REQ}[cracklib] )
+ gnome-keyring? ( >=gnome-base/gnome-keyring-2.32[pam] )
+ mktemp? ( sys-auth/pam_mktemp )
+ pam_krb5? (
+ || ( >=sys-libs/pam-${MIN_PAM_REQ} sys-auth/openpam )
+ >=sys-auth/pam_krb5-4.3
+ )
+ pam_ssh? ( sys-auth/pam_ssh )
+ passwdqc? ( >=sys-auth/pam_passwdqc-1.0.4 )
+ selinux? ( >=sys-libs/pam-${MIN_PAM_REQ}[selinux] )
+ sha512? ( >=sys-libs/pam-${MIN_PAM_REQ} )
+ systemd? ( >=sys-apps/systemd-44-r1[pam] )
+ !<sys-apps/shadow-4.1.5-r1
+ !<sys-freebsd/freebsd-pam-modules-6.2-r1
+ !<sys-libs/pam-0.99.9.0-r1"
+DEPEND="app-portage/portage-utils"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-systemd.patch
+ epatch "${FILESDIR}"/${P}-lastlog-silent.patch
+ epatch "${FILESDIR}"/${P}-systemd-auth.patch # 485470
+}
+
+src_compile() {
+ local implementation=
+ local linux_pam_version=
+ if has_version sys-libs/pam; then
+ implementation=linux-pam
+ local ver_str=$(qatom `best_version sys-libs/pam` | cut -d ' ' -f 3)
+ linux_pam_version=$(printf "0x%02x%02x%02x" ${ver_str//\./ })
+ elif has_version sys-auth/openpam; then
+ implementation=openpam
+ else
+ die "PAM implementation not identified"
+ fi
+
+ use_var() {
+ local varname=$(echo $1 | tr [a-z] [A-Z])
+ local usename=${2-$(echo $1 | tr [A-Z] [a-z])}
+ local varvalue=$(usex $usename)
+ echo "${varname}=${varvalue}"
+ }
+
+ emake \
+ GIT=true \
+ $(use_var debug) \
+ $(use_var cracklib) \
+ $(use_var passwdqc) \
+ $(use_var consolekit) \
+ $(use_var systemd) \
+ $(use_var GNOME_KEYRING gnome-keyring) \
+ $(use_var selinux) \
+ $(use_var mktemp) \
+ $(use_var PAM_SSH pam_ssh) \
+ $(use_var sha512) \
+ $(use_var KRB5 pam_krb5) \
+ $(use_var minimal) \
+ IMPLEMENTATION=${implementation} \
+ LINUX_PAM_VERSION=${linux_pam_version}
+}
+
+src_test() { :; }
+
+src_install() {
+ emake GIT=true DESTDIR="${ED}" install
+}
+
+pkg_postinst() {
+ if use sha512; then
+ elog "Starting from version 20080801, pambase optionally enables"
+ elog "SHA512-hashed passwords. For this to work, you need sys-libs/pam-1.0.1"
+ elog "built against sys-libs/glibc-2.7 or later."
+ elog "If you don't have support for this, it will automatically fallback"
+ elog "to MD5-hashed passwords, just like before."
+ elog
+ elog "Please note that the change only affects the newly-changed passwords"
+ elog "and that SHA512-hashed passwords will not work on earlier versions"
+ elog "of glibc or Linux-PAM."
+ fi
+
+ if use systemd && use consolekit; then
+ ewarn "You are enabling 2 session trackers, ConsoleKit and systemd-logind"
+ ewarn "at the same time. This is not recommended setup to have, please"
+ ewarn "consider disabling either USE=\"consolekit\" or USE=\"systemd\."
+ fi
+}
diff --git a/sys-auth/pambase/pambase-20140313.ebuild b/sys-auth/pambase/pambase-20140313.ebuild
new file mode 100644
index 000000000000..ca4e1447d60b
--- /dev/null
+++ b/sys-auth/pambase/pambase-20140313.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="PAM base configuration files"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:PAM"
+SRC_URI="https://dev.gentoo.org/~ssuominen/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 -sparc-fbsd -x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="consolekit cracklib debug gnome-keyring minimal mktemp pam_krb5 pam_ssh passwdqc selinux +sha512 systemd"
+
+RESTRICT=binchecks
+
+MIN_PAM_REQ=1.1.3
+
+RDEPEND="
+ || (
+ >=sys-libs/pam-${MIN_PAM_REQ}
+ ( sys-auth/openpam || ( sys-freebsd/freebsd-pam-modules sys-netbsd/netbsd-pam-modules ) )
+ )
+ consolekit? ( >=sys-auth/consolekit-0.4.6[pam] )
+ cracklib? ( >=sys-libs/pam-${MIN_PAM_REQ}[cracklib] )
+ gnome-keyring? ( >=gnome-base/gnome-keyring-2.32[pam] )
+ mktemp? ( sys-auth/pam_mktemp )
+ pam_krb5? (
+ || ( >=sys-libs/pam-${MIN_PAM_REQ} sys-auth/openpam )
+ >=sys-auth/pam_krb5-4.3
+ )
+ pam_ssh? ( sys-auth/pam_ssh )
+ passwdqc? ( >=sys-auth/pam_passwdqc-1.0.4 )
+ selinux? ( >=sys-libs/pam-${MIN_PAM_REQ}[selinux] )
+ sha512? ( >=sys-libs/pam-${MIN_PAM_REQ} )
+ systemd? ( >=sys-apps/systemd-204[pam] )
+ !<sys-apps/shadow-4.1.5-r1
+ !<sys-freebsd/freebsd-pam-modules-6.2-r1
+ !<sys-libs/pam-0.99.9.0-r1"
+DEPEND="app-portage/portage-utils"
+
+src_compile() {
+ local implementation=
+ local linux_pam_version=
+ if has_version sys-libs/pam; then
+ implementation=linux-pam
+ local ver_str=$(qatom `best_version sys-libs/pam` | cut -d ' ' -f 3)
+ linux_pam_version=$(printf "0x%02x%02x%02x" ${ver_str//\./ })
+ elif has_version sys-auth/openpam; then
+ implementation=openpam
+ else
+ die "PAM implementation not identified"
+ fi
+
+ use_var() {
+ local varname=$(echo $1 | tr [a-z] [A-Z])
+ local usename=${2-$(echo $1 | tr [A-Z] [a-z])}
+ local varvalue=$(usex $usename)
+ echo "${varname}=${varvalue}"
+ }
+
+ emake \
+ GIT=true \
+ $(use_var debug) \
+ $(use_var cracklib) \
+ $(use_var passwdqc) \
+ $(use_var consolekit) \
+ $(use_var systemd) \
+ $(use_var GNOME_KEYRING gnome-keyring) \
+ $(use_var selinux) \
+ $(use_var mktemp) \
+ $(use_var PAM_SSH pam_ssh) \
+ $(use_var sha512) \
+ $(use_var KRB5 pam_krb5) \
+ $(use_var minimal) \
+ IMPLEMENTATION=${implementation} \
+ LINUX_PAM_VERSION=${linux_pam_version}
+}
+
+src_test() { :; }
+
+src_install() {
+ emake GIT=true DESTDIR="${ED}" install
+}
+
+pkg_postinst() {
+ if use systemd && use consolekit; then
+ ewarn "You are enabling 2 session trackers, ConsoleKit and systemd-logind"
+ ewarn "at the same time. This is not recommended setup to have, please"
+ ewarn "consider disabling either USE=\"consolekit\" or USE=\"systemd\."
+ fi
+}
diff --git a/sys-auth/pambase/pambase-20150213-r1.ebuild b/sys-auth/pambase/pambase-20150213-r1.ebuild
new file mode 100644
index 000000000000..8806924657cf
--- /dev/null
+++ b/sys-auth/pambase/pambase-20150213-r1.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DESCRIPTION="PAM base configuration files"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:PAM"
+SRC_URI="https://dev.gentoo.org/~vapier/dist/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 -sparc-fbsd -x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="consolekit cracklib debug elogind gnome-keyring minimal mktemp +nullok pam_krb5 pam_ssh passwdqc securetty selinux +sha512 systemd"
+
+RESTRICT="binchecks"
+
+MIN_PAM_REQ=1.1.3
+
+RDEPEND="
+ || (
+ >=sys-libs/pam-${MIN_PAM_REQ}
+ ( sys-auth/openpam || ( sys-freebsd/freebsd-pam-modules sys-netbsd/netbsd-pam-modules ) )
+ )
+ consolekit? ( sys-auth/consolekit[pam] )
+ cracklib? ( sys-libs/pam[cracklib] )
+ elogind? ( sys-auth/elogind[pam] )
+ gnome-keyring? ( gnome-base/gnome-keyring[pam] )
+ mktemp? ( sys-auth/pam_mktemp )
+ pam_krb5? (
+ || ( >=sys-libs/pam-${MIN_PAM_REQ} sys-auth/openpam )
+ sys-auth/pam_krb5
+ )
+ pam_ssh? ( sys-auth/pam_ssh )
+ passwdqc? ( sys-auth/pam_passwdqc )
+ selinux? ( sys-libs/pam[selinux] )
+ sha512? ( >=sys-libs/pam-${MIN_PAM_REQ} )
+ systemd? ( sys-apps/systemd[pam] )
+"
+DEPEND="
+ app-arch/xz-utils
+ app-portage/portage-utils
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-selinux-note.patch #540096
+ "${FILESDIR}"/${P}-elogind.patch #599498
+)
+
+pkg_setup() {
+ local stcnt=0
+
+ use consolekit && stcnt=$((stcnt+1))
+ use elogind && stcnt=$((stcnt+1))
+ use systemd && stcnt=$((stcnt+1))
+
+ if [[ ${stcnt} -gt 1 ]] ; then
+ ewarn "You are enabling ${stcnt} session trackers at the same time."
+ ewarn "This is not a recommended setup to have. Please consider enabling"
+ ewarn "only one of USE=\"consolekit\", USE=\"elogind\" or USE=\"systemd\"."
+ fi
+}
+
+src_compile() {
+ local implementation linux_pam_version
+ if has_version sys-libs/pam; then
+ implementation=linux-pam
+ local ver_str=$(qatom $(best_version sys-libs/pam) | cut -d ' ' -f 3)
+ linux_pam_version=$(printf "0x%02x%02x%02x" ${ver_str//\./ })
+ elif has_version sys-auth/openpam; then
+ implementation=openpam
+ else
+ die "PAM implementation not identified"
+ fi
+
+ use_var() {
+ local varname=$(echo "$1" | tr '[:lower:]' '[:upper:]')
+ local usename=${2-$(echo "$1" | tr '[:upper:]' '[:lower:]')}
+ local varvalue=$(usex ${usename})
+ echo "${varname}=${varvalue}"
+ }
+
+ emake \
+ GIT=true \
+ $(use_var debug) \
+ $(use_var cracklib) \
+ $(use_var passwdqc) \
+ $(use_var consolekit) \
+ $(use_var elogind) \
+ $(use_var systemd) \
+ $(use_var GNOME_KEYRING gnome-keyring) \
+ $(use_var selinux) \
+ $(use_var nullok) \
+ $(use_var mktemp) \
+ $(use_var pam_ssh) \
+ $(use_var securetty) \
+ $(use_var sha512) \
+ $(use_var KRB5 pam_krb5) \
+ $(use_var minimal) \
+ IMPLEMENTATION=${implementation} \
+ LINUX_PAM_VERSION=${linux_pam_version}
+}
+
+src_test() { :; }
+
+src_install() {
+ emake GIT=true DESTDIR="${ED}" install
+}
diff --git a/sys-auth/pambase/pambase-20150213.ebuild b/sys-auth/pambase/pambase-20150213.ebuild
new file mode 100644
index 000000000000..a97db9daf906
--- /dev/null
+++ b/sys-auth/pambase/pambase-20150213.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="PAM base configuration files"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:PAM"
+SRC_URI="https://dev.gentoo.org/~vapier/dist/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 -sparc-fbsd -x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="consolekit cracklib debug gnome-keyring minimal mktemp +nullok pam_krb5 pam_ssh passwdqc securetty selinux +sha512 systemd"
+
+RESTRICT=binchecks
+
+MIN_PAM_REQ=1.1.3
+
+RDEPEND="
+ || (
+ >=sys-libs/pam-${MIN_PAM_REQ}
+ ( sys-auth/openpam || ( sys-freebsd/freebsd-pam-modules sys-netbsd/netbsd-pam-modules ) )
+ )
+ consolekit? ( >=sys-auth/consolekit-0.4.6[pam] )
+ cracklib? ( sys-libs/pam[cracklib] )
+ gnome-keyring? ( >=gnome-base/gnome-keyring-2.32[pam] )
+ mktemp? ( sys-auth/pam_mktemp )
+ pam_krb5? (
+ || ( >=sys-libs/pam-${MIN_PAM_REQ} sys-auth/openpam )
+ >=sys-auth/pam_krb5-4.3
+ )
+ pam_ssh? ( sys-auth/pam_ssh )
+ passwdqc? ( >=sys-auth/pam_passwdqc-1.0.4 )
+ selinux? ( sys-libs/pam[selinux] )
+ sha512? ( >=sys-libs/pam-${MIN_PAM_REQ} )
+ systemd? ( >=sys-apps/systemd-204[pam] )
+ !<sys-apps/shadow-4.1.5-r1
+ !<sys-freebsd/freebsd-pam-modules-6.2-r1
+ !<sys-libs/pam-0.99.9.0-r1"
+DEPEND="app-portage/portage-utils
+ app-arch/xz-utils"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-selinux-note.patch #540096
+}
+
+src_compile() {
+ local implementation linux_pam_version
+ if has_version sys-libs/pam; then
+ implementation=linux-pam
+ local ver_str=$(qatom $(best_version sys-libs/pam) | cut -d ' ' -f 3)
+ linux_pam_version=$(printf "0x%02x%02x%02x" ${ver_str//\./ })
+ elif has_version sys-auth/openpam; then
+ implementation=openpam
+ else
+ die "PAM implementation not identified"
+ fi
+
+ use_var() {
+ local varname=$(echo "$1" | tr '[:lower:]' '[:upper:]')
+ local usename=${2-$(echo "$1" | tr '[:upper:]' '[:lower:]')}
+ local varvalue=$(usex ${usename})
+ echo "${varname}=${varvalue}"
+ }
+
+ emake \
+ GIT=true \
+ $(use_var debug) \
+ $(use_var cracklib) \
+ $(use_var passwdqc) \
+ $(use_var consolekit) \
+ $(use_var systemd) \
+ $(use_var GNOME_KEYRING gnome-keyring) \
+ $(use_var selinux) \
+ $(use_var nullok) \
+ $(use_var mktemp) \
+ $(use_var pam_ssh) \
+ $(use_var securetty) \
+ $(use_var sha512) \
+ $(use_var KRB5 pam_krb5) \
+ $(use_var minimal) \
+ IMPLEMENTATION=${implementation} \
+ LINUX_PAM_VERSION=${linux_pam_version}
+}
+
+src_test() { :; }
+
+src_install() {
+ emake GIT=true DESTDIR="${ED}" install
+}
+
+pkg_postinst() {
+ if use systemd && use consolekit; then
+ ewarn "You are enabling 2 session trackers, ConsoleKit and systemd-logind"
+ ewarn "at the same time. This is not recommended setup to have, please"
+ ewarn "consider disabling either USE=\"consolekit\" or USE=\"systemd\."
+ fi
+}
diff --git a/sys-auth/passwdqc/Manifest b/sys-auth/passwdqc/Manifest
new file mode 100644
index 000000000000..2d140d0a6bcf
--- /dev/null
+++ b/sys-auth/passwdqc/Manifest
@@ -0,0 +1,6 @@
+AUX passwdqc-1.3.0-build.patch 1773 SHA256 16030902269d0b2dffea6afe9b1efb7937932a6b46b874b460042499257e0833 SHA512 da43381deab4c39e8c905187f17e49379e44b96c729d229a1fa5aff067b510fae5cbb107896fd83273cc8f41e916023eff5d1b1f37ad739e4de3cf3945f289b8 WHIRLPOOL 2e2dc4a17b9ac95c2d610200e2efa2ce6b29e3741d54d58b71b6084824265fc006bf65837fb29f722092a66279c34700b02562bedac079f7bf3c791c922a8f3a
+DIST passwdqc-1.3.0.tar.gz 48833 SHA256 23290ac21a055d9039b510bbc0d830a6dbf4295688d4317e0350ed4b6e5e7f50 SHA512 d9c2fd075ed4ff1f1dfa63fe40010d446abf8db306cacc77fd1e429fbd2dd1a6d2e4e91df46beb4c30bc30ff0cdd183ba85cefd362455ead9629d3a1c4eefece WHIRLPOOL c746394a2655b198597b70c29c0f66f6c1186a782da8c1a925fc9b7e838876d991c52469e9d526ecb99d2f1f36c6c5c83289b4ce3c92c269517dd1f507ddd7b3
+EBUILD passwdqc-1.3.0.ebuild 1759 SHA256 a694dc81bd684e41b65e97aa833ef8fa5eeda3660eb881b86922412d3ccb4914 SHA512 45fbfbf4801be9a468f187cae927be9187d878ca74d43ddbd73aaa2c735920012a7cf6e02acce156ecfa60556ac75101ce63f5dea8cc766e4576524a519e3fba WHIRLPOOL 7dd4ab4ca3d19e05bddf07ca7c57295d52b24a89859eb17f9f4f2e72137ab0a354ac4a3dce1833e31bccf577ab4522648d669bc84f09ea08042a4683ee8e1b91
+MISC ChangeLog 2974 SHA256 4f978f0eeb7f179b0afe5d00c4fe4d7d8b94569658f553430c442a72e6b0916e SHA512 5c16ea6fcf722171326fde93fdb5a8085c64a528837f0a2e7f7d15455253ee6fd38a2f1f0c981f48c56b2ede8e5999866359b920af3e173438e62d43f18514a0 WHIRLPOOL c1f0c978208abf643f9c6cf19f6912df3135ef870714c63245c90fc5972a575879e64ff2a1599e83d994d455f86ffe92497463fcfd208fa4fa9ae49a1dccadaf
+MISC ChangeLog-2015 569 SHA256 01520b9634cd2f90f4595e8e2449b47a50feb08eef8c8f82967f2db99bcdb632 SHA512 345d8da69df5d017a9ef89c9f79a8d06379bce385d7b04c6bd61caf793d58a2eaaa420833e28470b80347adf8cc49af1b176039cf420034164befb5fd0744065 WHIRLPOOL c36f92ec2c3d54a3a8c4167c61974053814729d1f7b43b24a22698b76111cf00bdc23b15e9d2cd721dc3a902e45f2d45326ec2c25f74d63110be6c75527f5175
+MISC metadata.xml 662 SHA256 27d8191ddea121e005016fab69b54590a2b5aa21224f9aa64eaaeb7b34886a2f SHA512 3490b4727006ed7dc497659798f36c6c2ca84855f5aa782394de05285e30440853e2ca746c3d3b2ec018609a1c1ce24d5c0a7dc866f68354e12de5a8db4f3a96 WHIRLPOOL 454728f824aa63060dd3badf9488a4d1f6dd8bc85b927ae919c862ec85eb9365309b1c79a52a5239a4257032b7170f0505c2a4daaee075e6d42b73a128006313
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..9f0213d0d81b
--- /dev/null
+++ b/sys-auth/passwdqc/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <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..c2f29505f944
--- /dev/null
+++ b/sys-auth/passwdqc/passwdqc-1.3.0.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+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 ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-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
+ # See if the system has a shadow.h. #554504
+ echo '#include <shadow.h>' > "${T}"/test.c
+ if ! $(tc-getCPP) ${CPPFLAGS} "${T}"/test.c >& /dev/null ; then
+ sed -i -e 's:-DHAVE_SHADOW::' Makefile || die
+ fi
+}
+
+_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
+}
diff --git a/sys-auth/polkit-pkla-compat/Manifest b/sys-auth/polkit-pkla-compat/Manifest
new file mode 100644
index 000000000000..fe22fbea894c
--- /dev/null
+++ b/sys-auth/polkit-pkla-compat/Manifest
@@ -0,0 +1,5 @@
+DIST polkit-pkla-compat-0.1.tar.xz 291148 SHA256 cbf804dfc235b40f2f7ea694c37d577f1cb5d3042d53063de1753016a46c39af SHA512 968cf547db977731a6c6bb292fa86ef46a2ce8f74d008da62f219c20da8cdde94f6309dccba3be33d0111bfa34609799bdeee4d2464395c8837370d022d425c5 WHIRLPOOL f45db2c04c6dc470bdb15365e00a2483310c7bbf305683128162693c93b05aa49f4e9e33d9db06d784de6db28647b884e7fc9752944b5d14a139c4a01cb7ddcf
+EBUILD polkit-pkla-compat-0.1.ebuild 732 SHA256 afa1cbaa3c3b8e48c814176acee78987ed09f78652b47710b77c3ded71652162 SHA512 cdce406f34aaa262791686e945ba0ad43d7e6c8108bcefd09e18920eb8bad4baf6e9f79ef1a5619b2f31b467440d33d4fc7e8e762a962d4a4859205effdeff29 WHIRLPOOL fb005a76f9190ce9644fbc7f3d47924070814dfb66f1f9ff5412b02451c4e0955ce58d40d7394990c23a72d52689168efab285502a851586c01fd33f128ccc49
+MISC ChangeLog 2748 SHA256 305d589d7c52c79e9a29d9a8182cc8ef95edbbc63ae0c13f50ebbda38ce116c2 SHA512 ef2c52df79f11db89322961327a008dc9a43a1782074a220026ff039bb4f8fe4d631275598b58f3bcd2857060294922ec9db7aa214b5139e57bf6f65b723be3f WHIRLPOOL fe746ba3e38072c8cced1d00fd7ec9c3c8778218dd1a00cb4f4211f6c326fbae75dc4d4b89c7068096cfcb0ff40b0e7fb68658b822bd11999486e2236a4d5b44
+MISC ChangeLog-2015 482 SHA256 68eeafc0ef1bb814bc155ff5ace24ce46bf9555921f03f6a8b3c7811287957b5 SHA512 68280b0dff9126f06943188b24f3d29703ef57b5e0c6312a56e416f21814d032ccf4552408c913610892f146fdd67dc8ef4da55930c8e135f1bfa4c04239a67e WHIRLPOOL 5f0e5eaf7d14c1a32b4e3d096e3965bf7fff675faa7bcf7f8baa6510b037fa4a395afff944a77ec233c485125d0b2ee0c46fb49f3da3d1ef54e2e0668f10c2cc
+MISC metadata.xml 228 SHA256 a3c8fb486cd4bec96195197f2974a236066bd02c05d29ace05a844a43bbfd66e SHA512 4f5e63f918a0f8790db49c5b12173c673f86935f00796a04acfed573f618379b73b05b1869941e11f881fe69d4958f5287ce815fd710eadb6ac9f2680894caae WHIRLPOOL 4690b7b1591c1f8a8b55f8693dbd5172642a2d377c2f12f3b20dca75a6befc9eeac6eeb7e83ba2332b760d64b5c6fd0ac0000b5a40c416eaeec05f49eb6de750
diff --git a/sys-auth/polkit-pkla-compat/metadata.xml b/sys-auth/polkit-pkla-compat/metadata.xml
new file mode 100644
index 000000000000..95e86c12108a
--- /dev/null
+++ b/sys-auth/polkit-pkla-compat/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>freedesktop-bugs@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-auth/polkit-pkla-compat/polkit-pkla-compat-0.1.ebuild b/sys-auth/polkit-pkla-compat/polkit-pkla-compat-0.1.ebuild
new file mode 100644
index 000000000000..20fb5c74f07c
--- /dev/null
+++ b/sys-auth/polkit-pkla-compat/polkit-pkla-compat-0.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+DESCRIPTION="Rules for polkit to add compatibility with pklocalauthority"
+HOMEPAGE="http://fedorahosted.org/polkit-pkla-compat/"
+SRC_URI="http://fedorahosted.org/releases/${PN:0:1}/${PN:1:1}/${PN}/${P}.tar.xz"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~ppc x86"
+IUSE=""
+
+RDEPEND=">=dev-libs/glib-2.30
+ >=sys-auth/polkit-0.110"
+DEPEND="${RDEPEND}
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ virtual/pkgconfig"
+
+DOCS="AUTHORS NEWS README"
+
+src_install() {
+ default
+ fowners -R root:polkitd /etc/polkit-1/localauthority
+}
+
+pkg_postinst() {
+ chown -R root:polkitd "${EROOT}"/etc/polkit-1/localauthority
+}
diff --git a/sys-auth/polkit-qt/Manifest b/sys-auth/polkit-qt/Manifest
new file mode 100644
index 000000000000..a59842373bb7
--- /dev/null
+++ b/sys-auth/polkit-qt/Manifest
@@ -0,0 +1,7 @@
+DIST polkit-qt-1-0.112.0.tar.bz2 67725 SHA256 67fb03bf6ca3e0bdbd98d374dfb5b1651a07d17ae6c23e11a81b4b084447e7c6 SHA512 4cb17389b54a09c53052f6d72aa5cbfe09ccb19f7fd4edf8b43ccd4751f5e88609c5f89777f4af92167d32eb2ce1e78537cea7bcfb60a90072d1fe02d6a59b50 WHIRLPOOL cf77234386646a145c807888ba361dad45f50e8857d8bea7d507b966fd52172b870ffa16c8c5df15296419ee04778614161fff9466d31af44661730916435f73
+DIST polkit-qt-1-0.112.0_p20160416.tar.xz 64540 SHA256 3b334a088e9cfe903bded0af745f0410b45024352936b5a415a7df21115bf646 SHA512 90677af780a2bbcb33b6a54702ba96f965eb8561f2636af7aa0146f9b2450f9e89f67e022ffa99742afe50e3d1f570eabfad686e9e08e629a1e662d9f5abf2ea WHIRLPOOL 4421c548695a3ccef9b32653fc1c77b38c6898d10bebb69fd261d4088d6d9d5561aa9f0d2636b8ad7c6cd1f0360f3758fb765f486a5c95709ae9e0c4a688d123
+EBUILD polkit-qt-0.112.0-r1.ebuild 1470 SHA256 5b8a9b02a18cf6291a89f81a41a88a525f7b6e0557e1f4bf270b43fb5ab678f0 SHA512 5abaee0f0e36676ef6cb58640c403d492aba5e607ee74a1ec0ae6682a08500ed30e161cf7991c3f3454f7612ef955d3cc58c3c0d1da550f9023c7a1e088d48f9 WHIRLPOOL dea5ecf66c4307bb0dd881ae08d81132ca99b517a3666b5f1b1039e9ab9ce2b9a84db00f2aa43e7f9037f8e7fa392cc52df83b1066fabad1d9296f906288d5b4
+EBUILD polkit-qt-0.112.0_p20160416-r1.ebuild 1396 SHA256 f18c70086334e7471b634f425b65a266d5e7f6c1b680f3e86bc25aedc7c4189d SHA512 045217d2b6c491b37e6f2a8423901975dac0503f7b4b0f47fab76e319343f288a3ce8c62cf67a002f03a629fe690afb9d1e45d21ac40117fa554a034cc190a1e WHIRLPOOL 44a2e3a41dce2870969eb235a4a88eb6a01e4861a755502f38ef8a70bd0516bbcc0e4738ccee2770491525a84b7e9d0695d8ee232515b2c4dafe41f70e6ceb84
+MISC ChangeLog 2620 SHA256 3c9d524e68bdd0611f460d085a3d12b4c1a7937a99f68cc6f13b47205263a473 SHA512 427d4a0444148198cff6a52e337d927d5517d977fa7a023088e0ac0ab17fce8fb324576be6370f74e206918877c0cf347863e64f1207bce13f7679c23fb38b55 WHIRLPOOL ecc4d46fd2fa200c44bac95491ca193aee0469116ca00220284a2bb02c3a4e5c1e20e55464bb293778e9489c52f4f57eae3d1c1bcb256319cffcaed6ffd596f7
+MISC ChangeLog-2015 5303 SHA256 3714486fd5bc49a1aa49367ca7a5a6aaa56767cd8cc984f0cee74161015f25ab SHA512 324fd7d0190e882ea776564c7f05b94f850272b74390fc144154379fb521df8b29a6c578bc921ed4744954d56fb9e221da3c9e1dd12fb69ca7e41d233f00e93a WHIRLPOOL 77519d2c046cc9440c57f16738493981c0cdba3885482636b20eed9456425822a802d0a52806ec0a5090827345ba54b864d956b7fe787bf13ac25f983d9c34d8
+MISC metadata.xml 249 SHA256 584f1dcf51866dc24a9abf7a89bfba0fad11dde81ae1c1b715da41770d233c99 SHA512 76a5a340b13f0053ca3c5e94ed24380ea8d29b45ac8655419e22eaadb1e4a827c04d2e7e36b65145c4964e6526f656618fc6ac144e277ef53cb7373e6239e3c3 WHIRLPOOL 200c07a8bf7c55b11b7936d5cd30e991a511684913334e72f59def66c0ced5fed0b4a8754e2d98bffbab631cb90d4e17fcccc59d5dcc5a8e988f69e47c85518c
diff --git a/sys-auth/polkit-qt/metadata.xml b/sys-auth/polkit-qt/metadata.xml
new file mode 100644
index 000000000000..2fdbf33d963d
--- /dev/null
+++ b/sys-auth/polkit-qt/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>kde@gentoo.org</email>
+ <name>Gentoo KDE Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-auth/polkit-qt/polkit-qt-0.112.0-r1.ebuild b/sys-auth/polkit-qt/polkit-qt-0.112.0-r1.ebuild
new file mode 100644
index 000000000000..0a9f3d4ce654
--- /dev/null
+++ b/sys-auth/polkit-qt/polkit-qt-0.112.0-r1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+MY_P="${P/qt/qt-1}"
+
+inherit cmake-utils multibuild
+
+DESCRIPTION="PolicyKit Qt4 API wrapper library"
+HOMEPAGE="https://www.kde.org/"
+SRC_URI="mirror://kde/stable/apps/KDE4.x/admin/${MY_P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86 ~x86-fbsd"
+IUSE="debug examples +qt4 qt5"
+
+REQUIRED_USE="|| ( qt4 qt5 )"
+
+RDEPEND="
+ dev-libs/glib:2
+ >=sys-auth/polkit-0.103
+ qt4? (
+ dev-qt/qtcore:4[glib]
+ dev-qt/qtdbus:4
+ dev-qt/qtgui:4[glib]
+ )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ examples? ( dev-qt/qtxml:5 )
+ )
+"
+DEPEND="${RDEPEND}"
+
+DOCS=( AUTHORS README README.porting TODO )
+
+S=${WORKDIR}/${MY_P}
+
+# bug #529686
+RESTRICT="test"
+
+pkg_setup() {
+ MULTIBUILD_VARIANTS=()
+ use qt4 && MULTIBUILD_VARIANTS+=( qt4 )
+ use qt5 && MULTIBUILD_VARIANTS+=( qt5 )
+}
+
+src_configure() {
+ myconfigure() {
+ local mycmakeargs=(
+ -DSYSCONF_INSTALL_DIR="${EPREFIX}"/etc
+ $(cmake-utils_use_build examples)
+ )
+
+ if [[ ${MULTIBUILD_VARIANT} = qt4 ]] ; then
+ mycmakeargs+=( -DUSE_QT4=ON )
+ fi
+ if [[ ${MULTIBUILD_VARIANT} = qt5 ]] ; then
+ mycmakeargs+=( -DUSE_QT5=ON )
+ fi
+
+ cmake-utils_src_configure
+ }
+
+ multibuild_foreach_variant myconfigure
+}
+
+src_compile() {
+ multibuild_foreach_variant cmake-utils_src_compile
+}
+
+src_install() {
+ multibuild_foreach_variant cmake-utils_src_install
+}
diff --git a/sys-auth/polkit-qt/polkit-qt-0.112.0_p20160416-r1.ebuild b/sys-auth/polkit-qt/polkit-qt-0.112.0_p20160416-r1.ebuild
new file mode 100644
index 000000000000..add07a53914c
--- /dev/null
+++ b/sys-auth/polkit-qt/polkit-qt-0.112.0_p20160416-r1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+MY_P="${P/qt/qt-1}"
+
+inherit cmake-utils multibuild
+
+DESCRIPTION="PolicyKit Qt API wrapper library"
+HOMEPAGE="https://www.kde.org/"
+SRC_URI="https://dev.gentoo.org/~kensington/distfiles/${MY_P}.tar.xz"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
+IUSE="debug examples qt4"
+
+RDEPEND="
+ dev-libs/glib:2
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ >=sys-auth/polkit-0.103
+ examples? ( dev-qt/qtxml:5 )
+ qt4? (
+ dev-qt/qtcore:4[glib]
+ dev-qt/qtdbus:4
+ dev-qt/qtgui:4[glib]
+ )
+"
+DEPEND="${RDEPEND}"
+
+DOCS=( AUTHORS README README.porting TODO )
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ MULTIBUILD_VARIANTS=( $(usev qt4) qt5 )
+}
+
+src_configure() {
+ myconfigure() {
+ local mycmakeargs=(
+ -DSYSCONF_INSTALL_DIR="${EPREFIX}"/etc
+ -DBUILD_EXAMPLES=$(usex examples)
+ )
+
+ if [[ ${MULTIBUILD_VARIANT} = qt4 ]] ; then
+ mycmakeargs+=( -DUSE_QT4=ON )
+ fi
+ if [[ ${MULTIBUILD_VARIANT} = qt5 ]] ; then
+ mycmakeargs+=( -DUSE_QT5=ON )
+ fi
+
+ cmake-utils_src_configure
+ }
+
+ multibuild_foreach_variant myconfigure
+}
+
+src_compile() {
+ multibuild_foreach_variant cmake-utils_src_compile
+}
+
+src_test() {
+ multibuild_foreach_variant cmake-utils_src_test
+}
+
+src_install() {
+ multibuild_foreach_variant cmake-utils_src_install
+}
diff --git a/sys-auth/polkit/Manifest b/sys-auth/polkit/Manifest
new file mode 100644
index 000000000000..cbd8c3948abc
--- /dev/null
+++ b/sys-auth/polkit/Manifest
@@ -0,0 +1,7 @@
+AUX polkit-0.113-elogind.patch 6149 SHA256 a90d18c58aa8f1a034cf84a209e6648b1d19bbf7b1d72fc5e0e0f24a5a0f6a7e SHA512 9a3e928d77c023c3f895f7fec7893f0355729808c4ee3bcd5419a7e408b613faefcff6d43f87cdab94b3fa15b7eaddc9ce40cf9b7b0954624360489c4d2c3b52 WHIRLPOOL 4bc03f43344955ab5c0ef540e51eb257ab6cf936e8bb93f98d288877bd1de6d100b429d79017a85f6b57c9c87bea0339b0deaf310e24f59d577e358fa0b05456
+DIST polkit-0.113.tar.gz 1448865 SHA256 e1c095093c654951f78f8618d427faf91cf62abdefed98de40ff65eca6413c81 SHA512 ab177c89a20eeb2978ddbe28afb205d3619f9c5defe833eb68a85e71a0f2c905367f1295cbbfb85da5eafdd661bce474d5d84aca9195cd425a18c9b4170eb5f9 WHIRLPOOL 106db7e6085a4ce49da44929138671eff2fd6007c80533518abe2d91ede9242b1e3cd0a1801190eeac5d4d5c1e978a30a18e47a6b604497b38853fa60c935a81
+EBUILD polkit-0.113-r4.ebuild 3459 SHA256 d9d7175a51dc984fed94a56a3bf8d9454c09e0d3ff6a8e5672d36d76f582376e SHA512 523a1e8114ff118b9fc7765d7dea921e29ea076652136cb830dd0ea0276413f68e41806a2d70adb5dd3fd4145d013576b26ba1451ee2a9c0e00436089e75bd6a WHIRLPOOL 5d206a2febd679432fcac23ee04dd50a9921fd439753740b190dd89de9befc12f019fe420d16ba156469cf3208b95ca50b712eb2802e23f29faecee998c42ea2
+EBUILD polkit-0.113.ebuild 2716 SHA256 ad69a9173248ffed504fb2b5936b8c6b3f14f20fe64d1c6e794c7f17ec76a948 SHA512 06cee807ee6cae565146fd1f8d4676cad78c8bdecae80ddc9f9a4c7d928c6dad31bef1361c3c2a9dece8490a37989e5ae8e9fb2e3df4936919a7235521633cff WHIRLPOOL da833ab00f0bb7c71879befd6d05ef4fd488dabedcac4f0b2abdc447fc83f24830412e99cdd1f8283602bbc83cd26dd9ec60b091f9d5d85580962501b47dbbca
+MISC ChangeLog 6131 SHA256 94b5afe5b42ad89d098b0b4f3a2a30186fd92a4677323a7d6f956167e1013266 SHA512 6fefd5506d593b9605377f91bceea62b15bce96d37bb9b7b1b5d94c68eb5f6420adaacfa8e561d05a750d77e0930ef0cf99577604edd7f3c420a80cb51f6397b WHIRLPOOL fe7d55ce7e8c7e10ff08bb71cfa032e766f5af95d6a63f9bcafe8420ffd9d5840ba95d41f500995a8dd476eb3493ded9b274f4de4f99c0c1a231d0bc23f3794e
+MISC ChangeLog-2015 27408 SHA256 b7a63f718f2dbfcc3d17c9146eea2cd830df2d329d1c4406fd7a4b4dabfff236 SHA512 6d6e2b71ef194f07f61c4da2587b22c0b55ee60cf5f8c6e0042bd75d59ca7cf9222b7a4d5018cf8fb789719d6ba3eae3a4a5d6e620e324cd6789bc2ff2fe5cf4 WHIRLPOOL 4a01bbc08ee0ecb7a3502be6c857caa750d111437e4b91cce0ca36b708f7cda0ab293b32fc96fa7d5c35fd46adda75dff44c58d96ccf7103c66705e21bd655bf
+MISC metadata.xml 493 SHA256 868f4f8f3c8593e0f1441e5e36944b3386cda4eac8d0986ab3b390d53106b71f SHA512 9c7b199d1a3b1193beb4d01e52d5e90d81821aa6df6785482da7ee37c0ca777c12095f160bc997c77d0089429c2e338cf75d0a46836416736178cd661ffa80f5 WHIRLPOOL 8ef937efdf5e1c41e16cd908fe3c13b05f33751c5c5a1d4eeab833641db31fc0808ec7bfd6b364a5db55812108b78346da03bd75baf50adaba24ec7f1920d60f
diff --git a/sys-auth/polkit/files/polkit-0.113-elogind.patch b/sys-auth/polkit/files/polkit-0.113-elogind.patch
new file mode 100644
index 000000000000..c822e00d24a7
--- /dev/null
+++ b/sys-auth/polkit/files/polkit-0.113-elogind.patch
@@ -0,0 +1,178 @@
+--- a/configure.ac 2016-11-03 20:16:02.842071344 +0100
++++ b/configure.ac 2016-11-03 20:15:34.612071850 +0100
+@@ -183,11 +183,12 @@
+
+ AM_CONDITIONAL(BUILD_TEST, [test "x$enable_test" = "xyes"])
+
+-dnl ---------------------------------------------------------------------------
+-dnl - Select wether to use libsystemd-login or ConsoleKit for session tracking
+-dnl ---------------------------------------------------------------------------
++dnl -----------------------------------------------------------------------------------
++dnl - Select wether to use libsystemd-login, elogind or ConsoleKit for session tracking
++dnl -----------------------------------------------------------------------------------
+
+ have_libsystemd=no
++have_elogind=no
+ SESSION_TRACKING=ConsoleKit
+
+ AC_ARG_ENABLE([libsystemd-login],
+@@ -220,6 +221,29 @@
+ fi
+ fi
+ fi
++
++AC_ARG_ENABLE([libelogind],
++ [AS_HELP_STRING([--enable-libelogind[=@<:@auto/yes/no@:>@]], [Use libelogind (auto/yes/no)])],
++ [enable_libelogind=$enableval],
++ [enable_libelogind=auto])
++if test "$enable_libelogind" != "no"; then
++ PKG_CHECK_MODULES([LIBELOGIND],
++ [libelogind],
++ [have_libelogind=yes],
++ [have_libelogind=no])
++ if test "$have_libelogind" = "yes"; then
++ SESSION_TRACKING=libelogind
++ AC_DEFINE([HAVE_LIBELOGIND], 1, [Define to 1 if libelogind is available])
++ save_LIBS=$LIBS
++ LIBS=$LIBELOGIND_LIBS
++ AC_CHECK_FUNCS(sd_uid_get_display)
++ LIBS=$save_LIBS
++ else
++ if test "$enable_libelogind" = "yes"; then
++ AC_MSG_ERROR([libelogind support requested but libelogind not found])
++ fi
++ fi
++fi
+
+ AS_IF([test "x$cross_compiling" != "xyes" ], [
+ AS_IF([test "$have_libsystemd" = "yes"], [
+@@ -245,6 +245,10 @@
+ AC_SUBST(LIBSYSTEMD_LIBS)
+ AM_CONDITIONAL(HAVE_LIBSYSTEMD, [test "$have_libsystemd" = "yes"], [Using libsystemd])
+
++AC_SUBST(LIBELOGIND_CFLAGS)
++AC_SUBST(LIBELOGIND_LIBS)
++AM_CONDITIONAL(HAVE_LIBELOGIND, [test "$have_libelogind" = "yes"], [Using libelogind])
++
+ dnl ---------------------------------------------------------------------------
+ dnl - systemd unit / service files
+ dnl ---------------------------------------------------------------------------
+--- a/src/polkitbackend/Makefile.am 2016-11-04 04:40:46.930116006 +0100
++++ b/src/polkitbackend/Makefile.am 2016-11-04 04:42:14.586114436 +0100
+@@ -42,21 +42,28 @@
+ libpolkit_backend_1_la_SOURCES += \
+ polkitbackendsessionmonitor.h polkitbackendsessionmonitor-systemd.c
+ else
++if HAVE_LIBELOGIND
++libpolkit_backend_1_la_SOURCES += \
++ polkitbackendsessionmonitor.h polkitbackendsessionmonitor-systemd.c
++else
+ libpolkit_backend_1_la_SOURCES += \
+ polkitbackendsessionmonitor.h polkitbackendsessionmonitor.c
+ endif
++endif
+
+ libpolkit_backend_1_la_CFLAGS = \
+ -D_POLKIT_COMPILATION \
+ -D_POLKIT_BACKEND_COMPILATION \
+ $(GLIB_CFLAGS) \
+ $(LIBSYSTEMD_CFLAGS) \
++ $(LIBELOGIND_CFLAGS) \
+ $(LIBJS_CFLAGS) \
+ $(NULL)
+
+ libpolkit_backend_1_la_LIBADD = \
+ $(GLIB_LIBS) \
+ $(LIBSYSTEMD_LIBS) \
++ $(LIBELOGIND_LIBS) \
+ $(top_builddir)/src/polkit/libpolkit-gobject-1.la \
+ $(EXPAT_LIBS) \
+ $(LIBJS_LIBS) \
+--- a/src/polkit/Makefile.am 2016-11-04 04:41:02.756115723 +0100
++++ b/src/polkit/Makefile.am 2016-11-04 04:42:49.428113812 +0100
+@@ -85,19 +85,26 @@
+ libpolkit_gobject_1_la_SOURCES += \
+ polkitunixsession-systemd.c polkitunixsession.h
+ else
++if HAVE_LIBELOGIND
++libpolkit_gobject_1_la_SOURCES += \
++ polkitunixsession-systemd.c polkitunixsession.h
++else
+ libpolkit_gobject_1_la_SOURCES += \
+ polkitunixsession.c polkitunixsession.h
+ endif
++endif
+
+ libpolkit_gobject_1_la_CFLAGS = \
+ -D_POLKIT_COMPILATION \
+ $(GLIB_CFLAGS) \
+ $(LIBSYSTEMD_CFLAGS) \
++ $(LIBELOGIND_CFLAGS) \
+ $(NULL)
+
+ libpolkit_gobject_1_la_LIBADD = \
+ $(GLIB_LIBS) \
+ $(LIBSYSTEMD_LIBS) \
++ $(LIBELOGIND_LIBS) \
+ $(NULL)
+
+ libpolkit_gobject_1_la_LDFLAGS = -export-symbols-regex '(^polkit_.*)'
+--- a/src/polkitbackend/polkitbackendjsauthority.c 2017-06-27 09:22:03.375841040 +0200
++++ b/src/polkitbackend/polkitbackendjsauthority.c 2017-06-27 09:25:33.815845141 +0200
+@@ -39,6 +39,10 @@
+ #include <systemd/sd-login.h>
+ #endif /* HAVE_LIBSYSTEMD */
+
++#ifdef HAVE_LIBELOGIND
++#include <elogind/sd-login.h>
++#endif /* HAVE_LIBELOGIND */
++
+ #include <jsapi.h>
+
+ #include "initjs.h" /* init.js */
+@@ -793,7 +797,7 @@
+ g_assert_not_reached ();
+ }
+
+-#ifdef HAVE_LIBSYSTEMD
++#if defined(HAVE_LIBSYSTEMD) || defined(HAVE_LIBELOGIND)
+ if (sd_pid_get_session (pid, &session_str) == 0)
+ {
+ if (sd_session_get_seat (session_str, &seat_str) == 0)
+@@ -801,7 +805,7 @@
+ /* do nothing */
+ }
+ }
+-#endif /* HAVE_LIBSYSTEMD */
++#endif /* HAVE_LIBSYSTEMD or HAVE_LIBELOGIND */
+
+ g_assert (POLKIT_IS_UNIX_USER (user_for_subject));
+ uid = polkit_unix_user_get_uid (POLKIT_UNIX_USER (user_for_subject));
+--- a/src/polkitbackend/polkitbackendsessionmonitor-systemd.c 2016-11-04 04:44:29.650112018 +0100
++++ b/src/polkitbackend/polkitbackendsessionmonitor-systemd.c 2016-11-04 04:46:52.718109455 +0100
+@@ -25,7 +25,11 @@
+ #include <grp.h>
+ #include <string.h>
+ #include <glib/gstdio.h>
++#ifdef HAVE_LIBSYSTEMD
+ #include <systemd/sd-login.h>
++#else
++#include <elogind/sd-login.h>
++#endif /* HAVE_LIBSYSTEMD versus HAVE_LIBELOGIND */
+ #include <stdlib.h>
+
+ #include <polkit/polkit.h>
+--- a/src/polkit/polkitunixsession-systemd.c 2016-11-04 04:44:29.651112017 +0100
++++ b/src/polkit/polkitunixsession-systemd.c 2016-11-04 04:47:07.160109197 +0100
+@@ -30,7 +30,11 @@
+ #include "polkiterror.h"
+ #include "polkitprivate.h"
+
++#ifdef HAVE_LIBSYSTEMD
+ #include <systemd/sd-login.h>
++#else
++#include <elogind/sd-login.h>
++#endif /* HAVE_LIBSYSTEMD versus HAVE_ELOGIND */
+
+ /**
+ * SECTION:polkitunixsession
diff --git a/sys-auth/polkit/metadata.xml b/sys-auth/polkit/metadata.xml
new file mode 100644
index 000000000000..348a3151d8b6
--- /dev/null
+++ b/sys-auth/polkit/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>freedesktop-bugs@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="elogind">Use <pkg>sys-auth/elogind</pkg> instead of <pkg>sys-auth/consolekit</pkg> for session tracking</flag>
+ <flag name="systemd">Use <pkg>sys-apps/systemd</pkg> instead of <pkg>sys-auth/consolekit</pkg> for session tracking</flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-auth/polkit/polkit-0.113-r4.ebuild b/sys-auth/polkit/polkit-0.113-r4.ebuild
new file mode 100644
index 000000000000..ec8a409d3431
--- /dev/null
+++ b/sys-auth/polkit/polkit-0.113-r4.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools pam pax-utils systemd user xdg-utils
+
+DESCRIPTION="Policy framework for controlling privileges for system-wide services"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/polkit"
+SRC_URI="https://www.freedesktop.org/software/${PN}/releases/${P}.tar.gz"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="elogind examples gtk +introspection jit kde nls pam selinux systemd test"
+
+REQUIRED_USE="?? ( elogind systemd )"
+
+CDEPEND="
+ dev-lang/spidermonkey:0/mozjs185[-debug]
+ dev-libs/glib:2
+ dev-libs/expat
+ elogind? ( sys-auth/elogind )
+ introspection? ( dev-libs/gobject-introspection )
+ pam? (
+ sys-auth/pambase
+ virtual/pam
+ )
+ systemd? ( sys-apps/systemd:0= )
+"
+DEPEND="${CDEPEND}
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/docbook-xsl-stylesheets
+ dev-libs/gobject-introspection-common
+ dev-libs/libxslt
+ dev-util/gtk-doc-am
+ dev-util/intltool
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-policykit )
+"
+PDEPEND="
+ gtk? ( || (
+ >=gnome-extra/polkit-gnome-0.105
+ >=lxde-base/lxsession-0.5.2
+ ) )
+ kde? ( kde-plasma/polkit-kde-agent )
+ !systemd? ( !elogind? ( sys-auth/consolekit[policykit] ) )
+"
+
+DOCS=( docs/TODO HACKING NEWS README )
+
+PATCHES=( "${FILESDIR}"/${P}-elogind.patch )
+
+QA_MULTILIB_PATHS="
+ usr/lib/polkit-1/polkit-agent-helper-1
+ usr/lib/polkit-1/polkitd"
+
+pkg_setup() {
+ local u=polkitd
+ local g=polkitd
+ local h=/var/lib/polkit-1
+
+ enewgroup ${g}
+ enewuser ${u} -1 -1 ${h} ${g}
+ esethome ${u} ${h}
+}
+
+src_prepare() {
+ default
+
+ sed -i -e 's|unix-group:wheel|unix-user:0|' src/polkitbackend/*-default.rules || die #401513
+
+ # Workaround upstream hack around standard gtk-doc behavior, bug #552170
+ sed -i -e 's/@ENABLE_GTK_DOC_TRUE@\(TARGET_DIR\)/\1/' \
+ -e '/install-data-local:/,/uninstall-local:/ s/@ENABLE_GTK_DOC_TRUE@//' \
+ -e 's/@ENABLE_GTK_DOC_FALSE@install-data-local://' \
+ docs/polkit/Makefile.in || die
+
+ # disable broken test - bug #624022
+ sed -i -e "/^SUBDIRS/s/polkitbackend//" test/Makefile.am || die
+
+ # Fix cross-building, bug #590764, elogind patch, bug #598615
+ eautoreconf
+}
+
+src_configure() {
+ xdg_environment_reset
+
+ econf \
+ --localstatedir="${EPREFIX}"/var \
+ --disable-static \
+ --enable-man-pages \
+ --disable-gtk-doc \
+ --disable-examples \
+ --with-mozjs=mozjs185 \
+ $(use_enable elogind libelogind) \
+ $(use_enable introspection) \
+ $(use_enable nls) \
+ $(use pam && echo --with-pam-module-dir="$(getpam_mod_dir)") \
+ --with-authfw=$(usex pam pam shadow) \
+ $(use_enable systemd libsystemd-login) \
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" \
+ $(use_enable test) \
+ --with-os-type=gentoo
+}
+
+src_compile() {
+ default
+
+ # Required for polkitd on hardened/PaX due to spidermonkey's JIT
+ pax-mark mr src/polkitbackend/.libs/polkitd test/polkitbackend/.libs/polkitbackendjsauthoritytest
+}
+
+src_install() {
+ default
+
+ fowners -R polkitd:root /{etc,usr/share}/polkit-1/rules.d
+
+ diropts -m0700 -o polkitd -g polkitd
+ keepdir /var/lib/polkit-1
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}/examples
+ doins src/examples/{*.c,*.policy*}
+ fi
+
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ chown -R polkitd:root "${EROOT}"/{etc,usr/share}/polkit-1/rules.d
+ chown -R polkitd:polkitd "${EROOT}"/var/lib/polkit-1
+}
diff --git a/sys-auth/polkit/polkit-0.113.ebuild b/sys-auth/polkit/polkit-0.113.ebuild
new file mode 100644
index 000000000000..694d84a2712b
--- /dev/null
+++ b/sys-auth/polkit/polkit-0.113.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils multilib pam pax-utils systemd user
+
+DESCRIPTION="Policy framework for controlling privileges for system-wide services"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/polkit"
+SRC_URI="https://www.freedesktop.org/software/${PN}/releases/${P}.tar.gz"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86"
+IUSE="examples gtk +introspection jit kde nls pam selinux systemd test"
+
+CDEPEND="
+ dev-lang/spidermonkey:0/mozjs185[-debug]
+ >=dev-libs/glib-2.32:2
+ >=dev-libs/expat-2:=
+ introspection? ( >=dev-libs/gobject-introspection-1:= )
+ pam? (
+ sys-auth/pambase
+ virtual/pam
+ )
+ systemd? ( sys-apps/systemd:0= )
+"
+DEPEND="${CDEPEND}
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ dev-util/gtk-doc-am
+ dev-util/intltool
+ virtual/pkgconfig
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-policykit )
+"
+PDEPEND="
+ gtk? ( || (
+ >=gnome-extra/polkit-gnome-0.105
+ lxde-base/lxpolkit
+ ) )
+ kde? ( || (
+ kde-plasma/polkit-kde-agent
+ sys-auth/polkit-kde-agent
+ ) )
+ !systemd? ( sys-auth/consolekit[policykit] )
+"
+
+QA_MULTILIB_PATHS="
+ usr/lib/polkit-1/polkit-agent-helper-1
+ usr/lib/polkit-1/polkitd"
+
+pkg_setup() {
+ local u=polkitd
+ local g=polkitd
+ local h=/var/lib/polkit-1
+
+ enewgroup ${g}
+ enewuser ${u} -1 -1 ${h} ${g}
+ esethome ${u} ${h}
+}
+
+src_prepare() {
+ sed -i -e 's|unix-group:wheel|unix-user:0|' src/polkitbackend/*-default.rules || die #401513
+}
+
+src_configure() {
+ econf \
+ --localstatedir="${EPREFIX}"/var \
+ --disable-static \
+ --enable-man-pages \
+ --disable-gtk-doc \
+ $(use_enable systemd libsystemd-login) \
+ $(use_enable introspection) \
+ --disable-examples \
+ $(use_enable nls) \
+ --with-mozjs=mozjs185 \
+ "$(systemd_with_unitdir)" \
+ --with-authfw=$(usex pam pam shadow) \
+ $(use pam && echo --with-pam-module-dir="$(getpam_mod_dir)") \
+ $(use_enable test) \
+ --with-os-type=gentoo
+}
+
+src_compile() {
+ default
+
+ # Required for polkitd on hardened/PaX due to spidermonkey's JIT
+ pax-mark mr src/polkitbackend/.libs/polkitd test/polkitbackend/.libs/polkitbackendjsauthoritytest
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ dodoc docs/TODO HACKING NEWS README
+
+ fowners -R polkitd:root /{etc,usr/share}/polkit-1/rules.d
+
+ diropts -m0700 -o polkitd -g polkitd
+ keepdir /var/lib/polkit-1
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}/examples
+ doins src/examples/{*.c,*.policy*}
+ fi
+
+ prune_libtool_files
+}
+
+pkg_postinst() {
+ chown -R polkitd:root "${EROOT}"/{etc,usr/share}/polkit-1/rules.d
+ chown -R polkitd:polkitd "${EROOT}"/var/lib/polkit-1
+}
diff --git a/sys-auth/realtime-base/Manifest b/sys-auth/realtime-base/Manifest
new file mode 100644
index 000000000000..7f57dbb6b360
--- /dev/null
+++ b/sys-auth/realtime-base/Manifest
@@ -0,0 +1,4 @@
+EBUILD realtime-base-0.1.ebuild 1067 SHA256 46880499b64a8839ed9b488ba5ceaff6a0ef914f6f3ad59d49ae6fe452656b3d SHA512 70c1e982c6c39ebe0dbea4eacc9ac194f43796414d0c6220222188e74212f493254ae337f6b477b0c6e75967e1410c12fbfaa011a81066dc8026a8e457e8fdb4 WHIRLPOOL 8c0e3cfe5a464b28fa75bb9e95bff74139c3d57db2f8a85f53ef743d4c610a1901aa3f28eb262db4d3dc86ba5bbccc46f5e2cc784b45c3af28cff04667de780f
+MISC ChangeLog 2640 SHA256 a09ea4061b13aff7059c8e30029a38021a9c1bc09708cca470aceef30baaa4ed SHA512 473655f889b12b6caaf266b7911a9f7d13c064b2a5715975295cc0b0750075009418c3da5829378213ee8d35062818f21b56b1da2e72f180cb8195b99affafe0 WHIRLPOOL 3a4cd04b41ed2729756892c7d0a25bca421b8718d4dbde74f0b62c66915d382059be8cc526efcb8d04424d5e27f0294065b7f187986b71f9868f2eccef32996b
+MISC ChangeLog-2015 2469 SHA256 c701a11fb50ea3b1f890adf7afa04f2c182faed94347726856cf91aaf3fd3a46 SHA512 a53b3522c35f78726106f4d16f3749ec256dd0c11b749432c123b233e1a1a51bdcf9c020a30a82a78c5d60bc872cf34624741d37d2a504e42439459005cd89b2 WHIRLPOOL 8a6d685377f4316edd1b385fa37c1b794f958bd5fed465b4c6bd8b7eb743b7be34004fe567adf76bb501f6a9ff1cd2c80270cea0cffe3b1481626ed7042a451f
+MISC metadata.xml 265 SHA256 a7c61fa44ce7f03f529b91c817d42328e2f77a6f3fcbe82365fb2af010d56baa SHA512 5b875b5d0a59914316df520eee72ee3c5f931b8513424120281657bbc266c777214a924e4c6c867cdd7a61cb66037c7b9b501225cc06d890abb8ca04c13f5fba WHIRLPOOL 6edf6efa43f6e3092a2b173b4d00a48371816848307a5e3d1b8d0cc9ef40de662e806aa0401db805830f1c25e191e5dc36704843605375cf63424976901671fb
diff --git a/sys-auth/realtime-base/metadata.xml b/sys-auth/realtime-base/metadata.xml
new file mode 100644
index 000000000000..009e0e9e4ae2
--- /dev/null
+++ b/sys-auth/realtime-base/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>proaudio@gentoo.org</email>
+ <name>Gentoo ProAudio Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-auth/realtime-base/realtime-base-0.1.ebuild b/sys-auth/realtime-base/realtime-base-0.1.ebuild
new file mode 100644
index 000000000000..7af8533be7c8
--- /dev/null
+++ b/sys-auth/realtime-base/realtime-base-0.1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=3
+
+inherit user
+
+DESCRIPTION="Sets up realtime scheduling"
+HOMEPAGE="http://jackaudio.org/faq/linux_rt_config.html"
+SRC_URI=""
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sh sparc x86 ~amd64-fbsd"
+IUSE=""
+
+DEPEND=""
+RDEPEND="virtual/pam"
+
+limitsdfile=40-${PN}.conf
+rtgroup=realtime
+
+S=${WORKDIR}
+
+pkg_setup() {
+ enewgroup ${rtgroup}
+}
+
+print_limitsdfile() {
+ printf "# Start of ${limitsdfile} from ${P}\n\n"
+ printf "@${rtgroup}\t-\trtprio\t99\n"
+ printf "@${rtgroup}\t-\tmemlock\tunlimited\n"
+ printf "\n# End of ${limitsdfile} from ${P}\n"
+}
+
+src_compile() {
+ einfo "Generating ${limitsdfile}"
+ print_limitsdfile > "${S}/${limitsdfile}"
+}
+
+src_install() {
+ insinto /etc/security/limits.d/
+ doins "${S}/${limitsdfile}" || die
+}
+
+pkg_postinst() {
+ elog "We have added realtime scheduling privileges for users in the ${rtgroup} group."
+ elog "Please make sure users needing such privileges are in that group."
+}
diff --git a/sys-auth/rtkit/Manifest b/sys-auth/rtkit/Manifest
new file mode 100644
index 000000000000..cae06215d756
--- /dev/null
+++ b/sys-auth/rtkit/Manifest
@@ -0,0 +1,9 @@
+AUX rtkit-0.11-controlgroup.patch 528 SHA256 45049882dcfc7f6f0e29e1c720ff2cada6141f6df821721532f1570e06c21a65 SHA512 772504a9bd911189655bf7ec494ca954c5316357afd2599b1873e0525025fad77589edc965ff7a2b84365cf702ea9173a24ebe9e03f06d73f371bbe480e2b22e WHIRLPOOL 6887368704a6849d515c6e15f96fbe39c16f1427202b4d7fe98cd3c60f1a259ed967375cd294044b3bf159f1950f3a7cad51623445c967fc3db50a4bd2b5acbb
+AUX rtkit-0.11-gettime.patch 744 SHA256 8e7f796228f334544544bf0bbd5db6095682a3776c5dbfd4a9a7565e866c6cd6 SHA512 b9207e1be512689e3896587105d135ab686d4eb1dd8c2e0feb62ca73eed2a8e1e473826e82b06bf240f26c64975b9793cd407cf6493a8f7eb6946da17198059c WHIRLPOOL d236a0695b2b1288e861be5a60ebc26af99d48727b05fb409ea3a49459d1dc5be0220f8c2335f3d7ead64e278bda36925d44ae23108dc72c8d81d39f374dee7f
+AUX rtkit-0.11-polkit.patch 2074 SHA256 80f33894e4eb2130460d7160f1a309c3497a235a3ec6f9e5d088b00cb1667b11 SHA512 cc4cb9879235398f828c16951e380e0456c9e5bbd5acc2a0968153c5ce361fd1aceeeeac8ab873c21c0556c5d4677cdad8ed9e23dd3b9b5a8a73cf9264ee5a4b WHIRLPOOL 1a5170423876ccc178c99a959212a5a352d7fa92bae0c1e3e9f6bae6f5603cc6c6013bba681eb7d09fc1d825aea550417706cacef6499c9caac21c15e128caff
+DIST rtkit-0.11.tar.xz 126748 SHA256 68859108cff6410901502b58365eb7607da37110a06b837762f771735f58acd0 SHA512 4641af965dc64c0f498ae469fbee1ceb337204fa7d778fbbb41f2b5c5e88947e633c7e9ad037274fdd778c3c097a4a1dbb0b2add287d74eccbcd2d357cb2da22 WHIRLPOOL 7036f2811aeef28dd7680f24fcf16e2cf8708937d86a0dfcd1411fcae469be3fe673b12dc640f9cda9be951ab2879f2b7ec2374577e7a0b532c59d8abde176b5
+EBUILD rtkit-0.11-r1.ebuild 950 SHA256 82eef9922d29e0ff309bd88b1d8d368e4d8bb9b59397629e4bd4237608e21687 SHA512 7ea241a9f99d42c0af9873b1c6549f9ac7f90076944f93734974d1c39dc9c1e96c09e70b8a1c1f3739352fefe4800ca626ac45cf7e8cf7f6d0bfe302ccdcbc0a WHIRLPOOL 7b4e294de64e5b40555d487f7e56afbd2eaa73e8192c0a2431f9bf2dd4b8a992df4c1af1d75c5dab8ef9d0122a6aa00b27a229e0be9cba4f3574f0cbb3942faa
+EBUILD rtkit-0.11-r2.ebuild 1346 SHA256 718b86538687a11904f51afcee5f1a3126fb788407ab496d9fa2294610fed2d4 SHA512 e4d59e83254681f0813a8975d85267ae8c0dc33ccc22f7ab7f018a21fe935acc94658559aaba4fa6e2dbc65b8d072024158a7666bd02773f2e8746515b7ae424 WHIRLPOOL ef58dadb81a4eea89f6702f006496f6d0237977a3ad54ef9f06e3594f8d90743a3519c723510a9d60d0d953217d2f72be654101c4d481a93326359ffad2fd2a1
+MISC ChangeLog 4717 SHA256 827d03d004de1624a763e4acc1f777533a0a7354ab2e2af7449a857e5968556a SHA512 a5681594df5dcf6b87d7154c46830e823ad13deb49f4ff455df0fdb1b630eb237742f30dbe4536412545df64e3121b46ed35812f7856ea16ad2928e6805e8754 WHIRLPOOL 68ebdb11dde75b2e8d76a40eaa9d942d52ab7f7b15188a130ec1fb79ada0e300abee9385ab4ff1da3624463f96fa3e109adc600afeb7735447cb15efbdb0cd16
+MISC ChangeLog-2015 5449 SHA256 5bc415edbbb8a18930c939863de6212af6410d2df0041b931897369774c1e514 SHA512 2a6d476e1ad14b8681bf4ff7f997dfc4f934d07e28f8032705d5960325094dce09fea18b3bbc6566ebca7edb90bcbd19f03bc1daf938a3784dd5217d1b7a2099 WHIRLPOOL bab1e798b7b5ddce4e1d1562234130753168f29041ef627d366d70187935497e708bc1623571e6bce23304b1f987aa8607170a340b497c55c93846cf8c45c6d5
+MISC metadata.xml 455 SHA256 e9eb467895d6dd0a3d58f484f78acac159067e422beaea2304e381bd130a952a SHA512 90bde656e242fe6cd7b408671f419ee54f73a781b67ee9047c8cd06d7fb29fee2882aed7ab95b42f22fdb65570f389e04931f8fa24506307b1bc8387c213850e WHIRLPOOL abb79c949c97c96c63c27f835574cbdb166ca14b8e4cd321e6bd8cd50e1ee7962837f5509783b4bd0b7435824b78c17a17e893fbb42329fa81aee07ea98c2903
diff --git a/sys-auth/rtkit/files/rtkit-0.11-controlgroup.patch b/sys-auth/rtkit/files/rtkit-0.11-controlgroup.patch
new file mode 100644
index 000000000000..7a36deeeae7b
--- /dev/null
+++ b/sys-auth/rtkit/files/rtkit-0.11-controlgroup.patch
@@ -0,0 +1,14 @@
+diff --git rtkit-0.11/rtkit-daemon.service.in~ rtkit-0.11/rtkit-daemon.service.in
+index 3dfefa6..d0dc786 100644
+--- rtkit-0.11/rtkit-daemon.service.in~
++++ rtkit-0.11/rtkit-daemon.service.in
+@@ -27,9 +27,5 @@ CapabilityBoundingSet=CAP_SYS_NICE CAP_DAC_READ_SEARCH CAP_SYS_PTRACE CAP_SYS_CH
+ PrivateTmp=yes
+ PrivateNetwork=yes
+
+-# Work around the fact that the Linux currently doesn't assign any RT
+-# budget to CPU control groups that have none configured explicitly
+-ControlGroup=cpu:/
+-
+ [Install]
+ WantedBy=graphical.target
diff --git a/sys-auth/rtkit/files/rtkit-0.11-gettime.patch b/sys-auth/rtkit/files/rtkit-0.11-gettime.patch
new file mode 100644
index 000000000000..43732081386e
--- /dev/null
+++ b/sys-auth/rtkit/files/rtkit-0.11-gettime.patch
@@ -0,0 +1,21 @@
+From: Lennart Poettering <lennart@poettering.net>
+Date: Thu, 26 Sep 2013 19:52:58 +0000 (+0200)
+Subject: build-sys: since clock_gettime() moved to libc use mq_open to check for librt
+X-Git-Url: http://git.0pointer.de/?p=rtkit.git;a=commitdiff_plain;h=d550837387e4185ebcde1023702580e35eb441e7
+
+build-sys: since clock_gettime() moved to libc use mq_open to check for librt
+---
+
+diff --git a/configure.ac b/configure.ac
+index 5a77363..62c17f5 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -111,7 +111,7 @@ CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+ CC="$PTHREAD_CC"
+
+ AC_SEARCH_LIBS([sched_setscheduler], [rt])
+-AC_SEARCH_LIBS([clock_gettime], [rt])
++AC_SEARCH_LIBS([mq_open], [rt])
+ AC_SEARCH_LIBS([cap_init], [cap])
+
+ PKG_CHECK_MODULES(DBUS, dbus-1)
diff --git a/sys-auth/rtkit/files/rtkit-0.11-polkit.patch b/sys-auth/rtkit/files/rtkit-0.11-polkit.patch
new file mode 100644
index 000000000000..ad489c466184
--- /dev/null
+++ b/sys-auth/rtkit/files/rtkit-0.11-polkit.patch
@@ -0,0 +1,36 @@
+X-Git-Url: http://git.0pointer.de/?p=rtkit.git;a=blobdiff_plain;f=rtkit-daemon.c;h=3ecc1f7840a0d9bdd3af7f08933c4a62546094eb;hp=2ebe673309315f16bc2bc2e0c51a556fb215bc51;hb=88d4082ef6caf6b071d749dca1c50e7edde914cc;hpb=e86e04865ebc1a92c8fa3007843ebcf9c8fa4c05
+
+diff --git a/rtkit-daemon.c b/rtkit-daemon.c
+index 2ebe673..3ecc1f7 100644
+--- a/rtkit-daemon.c
++++ b/rtkit-daemon.c
+@@ -1170,12 +1170,14 @@ static int verify_polkit(DBusConnection *c, struct rtkit_user *u, struct process
+ DBusMessage *m = NULL, *r = NULL;
+ const char *unix_process = "unix-process";
+ const char *pid = "pid";
++ const char *uid = "uid";
+ const char *start_time = "start-time";
+ const char *cancel_id = "";
+ uint32_t flags = 0;
+ uint32_t pid_u32 = p->pid;
+- uint64_t start_time_u64 = p->starttime;
++ uint32_t uid_u32 = (uint32_t)u->uid;
+ DBusMessageIter iter_msg, iter_struct, iter_array, iter_dict, iter_variant;
++ uint64_t start_time_u64 = p->starttime;
+ int ret;
+ dbus_bool_t authorized = FALSE;
+
+@@ -1206,6 +1208,13 @@ static int verify_polkit(DBusConnection *c, struct rtkit_user *u, struct process
+ assert_se(dbus_message_iter_close_container(&iter_dict, &iter_variant));
+ assert_se(dbus_message_iter_close_container(&iter_array, &iter_dict));
+
++ assert_se(dbus_message_iter_open_container(&iter_array, DBUS_TYPE_DICT_ENTRY, NULL, &iter_dict));
++ assert_se(dbus_message_iter_append_basic(&iter_dict, DBUS_TYPE_STRING, &uid));
++ assert_se(dbus_message_iter_open_container(&iter_dict, DBUS_TYPE_VARIANT, "u", &iter_variant));
++ assert_se(dbus_message_iter_append_basic(&iter_variant, DBUS_TYPE_UINT32, &uid_u32));
++ assert_se(dbus_message_iter_close_container(&iter_dict, &iter_variant));
++ assert_se(dbus_message_iter_close_container(&iter_array, &iter_dict));
++
+ assert_se(dbus_message_iter_close_container(&iter_struct, &iter_array));
+ assert_se(dbus_message_iter_close_container(&iter_msg, &iter_struct));
+
diff --git a/sys-auth/rtkit/metadata.xml b/sys-auth/rtkit/metadata.xml
new file mode 100644
index 000000000000..7aca23bace0b
--- /dev/null
+++ b/sys-auth/rtkit/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>marecki@gentoo.org</email>
+ <name>Marek Szuba</name>
+ </maintainer>
+ <longdescription lang="en">
+ RealtimeKit is a DBus service that provides applications with an interface
+ to escalate their priority to realtime, without any special setup in
+ rlimits, etc.
+ </longdescription>
+</pkgmetadata>
diff --git a/sys-auth/rtkit/rtkit-0.11-r1.ebuild b/sys-auth/rtkit/rtkit-0.11-r1.ebuild
new file mode 100644
index 000000000000..dec2005a9526
--- /dev/null
+++ b/sys-auth/rtkit/rtkit-0.11-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils systemd user autotools
+
+DESCRIPTION="Realtime Policy and Watchdog Daemon"
+HOMEPAGE="http://0pointer.de/blog/projects/rtkit"
+SRC_URI="http://0pointer.de/public/${P}.tar.xz"
+
+LICENSE="GPL-3 BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sh sparc x86"
+IUSE=""
+
+RDEPEND="
+ sys-apps/dbus
+ sys-auth/polkit
+ sys-libs/libcap
+"
+DEPEND="${RDEPEND}"
+
+pkg_setup() {
+ enewgroup rtkit
+ enewuser rtkit -1 -1 -1 "rtkit"
+}
+
+src_prepare() {
+ # Fedora patches
+ epatch "${FILESDIR}"/${P}-polkit.patch
+ epatch "${FILESDIR}"/${P}-gettime.patch
+ epatch "${FILESDIR}"/${P}-controlgroup.patch
+ eautoreconf
+}
+
+src_configure() {
+ econf $(systemd_with_unitdir)
+}
+
+src_install() {
+ default
+
+ ./rtkit-daemon --introspect > org.freedesktop.RealtimeKit1.xml
+ insinto /usr/share/dbus-1/interfaces
+ doins org.freedesktop.RealtimeKit1.xml
+}
diff --git a/sys-auth/rtkit/rtkit-0.11-r2.ebuild b/sys-auth/rtkit/rtkit-0.11-r2.ebuild
new file mode 100644
index 000000000000..14157fe384cb
--- /dev/null
+++ b/sys-auth/rtkit/rtkit-0.11-r2.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit eutils systemd user autotools linux-info
+
+DESCRIPTION="Realtime Policy and Watchdog Daemon"
+HOMEPAGE="http://0pointer.de/blog/projects/rtkit"
+SRC_URI="http://0pointer.de/public/${P}.tar.xz"
+
+LICENSE="GPL-3 BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~ppc ~ppc64 ~sh ~sparc x86"
+IUSE=""
+
+RDEPEND="
+ sys-apps/dbus
+ sys-auth/polkit
+ sys-libs/libcap
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ # Fedora patches
+ "${FILESDIR}/${P}-polkit.patch"
+ "${FILESDIR}/${P}-gettime.patch"
+ "${FILESDIR}/${P}-controlgroup.patch"
+)
+
+pkg_pretend() {
+ if use kernel_linux; then
+ CONFIG_CHECK="~!RT_GROUP_SCHED"
+ ERROR_RT_GROUP_SCHED="CONFIG_RT_GROUP_SCHED is enabled. rtkit-daemon (or any other "
+ ERROR_RT_GROUP_SCHED+="real-time task) will not work unless run as root. Please consider "
+ ERROR_RT_GROUP_SCHED+="unsetting this option."
+ check_extra_config
+ fi
+}
+
+pkg_setup() {
+ enewgroup rtkit
+ enewuser rtkit -1 -1 -1 "rtkit"
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+}
+
+src_install() {
+ default
+
+ ./rtkit-daemon --introspect > org.freedesktop.RealtimeKit1.xml
+ insinto /usr/share/dbus-1/interfaces
+ doins org.freedesktop.RealtimeKit1.xml
+}
diff --git a/sys-auth/skey/Manifest b/sys-auth/skey/Manifest
new file mode 100644
index 000000000000..55e63eecc49b
--- /dev/null
+++ b/sys-auth/skey/Manifest
@@ -0,0 +1,6 @@
+DIST skey-1.1.5-patches-6.tar.xz 34108 SHA256 b63423380c3c60b95f213187aa2522b49da1b8227cde2decc405caa126fef05e SHA512 2c807675cdd6b800f03427d79d616f59ac9d4d438221913328ec92e5dd13af185f74a24e17d36af8d49a51c4ecc5b24ef198489acce416d829e8aacf5d3c208a WHIRLPOOL 8841611ff50aa8509b1d94665f87d9f0888d39958a5385e8fb5b044228bcc251565449629588d92531771d910e48b7a0ce6998f86a131a145ed5c288fc828133
+DIST skey-1.1.5.tar.bz2 61911 SHA256 e21bcb7c618c0bc87a72d8f0f097d7517fffa4e881a0f295ee1ce2a7dccf4aef SHA512 4cbddc7e31134d5e23801a9b07de0d05c8357aaa8dddfb8426fceead3f54e539f77204f78a08b2a93890ef2f4f807a2208080f58f80818afa1b8cd4884b1fb37 WHIRLPOOL abf141fd679deeaee3f3883cd3076620c84e8775ecacc8f87d561c1812beae55299989f37ec331633bac29e25b4b8d145dc590ef119c73a137d8790815bb13f2
+EBUILD skey-1.1.5-r11.ebuild 1977 SHA256 bb6fdfd84e171193090dd8ba44b2fdc8714098cae3c4233ddf852e1fefdb2a5d SHA512 b6268dfc3b22b3dd97781605b246b5a99a0d9abe716667dab1771c87991a87fc5d2c4dd47d51300af248fac42b87532c89799a7d769f9d021f6a5ea882e85860 WHIRLPOOL 2f2e0e826217ea45f7efb46f23bc4d207d83752dea77e9a233d850a5d9fe53855c6c04f5ea0556bd1ef884c4065fc1d70b5ab9866543bab27f550147678418a5
+MISC ChangeLog 6685 SHA256 1adce0d7d93abac651a04e2a4b9eee2d1a46078bef7af462bcc31c0622e1898e SHA512 1e9725938c1b7b4102a72e2b33c6259e4374793b46e328663403f5c064c34e668e3fc4d195aa157eb4cb275c85cb224284504d0bdd793449cfbf625cf6be1091 WHIRLPOOL a47fdc2e2e8d3d625f819394f96d25cee65c6f17e96e001b2c51c8d08681bc8378c28550c980ce72682e05c328c558bb3c5e845e1188f26d2bccf191c6eea2eb
+MISC ChangeLog-2015 10855 SHA256 e6e157d46b2f3ba0c7fd78bb931b083d5f2c99afeb5476fdb6cedec19f7d8696 SHA512 1b6e4051b136a7754988fa6cc25cf13d25d7712f05503143210810b50df4ecf3ffb1961c3a0f09c5619a80dd371cdc7147feccc3ff84eff3a3aae053399716b9 WHIRLPOOL 4618e40662ff38361cdadeb702fda1cca876cce4da87411d4883b6fa6cc23ba77a9a1fda1a216cfd64aed10ddfb56a07bf137fe625e71aed1f178a04da6e0fba
+MISC metadata.xml 1432 SHA256 a291b68f13eda0fce9f8ae67619877c1e66b750fd61f38dbb8fbc1e4abe2176d SHA512 8fe776255ff049ae9c16ee0ff157761114ca4fcc777d103e707557ef5f18fba9d65e63a77f24219e27d267cd76839abf128210969dc4330d66920a2ee574aabf WHIRLPOOL 174360e0598007cb5399e8135f646f547b7df603d2548d897e386d732e1a742288a80dd2717e27bf1f608ec1e3d56428b5db15ddc2ae78e3afcb282b34d886fd
diff --git a/sys-auth/skey/metadata.xml b/sys-auth/skey/metadata.xml
new file mode 100644
index 000000000000..93a242052187
--- /dev/null
+++ b/sys-auth/skey/metadata.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ulm@gentoo.org</email>
+</maintainer>
+<longdescription lang="en">
+ From RFC2289:
+ One form of attack on networked computing systems is eavesdropping on
+ network connections to obtain authentication information such as the
+ login IDs and passwords of legitimate users. Once this information is
+ captured, it can be used at a later time to gain access to the system.
+ One-time password systems are designed to counter this type of attack,
+ called a "replay attack."
+
+ The authentication system described in this document uses a secret
+ pass-phrase to generate a sequence of one-time (single use) passwords.
+ With this system, the user's secret pass-phrase never needs to cross the
+ network at any time such as during authentication or during pass-phrase
+ changes. Thus, it is not vulnerable to replay attacks. Added security
+ is provided by the property that no secret information need be stored on
+ any system, including the server being protected.
+
+ The OTP system protects against external passive attacks against the
+ authentication subsystem. It does not prevent a network eavesdropper from
+ gaining access to private information and does not provide protection
+ against either "social engineering" or active attacks.
+</longdescription>
+</pkgmetadata>
diff --git a/sys-auth/skey/skey-1.1.5-r11.ebuild b/sys-auth/skey/skey-1.1.5-r11.ebuild
new file mode 100644
index 000000000000..c8c448a15df3
--- /dev/null
+++ b/sys-auth/skey/skey-1.1.5-r11.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs readme.gentoo-r1
+
+DESCRIPTION="Linux Port of OpenBSD Single-key Password System"
+HOMEPAGE="http://www.openbsd.org/faq/faq8.html#SKey"
+SRC_URI="mirror://gentoo/${P}.tar.bz2
+ https://dev.gentoo.org/~ulm/distfiles/${P}-patches-6.tar.xz"
+
+LICENSE="BSD MIT RSA BEER-WARE"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86"
+IUSE="static-libs"
+
+DEPEND="dev-lang/perl
+ app-arch/xz-utils"
+RDEPEND="dev-lang/perl
+ virtual/perl-Time-Local
+ sys-libs/cracklib"
+
+PATCHES="../patch"
+
+src_configure() {
+ tc-export CC
+ econf --sysconfdir=/etc/skey
+}
+
+src_install() {
+ into /
+ dolib.so libskey.so{.${PV},.${PV%.*},.${PV%%.*},}
+
+ into /usr
+ dobin skey skeyinit skeyinfo
+ newbin skeyaudit.sh skeyaudit
+ newsbin skeyprune.pl skeyprune
+
+ dosym skey /usr/bin/otp-md4
+ dosym skey /usr/bin/otp-md5
+ dosym skey /usr/bin/otp-sha1
+
+ if use static-libs; then
+ dolib.a libskey.a
+ gen_usr_ldscript libskey.so
+ fi
+
+ doman skey.1 skeyaudit.1 skeyinfo.1 skeyinit.1 skey.3 skeyprune.8
+
+ insinto /usr/include
+ doins skey.h
+
+ keepdir /etc/skey
+
+ # only root needs to have access to these files.
+ fperms go-rx /etc/skey
+
+ # skeyinit and skeyinfo must be suid root so users
+ # can generate their passwords.
+ fperms u+s,go-r /usr/bin/skeyinit /usr/bin/skeyinfo
+
+ dodoc README CHANGES
+
+ DOC_CONTENTS="For an introduction into using s/key authentication,
+ take a look at the EXAMPLES section from the skey(1) manpage."
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ # do not include /etc/skey/skeykeys in the package, as quickpkg
+ # may package sensitive information.
+ # This also fixes the etc-update issue with #64974.
+
+ # skeyinit will not function if this file is not present.
+ touch /etc/skey/skeykeys
+
+ # these permissions are applied by the skey system if missing.
+ chmod 0600 /etc/skey/skeykeys
+
+ readme.gentoo_print_elog
+}
diff --git a/sys-auth/sssd/Manifest b/sys-auth/sssd/Manifest
new file mode 100644
index 000000000000..89a17de05c0e
--- /dev/null
+++ b/sys-auth/sssd/Manifest
@@ -0,0 +1,17 @@
+AUX sssd 489 SHA256 9d6e46d8173c8a5dc73107a88b48de265f386a58279fa650a95b7ab878111b7d SHA512 eab8d42d0188e55a18803b738af77c1969bf7c4b59503ee99975d4739e3c532c300e394a393327b7b98254672c1c2b0b15f81c9c27479e7cbbfb4995ab12b43e WHIRLPOOL 0805e5b5088ab19bedf5c43412bebe0e29193698e793a7ed9e81672e928b438a11874da4f4ff31fcec89d38c12a24822ff231a583b6e01e141ce600ae92be344
+AUX sssd-1.13.0-fix-init.patch 814 SHA256 edb1d019c8642794700f25a7f6b4adf06748d00a5def81c535415828498c9024 SHA512 6e25c091789fe31ca515de85510a473189b4007c9ad180f20e6c372ea4a78a64f1c881fbf36ac4c648897dcef3d61586bb4d66b7256c7bba3bca83d11f83ecc8 WHIRLPOOL 07cdc90f2c66b22856fee3f46969bc65a4fe2e7e55fe0a617c5d094c1745122bea1692dda5c67d7e74aad66890181653186dbc08e068330aed66f911745f726e
+AUX sssd.conf 124 SHA256 bc5154f0ee2c2e6cffd5b6e371d4302a5952bd04343dd4c56689f43821a5fb94 SHA512 f16908c44b213edbf6b0c6e8d49df92e8c06fc623279037074fe51e49b8aca7dc18f5ed83f71909fc8209df80dfc150583edb1687f88e61588bdf9d1fbf6ed5a WHIRLPOOL 37151473420598bd24d90ef1975ba83c5e9f5301a459b8d73d5df540d5b67686494b9f826b8e985b42765c65861d5f82b6ef705ebe577e68bbf57a893a24f32b
+AUX sssd.service 341 SHA256 633a4824ba95524a0d9cf8b42cd1a5dc3f9b40f6aeda9ffc60d56edf72b2015e SHA512 99510d11f390722f56bc164059033fc40299dd4ea29f98cd5f08b2648f31b2e70afeb6b2d90f919bde595546c80b4e6941cf6f48130661ead09c0576043e4cf5 WHIRLPOOL 57963f1251e8f24d2ca67b1c71108171c468077e8ace27347d22e21ce854ab339a4131741397fa39607d8b10621c8fc33420a14bef1fdbd236442ad733299182
+DIST sssd-1.12.1.tar.gz 4088341 SHA256 18b2d7e93e77435708feaf3ff65656f89e5a531ae6d48c4bff98168f171ba8ff SHA512 9514586eb51ac7e8d9639f2aba52cfd5cf71c442ee0a6c652e7838a96cf0fcb62ce4ffa9f9b956d984cd5ecfb3d13b8c21a66677e1e3e9e76f13202792ee2a7e WHIRLPOOL 73b34d373b3b557dc1a075eef94c69ff12051ffef04cd607e81bd84366ca233b67a1b815b02f6aa80d14fbc0453cbe301cdee75e4cc1e218aef8160b2a875e8e
+DIST sssd-1.12.4.tar.gz 4226841 SHA256 ea3be3a40b20284bd3126481dd0747cd07e39d5ef7ef7026d4902d96fc3e9edf SHA512 817141378d4c535ee1018c4246c77a61b963ab10c026e6983e1be90860fa68698dd60cd27ab7ac77da096057f8c71cba90387cf3329e9d43e98a23163f8bb233 WHIRLPOOL 7ee273fcb2e2311f9239face618be1d2eb88c4b6df177ce61854e3465fe6e484753b55a7e864f3b6e4beb2ebea43ae348a06d3ea29eb2560a2ebe3c8a8d0ffed
+DIST sssd-1.12.5.tar.gz 4300869 SHA256 243d8db7c72ecb21aa9db8a09fe9f9b10049dbdb35a1cc2f55e214f21e3ce256 SHA512 573947c58dc53b92b6b60390375a70f3842e0bfd22c696e60dd84b8dd671bc508f30f3a0952135b0c6a1e555d43493f59ce60f780a5130696cada06cc467fa6c WHIRLPOOL 6614d32f0808b97e55b33f996e12207b4960b6f694a7321235e26b7760aa84acad7dd68c2019857ce08d32585f9157e28d2a4be6f944f1eeaaf2f6b84c807638
+DIST sssd-1.13.0.tar.gz 4417697 SHA256 bd1dd95165bca02a08fbd0ea8ac6aa296bc339798d6c6566aee823c536718a5a SHA512 c11303557180d6491933f5732ed831d1725d33e7444d92d5a20ba24a35d77845711d8427d869fe526fbdea482944269469f5bbbb779e3006998fbe09403ebf7f WHIRLPOOL 0ef934e4e22d1c5a8d1e5f649de29e162717e421a341839cecc9ac089d022a30f843463966dc572619b959fd4e850d651bf372e2d511dba24994f790f1006a55
+DIST sssd-1.13.1.tar.gz 4517171 SHA256 ff6425d455a5cae2359e32c8627832e67b5cc0bbec4081a16d926b6e1b431ae7 SHA512 93d7f9230e6464c3346abad374e7b4a17a148a5d6e37736a4d1aaf9c99dce6065e0b1eed329c8de997c7cf902728077dd31ec4920a8d192fc67cc27f16723346 WHIRLPOOL 1b169a5ada95968508314e0f5f466a3c5655839e106a875ecf0f6001aaafe1c2228a6e79c10d9d23392fa54c375f5514c2f2d52b414d57b089de521b3f3cac77
+EBUILD sssd-1.12.1.ebuild 3257 SHA256 adf421c4b856d1a81d39a08af716bf5c844c2bb00b931146cbe79bbbdfbc5af7 SHA512 ac5ecf3c76572035761f3ec00fd72e722d0a4552819deb2fa0bc2848538c592ecadfe973000b8a2af113246e7dc5eb401bc9a7ef9b4d3729bb9b4672923eebf2 WHIRLPOOL 4a6ed0927d2a47c969daf51327c624a9f46736530ebb7716a1a5ec21f1e2b04702bd17dfcac8b8914102467173c92838c24e6e9faa4d5de127af25112d62c0b8
+EBUILD sssd-1.12.4.ebuild 5102 SHA256 247ab28fb29f9fa9055abece00486e4752a220d540d3ae6104fcbb69835987dd SHA512 a029a5dbe2d3abbcfd78a7db9f6b72af0e5babf6e6b1527692506d555352d8c55df8f8fbb4274da82666092c2aff0277acd6aaa8486166f93916b3fe68a7ee29 WHIRLPOOL e48a0cdbb0218a34c61283b13b6f67fab1ec34f1e66dcdec4f4c846152505006600809da6a31f7ea90d9c002280da91b485fb583bb4e64837c63d8b91cc2c49a
+EBUILD sssd-1.12.5.ebuild 5102 SHA256 247ab28fb29f9fa9055abece00486e4752a220d540d3ae6104fcbb69835987dd SHA512 a029a5dbe2d3abbcfd78a7db9f6b72af0e5babf6e6b1527692506d555352d8c55df8f8fbb4274da82666092c2aff0277acd6aaa8486166f93916b3fe68a7ee29 WHIRLPOOL e48a0cdbb0218a34c61283b13b6f67fab1ec34f1e66dcdec4f4c846152505006600809da6a31f7ea90d9c002280da91b485fb583bb4e64837c63d8b91cc2c49a
+EBUILD sssd-1.13.0.ebuild 5309 SHA256 3269eebbb8638b7b561a77e0684f6162a98c852db4152b040ccf0185287e6fec SHA512 2a210cb0f2958f7f826ad2c278f384e7f8b214c32884b3fad4820462c8448869c20a415f9ccb0e9b5111bfa660266d5fef5ed02513f1ba5b4d00769e17215d13 WHIRLPOOL d5151763a5cdf858ca647a8fc3b6d97c4f927f13ebc99143facbc2bca849fcdefa309d2e7b361daeea06fc7c9b40802ba0e6914134666ec0da2c808735851145
+EBUILD sssd-1.13.1.ebuild 5259 SHA256 b45d9ef69088ebc71ed9fc436aa2148abeee0cd0225f26696b61eec7f994d10d SHA512 b0b3907ca79926b53d2199d0ba9b9f9744f0cf1fd5a272813aaa8db3a3c66db8d264675fcb183b8e4b2a79d4b2a65905ab85ed536945fd86ce18f96979e8e73e WHIRLPOOL 6073cbd40b955100705e03c42449e7f381d01cb82917879efa0ca6a03f606bc4d3d03fb7505f62692aca6233aedda11f9e7d7decda099a8746afe2db9f3c0b63
+MISC ChangeLog 4287 SHA256 ad6315c08ba74bec364a1ca7c7ac502ca2347dd488f16d6f72cfd52da1ca6d1e SHA512 2c411b246c22e11ddc8a3c09141fcb274a2195020fd293e8e684ede8286778055ea4ae815c535903b2283b37a83f27069f3103db5f7079719ae668591bf874f5 WHIRLPOOL e19ed377ff85fac159eb6d035e49d67cea1ecbeb8b50798ecfdaef9785d5c23887a200b6c19ece7333575006b7caa41d7b0a0f7f8928193e7ccdbfd3f1d6b3d8
+MISC ChangeLog-2015 11963 SHA256 154e1613682ee02aa2e786fe88b8d2de96f2a16ee7e88fe253e426d5980f1c44 SHA512 062523e93acd6935c90c3edd1da99310460582a3d4c8ceb0976cb087f2c8d108d485d866d21fd2d6a354b6d0e692f1618647307409f71cac93b9e71a655f010d WHIRLPOOL ce0a1ca173c71a004b3eb4d93d18dda3d239cfae49e18e2a8a49f998918366f5bc1e0e30373bced0685aede13131497db7c6dd8c581519428feea267b00b7f69
+MISC metadata.xml 1037 SHA256 9509811fba6f4021d94d02b3e3e1da972bfbc05f6c3ca9c23842a7f4f729d9d3 SHA512 1269a811a3891fa298387667d321da5b8cc67440b4d69865c80ce0ac72a12a05eec6734e3ffeef8f4b7316dbd419a6eed98844ff120d5c3752d6ca0918401731 WHIRLPOOL 84e4351e84a229942a4ad3d7e6cdc2894989455a4bd9ad57983ebe13f65e2bf2d493fd5c9015125238685a65e3e3d57d1899a457e98acf1a12cb59a1899109d3
diff --git a/sys-auth/sssd/files/sssd b/sys-auth/sssd/files/sssd
new file mode 100644
index 000000000000..c79b79ac1e18
--- /dev/null
+++ b/sys-auth/sssd/files/sssd
@@ -0,0 +1,21 @@
+#!/sbin/openrc-run
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+
+command="/usr/sbin/sssd"
+command_args="${SSSD_OPTIONS} -D"
+start_stop_daemon_args="--quiet"
+description="System Security Services Daemon"
+
+depend(){
+ need localmount clock
+ use syslog xdm
+}
+
+if [ "${RC_VERSION:-0}" = "0" ]; then
+ start() {
+ eerror "This script cannot be used for baselayout-1."
+ return 1
+ }
+fi
diff --git a/sys-auth/sssd/files/sssd-1.13.0-fix-init.patch b/sys-auth/sssd/files/sssd-1.13.0-fix-init.patch
new file mode 100644
index 000000000000..d821a0740606
--- /dev/null
+++ b/sys-auth/sssd/files/sssd-1.13.0-fix-init.patch
@@ -0,0 +1,28 @@
+From 121061115d1902d8298fbe9ebc3f8d081a725934 Mon Sep 17 00:00:00 2001
+From: Tyler Gates <tgates81@gmail.com>
+Date: Mon, 20 Jul 2015 17:14:12 -0400
+Subject: [PATCH] daemon startup options as declared in conf.d/sssd
+
+---
+Gentoo bugzilla: https://bugs.gentoo.org/show_bug.cgi?id=553678
+Upstrem bugzilla: https://fedorahosted.org/sssd/ticket/2722
+---
+ src/sysv/gentoo/sssd.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/sysv/gentoo/sssd.in b/src/sysv/gentoo/sssd.in
+index 30d7559..7ced44f 100644
+--- a/src/sysv/gentoo/sssd.in
++++ b/src/sysv/gentoo/sssd.in
+@@ -7,7 +7,7 @@ depend(){
+
+ start(){
+ ebegin "Starting sssd"
+- start-stop-daemon --start --exec @sbindir@/sssd -- -Df
++ start-stop-daemon --start --exec @sbindir@/sssd -- -Df ${SSSD_OPTIONS}
+ eend ${?}
+ }
+
+--
+2.0.5
+
diff --git a/sys-auth/sssd/files/sssd.conf b/sys-auth/sssd/files/sssd.conf
new file mode 100644
index 000000000000..33dab3ddcd5d
--- /dev/null
+++ b/sys-auth/sssd/files/sssd.conf
@@ -0,0 +1,4 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+SSSD_OPTIONS=""
diff --git a/sys-auth/sssd/files/sssd.service b/sys-auth/sssd/files/sssd.service
new file mode 100644
index 000000000000..1821089a6094
--- /dev/null
+++ b/sys-auth/sssd/files/sssd.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=System Security Services Daemon
+# SSSD will not be started until syslog is
+After=syslog.target
+
+[Service]
+ExecStart=/usr/sbin/sssd -D -f
+# These two should be used with traditional UNIX forking daemons
+# consult systemd.service(5) for more details
+Type=forking
+PIDFile=/run/sssd.pid
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/sys-auth/sssd/metadata.xml b/sys-auth/sssd/metadata.xml
new file mode 100644
index 000000000000..7c6b99de0663
--- /dev/null
+++ b/sys-auth/sssd/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>hwoarang@gentoo.org</email>
+ <name>Markos Chandras</name>
+</maintainer>
+<use>
+ <flag name="acl"> Build and use the cifsidmap plugin</flag>
+ <flag name="augeas">Build internal configuration library</flag>
+ <flag name="locator">Install sssd's Kerberos plugin</flag>
+ <flag name="netlink">Add support for netlink protocol via <pkg>dev-libs/libnl</pkg></flag>
+ <flag name="nfsv4">Add support for the nfsv4 idmapd plugin provided by <pkg>net-libs/libnfsidmap</pkg></flag>
+ <flag name="manpages">Build man pages with <pkg>dev-libs/libxslt</pkg></flag>
+ <flag name="autofs">Build helper to let <pkg>net-fs/autofs</pkg> use sssd provided information</flag>
+ <flag name="ssh">Build helper to let <pkg>net-misc/openssh</pkg> use sssd provided information</flag>
+ <flag name="sudo">Build helper to let <pkg>app-admin/sudo</pkg> use sssd provided information</flag>
+</use>
+</pkgmetadata>
diff --git a/sys-auth/sssd/sssd-1.12.1.ebuild b/sys-auth/sssd/sssd-1.12.1.ebuild
new file mode 100644
index 000000000000..7bb9af287262
--- /dev/null
+++ b/sys-auth/sssd/sssd-1.12.1.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+WANT_AUTOMAKE="1.13"
+
+AUTOTOOLS_IN_SOURCE_BUILD=1
+AUTOTOOLS_AUTORECONF=1
+AUTOTOOLS_PRUNE_LIBTOOL_FILES=all
+
+inherit python-single-r1 multilib pam linux-info autotools-utils systemd
+
+DESCRIPTION="System Security Services Daemon provides access to identity and authentication"
+HOMEPAGE="https://pagure.io/sssd/sssd"
+SRC_URI="https://releases.pagure.org/SSSD/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~ia64 ~ppc ~ppc64 x86"
+IUSE="acl augeas autofs +locator netlink nfsv4 nls +manpages python selinux sudo ssh test"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+COMMON_DEP="
+ virtual/pam
+ >=dev-libs/popt-1.16
+ dev-libs/glib:2
+ >=dev-libs/ding-libs-0.2
+ >=sys-libs/talloc-2.0.7
+ >=sys-libs/tdb-1.2.9
+ >=sys-libs/tevent-0.9.16
+ >=sys-libs/ldb-1.1.17-r1:=
+ >=net-nds/openldap-2.4.30[sasl]
+ >=dev-libs/libpcre-8.30
+ >=app-crypt/mit-krb5-1.10.3
+ >=sys-apps/keyutils-1.5
+ >=net-dns/c-ares-1.7.4
+ >=dev-libs/nss-3.12.9
+ python? ( ${PYTHON_DEPS} )
+ selinux? (
+ >=sys-libs/libselinux-2.1.9
+ >=sys-libs/libsemanage-2.1
+ )
+ >=net-dns/bind-tools-9.9[gssapi]
+ >=dev-libs/cyrus-sasl-2.1.25-r3[kerberos]
+ >=sys-apps/dbus-1.6
+ acl? ( net-fs/cifs-utils[acl] )
+ augeas? ( app-admin/augeas )
+ nfsv4? ( net-libs/libnfsidmap )
+ nls? ( >=sys-devel/gettext-0.18 )
+ virtual/libintl
+ netlink? ( dev-libs/libnl:3 )
+ "
+
+RDEPEND="${COMMON_DEP}
+ >=sys-libs/glibc-2.17[nscd]
+ selinux? ( >=sec-policy/selinux-sssd-2.20120725-r9 )
+ "
+DEPEND="${COMMON_DEP}
+ test? ( dev-libs/check )
+ manpages? (
+ >=dev-libs/libxslt-1.1.26
+ app-text/docbook-xml-dtd:4.4
+ )"
+
+CONFIG_CHECK="~KEYS"
+
+pkg_setup(){
+ use python && python-single-r1_pkg_setup
+ linux-info_pkg_setup
+}
+
+src_prepare() {
+ autotools-utils_src_prepare
+}
+
+src_configure(){
+ # no samba4 per 447022
+ # set initscript to sysv because the systemd option needs systemd to
+ # be installed. We provide our own systemd file anyway.
+ local myeconfargs=(
+ --localstatedir="${EPREFIX}"/var
+ --enable-nsslibdir="${EPREFIX}"/$(get_libdir)
+ --with-plugin-path="${EPREFIX}"/usr/$(get_libdir)/sssd
+ --enable-pammoddir="${EPREFIX}"/$(getpam_mod_dir)
+ --with-ldb-lib-dir="${EPREFIX}"/usr/$(get_libdir)/samba/ldb
+ --without-nscd
+ --with-unicode-lib="glib2"
+ --disable-rpath
+ --disable-silent-rules
+ --sbindir=/usr/sbin
+ --without-samba
+ $(use_enable acl cifs-idmap-plugin)
+ $(use_enable augeas config-lib)
+ $(use_with selinux)
+ $(use_with selinux semanage)
+ $(use_with python python-bindings)
+ $(use_enable locator krb5-locator-plugin)
+ $(use_with nfsv4 nfsv4-idmapd-plugin)
+ $(use_enable nls )
+ $(use_with netlink libnl)
+ $(use_with manpages)
+ $(use_with sudo)
+ $(use_with autofs)
+ $(use_with ssh)
+ --with-crypto="libcrypto"
+ --with-initscript="sysv"
+ )
+
+ autotools-utils_src_configure
+}
+
+src_install(){
+ autotools-utils_src_install
+ use python && python_optimize
+
+ insinto /etc/sssd
+ insopts -m600
+ doins "${S}"/src/examples/sssd-example.conf
+
+ insinto /etc/logrotate.d
+ insopts -m644
+ newins "${S}"/src/examples/logrotate sssd
+
+ newconfd "${FILESDIR}"/sssd.conf sssd
+
+ systemd_dounit "${FILESDIR}/${PN}.service"
+}
+
+src_test() {
+ autotools-utils_src_test
+}
diff --git a/sys-auth/sssd/sssd-1.12.4.ebuild b/sys-auth/sssd/sssd-1.12.4.ebuild
new file mode 100644
index 000000000000..3e4e1d38e424
--- /dev/null
+++ b/sys-auth/sssd/sssd-1.12.4.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_4} )
+
+WANT_AUTOMAKE="1.13"
+
+inherit python-single-r1 multilib pam linux-info autotools multilib-minimal systemd toolchain-funcs
+
+DESCRIPTION="System Security Services Daemon provides access to identity and authentication"
+HOMEPAGE="https://pagure.io/sssd/sssd"
+SRC_URI="https://releases.pagure.org/SSSD/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86"
+IUSE="acl augeas autofs +locator netlink nfsv4 nls +manpages python samba selinux sudo ssh test"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+COMMON_DEP="
+ >=virtual/pam-0-r1[${MULTILIB_USEDEP}]
+ >=dev-libs/popt-1.16
+ dev-libs/glib:2
+ >=dev-libs/ding-libs-0.2
+ >=sys-libs/talloc-2.0.7
+ >=sys-libs/tdb-1.2.9
+ >=sys-libs/tevent-0.9.16
+ >=sys-libs/ldb-1.1.17-r1:=
+ >=net-nds/openldap-2.4.30[sasl]
+ >=dev-libs/libpcre-8.30
+ >=app-crypt/mit-krb5-1.10.3
+ locator? (
+ >=app-crypt/mit-krb5-1.12.2[${MULTILIB_USEDEP}]
+ >=net-dns/c-ares-1.10.0-r1[${MULTILIB_USEDEP}]
+ )
+ >=sys-apps/keyutils-1.5
+ >=net-dns/c-ares-1.7.4
+ >=dev-libs/nss-3.12.9
+ python? ( ${PYTHON_DEPS} )
+ selinux? (
+ >=sys-libs/libselinux-2.1.9
+ >=sys-libs/libsemanage-2.1
+ )
+ >=net-dns/bind-tools-9.9[gssapi]
+ >=dev-libs/cyrus-sasl-2.1.25-r3[kerberos]
+ >=sys-apps/dbus-1.6
+ acl? ( net-fs/cifs-utils[acl] )
+ augeas? ( app-admin/augeas )
+ nfsv4? ( net-libs/libnfsidmap )
+ nls? ( >=sys-devel/gettext-0.18 )
+ virtual/libintl
+ netlink? ( dev-libs/libnl:3 )
+ samba? ( >=net-fs/samba-4.0 )
+ "
+
+RDEPEND="${COMMON_DEP}
+ >=sys-libs/glibc-2.17[nscd]
+ selinux? ( >=sec-policy/selinux-sssd-2.20120725-r9 )
+ "
+DEPEND="${COMMON_DEP}
+ test? ( dev-libs/check )
+ manpages? (
+ >=dev-libs/libxslt-1.1.26
+ app-text/docbook-xml-dtd:4.4
+ )"
+
+CONFIG_CHECK="~KEYS"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/ipa_hbac.h
+ /usr/include/sss_idmap.h
+ /usr/include/sss_nss_idmap.h
+ /usr/include/wbclient_sssd.h
+ # --with-ifp
+ /usr/include/sss_sifp.h
+ /usr/include/sss_sifp_dbus.h
+)
+
+pkg_setup(){
+ use python && python-single-r1_pkg_setup
+ linux-info_pkg_setup
+}
+
+src_prepare() {
+ eautoreconf
+
+ multilib_copy_sources
+}
+
+src_configure() {
+ local native_dbus_cflags=$($(tc-getPKG_CONFIG) --cflags dbus-1)
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ # set initscript to sysv because the systemd option needs systemd to
+ # be installed. We provide our own systemd file anyway.
+ local myconf=(
+ --localstatedir="${EPREFIX}"/var
+ --enable-nsslibdir="${EPREFIX}"/$(get_libdir)
+ --with-plugin-path="${EPREFIX}"/usr/$(get_libdir)/sssd
+ --enable-pammoddir="${EPREFIX}"/$(getpam_mod_dir)
+ --with-ldb-lib-dir="${EPREFIX}"/usr/$(get_libdir)/samba/ldb
+ --without-nscd
+ --with-unicode-lib="glib2"
+ --disable-rpath
+ --disable-silent-rules
+ --sbindir=/usr/sbin
+ $(multilib_native_use_with samba)
+ $(multilib_native_use_enable acl cifs-idmap-plugin)
+ $(multilib_native_use_enable augeas config-lib)
+ $(multilib_native_use_with selinux)
+ $(multilib_native_use_with selinux semanage)
+ $(multilib_native_use_with python python-bindings)
+ $(use_enable locator krb5-locator-plugin)
+ $(multilib_native_use_with nfsv4 nfsv4-idmapd-plugin)
+ $(use_enable nls )
+ $(multilib_native_use_with netlink libnl)
+ $(multilib_native_use_with manpages)
+ $(multilib_native_use_with sudo)
+ $(multilib_native_use_with autofs)
+ $(multilib_native_use_with ssh)
+ --with-crypto="libcrypto"
+ --with-initscript="sysv"
+
+ KRB5_CONFIG=/usr/bin/${CHOST}-krb5-config
+ )
+
+ if ! multilib_is_native_abi; then
+ # work-around all the libraries that are used for CLI and server
+ myconf+=(
+ {POPT,TALLOC,TDB,TEVENT,LDB}_{CFLAGS,LIBS}=' '
+ # ldb headers are fine since native needs it
+ # ldb lib fails... but it does not seem to bother
+ {DHASH,COLLECTION,INI_CONFIG_V{0,1,1_1}}_{CFLAGS,LIBS}=' '
+ {PCRE,CARES,SYSTEMD_LOGIN,SASL,GLIB2,DBUS,CRYPTO}_{CFLAGS,LIBS}=' '
+
+ # use native include path for dbus (needed for build)
+ DBUS_CFLAGS="${native_dbus_cflags}"
+
+ # non-pkgconfig checks
+ ac_cv_lib_ldap_ldap_search=yes
+ )
+
+ use locator || myconf+=(
+ KRB5_CONFIG=/bin/true
+ )
+ fi
+
+ econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake libnss_sss.la pam_sss.la
+ use locator && emake sssd_krb5_locator_plugin.la
+ fi
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ emake -j1 DESTDIR="${D}" "${_at_args[@]}" install
+ else
+ # easier than playing with automake...
+ dopammod .libs/pam_sss.so
+
+ into /
+ dolib .libs/libnss_sss.so*
+
+ if use locator; then
+ exeinto /usr/$(get_libdir)/krb5/plugins/libkrb5
+ doexe .libs/sssd_krb5_locator_plugin.so
+ fi
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ prune_libtool_files --all
+ use python && python_optimize
+
+ insinto /etc/sssd
+ insopts -m600
+ doins "${S}"/src/examples/sssd-example.conf
+
+ insinto /etc/logrotate.d
+ insopts -m644
+ newins "${S}"/src/examples/logrotate sssd
+
+ newconfd "${FILESDIR}"/sssd.conf sssd
+
+ systemd_dounit "${FILESDIR}/${PN}.service"
+}
+
+multilib_src_test() {
+ default
+}
diff --git a/sys-auth/sssd/sssd-1.12.5.ebuild b/sys-auth/sssd/sssd-1.12.5.ebuild
new file mode 100644
index 000000000000..3e4e1d38e424
--- /dev/null
+++ b/sys-auth/sssd/sssd-1.12.5.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_4} )
+
+WANT_AUTOMAKE="1.13"
+
+inherit python-single-r1 multilib pam linux-info autotools multilib-minimal systemd toolchain-funcs
+
+DESCRIPTION="System Security Services Daemon provides access to identity and authentication"
+HOMEPAGE="https://pagure.io/sssd/sssd"
+SRC_URI="https://releases.pagure.org/SSSD/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86"
+IUSE="acl augeas autofs +locator netlink nfsv4 nls +manpages python samba selinux sudo ssh test"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+COMMON_DEP="
+ >=virtual/pam-0-r1[${MULTILIB_USEDEP}]
+ >=dev-libs/popt-1.16
+ dev-libs/glib:2
+ >=dev-libs/ding-libs-0.2
+ >=sys-libs/talloc-2.0.7
+ >=sys-libs/tdb-1.2.9
+ >=sys-libs/tevent-0.9.16
+ >=sys-libs/ldb-1.1.17-r1:=
+ >=net-nds/openldap-2.4.30[sasl]
+ >=dev-libs/libpcre-8.30
+ >=app-crypt/mit-krb5-1.10.3
+ locator? (
+ >=app-crypt/mit-krb5-1.12.2[${MULTILIB_USEDEP}]
+ >=net-dns/c-ares-1.10.0-r1[${MULTILIB_USEDEP}]
+ )
+ >=sys-apps/keyutils-1.5
+ >=net-dns/c-ares-1.7.4
+ >=dev-libs/nss-3.12.9
+ python? ( ${PYTHON_DEPS} )
+ selinux? (
+ >=sys-libs/libselinux-2.1.9
+ >=sys-libs/libsemanage-2.1
+ )
+ >=net-dns/bind-tools-9.9[gssapi]
+ >=dev-libs/cyrus-sasl-2.1.25-r3[kerberos]
+ >=sys-apps/dbus-1.6
+ acl? ( net-fs/cifs-utils[acl] )
+ augeas? ( app-admin/augeas )
+ nfsv4? ( net-libs/libnfsidmap )
+ nls? ( >=sys-devel/gettext-0.18 )
+ virtual/libintl
+ netlink? ( dev-libs/libnl:3 )
+ samba? ( >=net-fs/samba-4.0 )
+ "
+
+RDEPEND="${COMMON_DEP}
+ >=sys-libs/glibc-2.17[nscd]
+ selinux? ( >=sec-policy/selinux-sssd-2.20120725-r9 )
+ "
+DEPEND="${COMMON_DEP}
+ test? ( dev-libs/check )
+ manpages? (
+ >=dev-libs/libxslt-1.1.26
+ app-text/docbook-xml-dtd:4.4
+ )"
+
+CONFIG_CHECK="~KEYS"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/ipa_hbac.h
+ /usr/include/sss_idmap.h
+ /usr/include/sss_nss_idmap.h
+ /usr/include/wbclient_sssd.h
+ # --with-ifp
+ /usr/include/sss_sifp.h
+ /usr/include/sss_sifp_dbus.h
+)
+
+pkg_setup(){
+ use python && python-single-r1_pkg_setup
+ linux-info_pkg_setup
+}
+
+src_prepare() {
+ eautoreconf
+
+ multilib_copy_sources
+}
+
+src_configure() {
+ local native_dbus_cflags=$($(tc-getPKG_CONFIG) --cflags dbus-1)
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ # set initscript to sysv because the systemd option needs systemd to
+ # be installed. We provide our own systemd file anyway.
+ local myconf=(
+ --localstatedir="${EPREFIX}"/var
+ --enable-nsslibdir="${EPREFIX}"/$(get_libdir)
+ --with-plugin-path="${EPREFIX}"/usr/$(get_libdir)/sssd
+ --enable-pammoddir="${EPREFIX}"/$(getpam_mod_dir)
+ --with-ldb-lib-dir="${EPREFIX}"/usr/$(get_libdir)/samba/ldb
+ --without-nscd
+ --with-unicode-lib="glib2"
+ --disable-rpath
+ --disable-silent-rules
+ --sbindir=/usr/sbin
+ $(multilib_native_use_with samba)
+ $(multilib_native_use_enable acl cifs-idmap-plugin)
+ $(multilib_native_use_enable augeas config-lib)
+ $(multilib_native_use_with selinux)
+ $(multilib_native_use_with selinux semanage)
+ $(multilib_native_use_with python python-bindings)
+ $(use_enable locator krb5-locator-plugin)
+ $(multilib_native_use_with nfsv4 nfsv4-idmapd-plugin)
+ $(use_enable nls )
+ $(multilib_native_use_with netlink libnl)
+ $(multilib_native_use_with manpages)
+ $(multilib_native_use_with sudo)
+ $(multilib_native_use_with autofs)
+ $(multilib_native_use_with ssh)
+ --with-crypto="libcrypto"
+ --with-initscript="sysv"
+
+ KRB5_CONFIG=/usr/bin/${CHOST}-krb5-config
+ )
+
+ if ! multilib_is_native_abi; then
+ # work-around all the libraries that are used for CLI and server
+ myconf+=(
+ {POPT,TALLOC,TDB,TEVENT,LDB}_{CFLAGS,LIBS}=' '
+ # ldb headers are fine since native needs it
+ # ldb lib fails... but it does not seem to bother
+ {DHASH,COLLECTION,INI_CONFIG_V{0,1,1_1}}_{CFLAGS,LIBS}=' '
+ {PCRE,CARES,SYSTEMD_LOGIN,SASL,GLIB2,DBUS,CRYPTO}_{CFLAGS,LIBS}=' '
+
+ # use native include path for dbus (needed for build)
+ DBUS_CFLAGS="${native_dbus_cflags}"
+
+ # non-pkgconfig checks
+ ac_cv_lib_ldap_ldap_search=yes
+ )
+
+ use locator || myconf+=(
+ KRB5_CONFIG=/bin/true
+ )
+ fi
+
+ econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake libnss_sss.la pam_sss.la
+ use locator && emake sssd_krb5_locator_plugin.la
+ fi
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ emake -j1 DESTDIR="${D}" "${_at_args[@]}" install
+ else
+ # easier than playing with automake...
+ dopammod .libs/pam_sss.so
+
+ into /
+ dolib .libs/libnss_sss.so*
+
+ if use locator; then
+ exeinto /usr/$(get_libdir)/krb5/plugins/libkrb5
+ doexe .libs/sssd_krb5_locator_plugin.so
+ fi
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ prune_libtool_files --all
+ use python && python_optimize
+
+ insinto /etc/sssd
+ insopts -m600
+ doins "${S}"/src/examples/sssd-example.conf
+
+ insinto /etc/logrotate.d
+ insopts -m644
+ newins "${S}"/src/examples/logrotate sssd
+
+ newconfd "${FILESDIR}"/sssd.conf sssd
+
+ systemd_dounit "${FILESDIR}/${PN}.service"
+}
+
+multilib_src_test() {
+ default
+}
diff --git a/sys-auth/sssd/sssd-1.13.0.ebuild b/sys-auth/sssd/sssd-1.13.0.ebuild
new file mode 100644
index 000000000000..b3bd639ff0c9
--- /dev/null
+++ b/sys-auth/sssd/sssd-1.13.0.ebuild
@@ -0,0 +1,211 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_4} )
+
+inherit eutils multilib pam linux-info autotools multilib-minimal python-r1 systemd toolchain-funcs
+
+DESCRIPTION="System Security Services Daemon provides access to identity and authentication"
+HOMEPAGE="https://pagure.io/sssd/sssd"
+SRC_URI="https://releases.pagure.org/SSSD/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86"
+IUSE="acl augeas autofs +locator netlink nfsv4 nls +manpages python samba selinux sudo ssh test"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+COMMON_DEP="
+ >=virtual/pam-0-r1[${MULTILIB_USEDEP}]
+ >=dev-libs/popt-1.16
+ dev-libs/glib:2
+ >=dev-libs/ding-libs-0.2
+ >=sys-libs/talloc-2.0.7
+ >=sys-libs/tdb-1.2.9
+ >=sys-libs/tevent-0.9.16
+ >=sys-libs/ldb-1.1.17-r1:=
+ >=net-nds/openldap-2.4.30[sasl]
+ >=dev-libs/libpcre-8.30
+ >=app-crypt/mit-krb5-1.10.3
+ locator? (
+ >=app-crypt/mit-krb5-1.12.2[${MULTILIB_USEDEP}]
+ >=net-dns/c-ares-1.10.0-r1[${MULTILIB_USEDEP}]
+ )
+ >=sys-apps/keyutils-1.5
+ >=net-dns/c-ares-1.7.4
+ >=dev-libs/nss-3.12.9
+ python? ( ${PYTHON_DEPS} )
+ selinux? (
+ >=sys-libs/libselinux-2.1.9
+ >=sys-libs/libsemanage-2.1
+ )
+ >=net-dns/bind-tools-9.9[gssapi]
+ >=dev-libs/cyrus-sasl-2.1.25-r3[kerberos]
+ >=sys-apps/dbus-1.6
+ acl? ( net-fs/cifs-utils[acl] )
+ augeas? ( app-admin/augeas )
+ nfsv4? ( net-libs/libnfsidmap )
+ nls? ( >=sys-devel/gettext-0.18 )
+ virtual/libintl
+ netlink? ( dev-libs/libnl:3 )
+ samba? ( >=net-fs/samba-4.0 )
+ "
+
+RDEPEND="${COMMON_DEP}
+ >=sys-libs/glibc-2.17[nscd]
+ selinux? ( >=sec-policy/selinux-sssd-2.20120725-r9 )
+ "
+DEPEND="${COMMON_DEP}
+ test? ( dev-libs/check )
+ manpages? (
+ >=dev-libs/libxslt-1.1.26
+ app-text/docbook-xml-dtd:4.4
+ )"
+
+CONFIG_CHECK="~KEYS"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/ipa_hbac.h
+ /usr/include/sss_idmap.h
+ /usr/include/sss_nss_idmap.h
+ /usr/include/wbclient_sssd.h
+ # --with-ifp
+ /usr/include/sss_sifp.h
+ /usr/include/sss_sifp_dbus.h
+)
+
+pkg_setup(){
+ linux-info_pkg_setup
+}
+
+src_prepare() {
+ # bug #553678
+ epatch "${FILESDIR}"/${P}-fix-init.patch
+
+ eautoreconf
+
+ multilib_copy_sources
+
+ # Maybe run it before eautoreconf?
+ epatch_user
+}
+
+src_configure() {
+ local native_dbus_cflags=$($(tc-getPKG_CONFIG) --cflags dbus-1)
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ # set initscript to sysv because the systemd option needs systemd to
+ # be installed. We provide our own systemd file anyway.
+ local myconf=()
+ if [[ "${PYTHON_TARGETS}" == *python2* ]]; then
+ myconf+=($(multilib_native_use_with python python2-bindings))
+ fi
+ if [[ "${PYTHON_TARGETS}" == *python3* ]]; then
+ myconf+=($(multilib_native_use_with python python3-bindings))
+ fi
+
+ myconf+=(
+ --localstatedir="${EPREFIX}"/var
+ --enable-nsslibdir="${EPREFIX}"/$(get_libdir)
+ --with-plugin-path="${EPREFIX}"/usr/$(get_libdir)/sssd
+ --enable-pammoddir="${EPREFIX}"/$(getpam_mod_dir)
+ --with-ldb-lib-dir="${EPREFIX}"/usr/$(get_libdir)/samba/ldb
+ --without-nscd
+ --with-unicode-lib="glib2"
+ --disable-rpath
+ --disable-silent-rules
+ --sbindir=/usr/sbin
+ $(multilib_native_use_with samba)
+ $(multilib_native_use_enable acl cifs-idmap-plugin)
+ $(multilib_native_use_enable augeas config-lib)
+ $(multilib_native_use_with selinux)
+ $(multilib_native_use_with selinux semanage)
+ $(use_enable locator krb5-locator-plugin)
+ $(multilib_native_use_with nfsv4 nfsv4-idmapd-plugin)
+ $(use_enable nls )
+ $(multilib_native_use_with netlink libnl)
+ $(multilib_native_use_with manpages)
+ $(multilib_native_use_with sudo)
+ $(multilib_native_use_with autofs)
+ $(multilib_native_use_with ssh)
+ --with-crypto="libcrypto"
+ --with-initscript="sysv"
+
+ KRB5_CONFIG=/usr/bin/${CHOST}-krb5-config
+ )
+
+ if ! multilib_is_native_abi; then
+ # work-around all the libraries that are used for CLI and server
+ myconf+=(
+ {POPT,TALLOC,TDB,TEVENT,LDB}_{CFLAGS,LIBS}=' '
+ # ldb headers are fine since native needs it
+ # ldb lib fails... but it does not seem to bother
+ {DHASH,COLLECTION,INI_CONFIG_V{0,1,1_1}}_{CFLAGS,LIBS}=' '
+ {PCRE,CARES,SYSTEMD_LOGIN,SASL,GLIB2,DBUS,CRYPTO}_{CFLAGS,LIBS}=' '
+
+ # use native include path for dbus (needed for build)
+ DBUS_CFLAGS="${native_dbus_cflags}"
+
+ # non-pkgconfig checks
+ ac_cv_lib_ldap_ldap_search=yes
+ )
+
+ use locator || myconf+=(
+ KRB5_CONFIG=/bin/true
+ )
+ fi
+
+ econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake libnss_sss.la pam_sss.la
+ use locator && emake sssd_krb5_locator_plugin.la
+ fi
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ emake -j1 DESTDIR="${D}" "${_at_args[@]}" install
+ else
+ # easier than playing with automake...
+ dopammod .libs/pam_sss.so
+
+ into /
+ dolib .libs/libnss_sss.so*
+
+ if use locator; then
+ exeinto /usr/$(get_libdir)/krb5/plugins/libkrb5
+ doexe .libs/sssd_krb5_locator_plugin.so
+ fi
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ prune_libtool_files --all
+
+ insinto /etc/sssd
+ insopts -m600
+ doins "${S}"/src/examples/sssd-example.conf
+
+ insinto /etc/logrotate.d
+ insopts -m644
+ newins "${S}"/src/examples/logrotate sssd
+
+ newconfd "${FILESDIR}"/sssd.conf sssd
+
+ systemd_dounit "${FILESDIR}/${PN}.service"
+}
+
+multilib_src_test() {
+ default
+}
diff --git a/sys-auth/sssd/sssd-1.13.1.ebuild b/sys-auth/sssd/sssd-1.13.1.ebuild
new file mode 100644
index 000000000000..865426fc1061
--- /dev/null
+++ b/sys-auth/sssd/sssd-1.13.1.ebuild
@@ -0,0 +1,208 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+
+inherit eutils multilib pam linux-info autotools multilib-minimal python-r1 systemd toolchain-funcs
+
+DESCRIPTION="System Security Services Daemon provides access to identity and authentication"
+HOMEPAGE="https://pagure.io/sssd/sssd"
+SRC_URI="https://releases.pagure.org/SSSD/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86"
+IUSE="acl augeas autofs +locator netlink nfsv4 nls +manpages python samba selinux sudo ssh test"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+COMMON_DEP="
+ >=virtual/pam-0-r1[${MULTILIB_USEDEP}]
+ >=dev-libs/popt-1.16
+ dev-libs/glib:2
+ >=dev-libs/ding-libs-0.2
+ >=sys-libs/talloc-2.0.7
+ >=sys-libs/tdb-1.2.9
+ >=sys-libs/tevent-0.9.16
+ >=sys-libs/ldb-1.1.17-r1:=
+ >=net-nds/openldap-2.4.30[sasl]
+ >=dev-libs/libpcre-8.30
+ >=app-crypt/mit-krb5-1.10.3
+ locator? (
+ >=app-crypt/mit-krb5-1.12.2[${MULTILIB_USEDEP}]
+ >=net-dns/c-ares-1.10.0-r1[${MULTILIB_USEDEP}]
+ )
+ >=sys-apps/keyutils-1.5
+ >=net-dns/c-ares-1.7.4
+ >=dev-libs/nss-3.12.9
+ python? ( ${PYTHON_DEPS} )
+ selinux? (
+ >=sys-libs/libselinux-2.1.9
+ >=sys-libs/libsemanage-2.1
+ )
+ >=net-dns/bind-tools-9.9[gssapi]
+ >=dev-libs/cyrus-sasl-2.1.25-r3[kerberos]
+ >=sys-apps/dbus-1.6
+ acl? ( net-fs/cifs-utils[acl] )
+ augeas? ( app-admin/augeas )
+ nfsv4? ( net-libs/libnfsidmap )
+ nls? ( >=sys-devel/gettext-0.18 )
+ virtual/libintl
+ netlink? ( dev-libs/libnl:3 )
+ samba? ( >=net-fs/samba-4.0 )
+ "
+
+RDEPEND="${COMMON_DEP}
+ >=sys-libs/glibc-2.17[nscd]
+ selinux? ( >=sec-policy/selinux-sssd-2.20120725-r9 )
+ "
+DEPEND="${COMMON_DEP}
+ test? ( dev-libs/check )
+ manpages? (
+ >=dev-libs/libxslt-1.1.26
+ app-text/docbook-xml-dtd:4.4
+ )"
+
+CONFIG_CHECK="~KEYS"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/ipa_hbac.h
+ /usr/include/sss_idmap.h
+ /usr/include/sss_nss_idmap.h
+ /usr/include/wbclient_sssd.h
+ # --with-ifp
+ /usr/include/sss_sifp.h
+ /usr/include/sss_sifp_dbus.h
+)
+
+pkg_setup(){
+ linux-info_pkg_setup
+}
+
+src_prepare() {
+ eautoreconf
+
+ multilib_copy_sources
+
+ # Maybe run it before eautoreconf?
+ epatch_user
+}
+
+src_configure() {
+ local native_dbus_cflags=$($(tc-getPKG_CONFIG) --cflags dbus-1)
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ # set initscript to sysv because the systemd option needs systemd to
+ # be installed. We provide our own systemd file anyway.
+ local myconf=()
+ if [[ "${PYTHON_TARGETS}" == *python2* ]]; then
+ myconf+=($(multilib_native_use_with python python2-bindings))
+ fi
+ if [[ "${PYTHON_TARGETS}" == *python3* ]]; then
+ myconf+=($(multilib_native_use_with python python3-bindings))
+ fi
+
+ myconf+=(
+ --localstatedir="${EPREFIX}"/var
+ --enable-nsslibdir="${EPREFIX}"/$(get_libdir)
+ --with-plugin-path="${EPREFIX}"/usr/$(get_libdir)/sssd
+ --enable-pammoddir="${EPREFIX}"/$(getpam_mod_dir)
+ --with-ldb-lib-dir="${EPREFIX}"/usr/$(get_libdir)/samba/ldb
+ --without-nscd
+ --with-unicode-lib="glib2"
+ --disable-rpath
+ --disable-silent-rules
+ --sbindir=/usr/sbin
+ $(multilib_native_use_with samba)
+ $(multilib_native_use_enable acl cifs-idmap-plugin)
+ $(multilib_native_use_enable augeas config-lib)
+ $(multilib_native_use_with selinux)
+ $(multilib_native_use_with selinux semanage)
+ $(use_enable locator krb5-locator-plugin)
+ $(multilib_native_use_with nfsv4 nfsv4-idmapd-plugin)
+ $(use_enable nls )
+ $(multilib_native_use_with netlink libnl)
+ $(multilib_native_use_with manpages)
+ $(multilib_native_use_with sudo)
+ $(multilib_native_use_with autofs)
+ $(multilib_native_use_with ssh)
+ --with-crypto="libcrypto"
+ --with-initscript="sysv"
+
+ KRB5_CONFIG=/usr/bin/${CHOST}-krb5-config
+ )
+
+ if ! multilib_is_native_abi; then
+ # work-around all the libraries that are used for CLI and server
+ myconf+=(
+ {POPT,TALLOC,TDB,TEVENT,LDB}_{CFLAGS,LIBS}=' '
+ # ldb headers are fine since native needs it
+ # ldb lib fails... but it does not seem to bother
+ {DHASH,COLLECTION,INI_CONFIG_V{0,1,1_1}}_{CFLAGS,LIBS}=' '
+ {PCRE,CARES,SYSTEMD_LOGIN,SASL,GLIB2,DBUS,CRYPTO}_{CFLAGS,LIBS}=' '
+
+ # use native include path for dbus (needed for build)
+ DBUS_CFLAGS="${native_dbus_cflags}"
+
+ # non-pkgconfig checks
+ ac_cv_lib_ldap_ldap_search=yes
+ )
+
+ use locator || myconf+=(
+ KRB5_CONFIG=/bin/true
+ )
+ fi
+
+ econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake libnss_sss.la pam_sss.la
+ use locator && emake sssd_krb5_locator_plugin.la
+ fi
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ emake -j1 DESTDIR="${D}" "${_at_args[@]}" install
+ else
+ # easier than playing with automake...
+ dopammod .libs/pam_sss.so
+
+ into /
+ dolib .libs/libnss_sss.so*
+
+ if use locator; then
+ exeinto /usr/$(get_libdir)/krb5/plugins/libkrb5
+ doexe .libs/sssd_krb5_locator_plugin.so
+ fi
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ prune_libtool_files --all
+
+ insinto /etc/sssd
+ insopts -m600
+ doins "${S}"/src/examples/sssd-example.conf
+
+ insinto /etc/logrotate.d
+ insopts -m644
+ newins "${S}"/src/examples/logrotate sssd
+
+ newconfd "${FILESDIR}"/sssd.conf sssd
+
+ systemd_dounit "${FILESDIR}/${PN}.service"
+}
+
+multilib_src_test() {
+ default
+}
diff --git a/sys-auth/tfm-fingerprint/Manifest b/sys-auth/tfm-fingerprint/Manifest
new file mode 100644
index 000000000000..6702e7af29d1
--- /dev/null
+++ b/sys-auth/tfm-fingerprint/Manifest
@@ -0,0 +1,6 @@
+AUX tfmessbsp.cfg 90 SHA256 fd35cbf9e4e8d7abccad58d63f89c6df7af1e88ca86acce88d8311bca08cd1de SHA512 f15cd13ae72679ed7f2a0b6916c4392b09573ed59068bb476b324e49a3870d185d812e7f75d46148ea1a3c3edea99d5400fa8d3293271c4adfe7a2a2709a3c47 WHIRLPOOL dae0e1883a041f2832a0fcc4c7de5ba3a783cf61fcda1fb499cbe4a1372e02b91e9434d01de221f9f7b493827d0916e412d40f70cba9c59bb3c14f1bc6c29038
+DIST TFMESS_BSP_LIN_1.0.zip 922652 SHA256 9ca1dcb059e326d4c760c8f8ceb4df5970ab9897062487453a2ac5e9e7058368 SHA512 dd0a965eea21b6d04178b39847246187aaca32c297a7fc0a45dc8dfe663f4951627223760a322d0a8beb50c2bc8485db63c7e1e6dfa49612c15427fd0bace3ee WHIRLPOOL 014aef94ee6b59ed12d9ff8861dff408aa6a63bdad0da27c4e2ee84e0e613c352909816907065f9294deddf0349f0aed69d059b8ca8d24380b6600f5b9b807cb
+EBUILD tfm-fingerprint-1.0.ebuild 1062 SHA256 ba61cc6e68c85aa2a3b93d50206780c6b688c12dfe322dbff7ad4566807f1931 SHA512 4f7cae28a3fe7d3dd4c13a84f21fcfd2b12cad18dfb3cc57961a2360a2cb760e92194a1f758b4585b339156ce1c856e11394a82274f9cbc0d4ce9cdf286f5f4f WHIRLPOOL dd808656f0362a9e141c435d5af40013a3a979639d6338d452e6433c584c75f229aafba7209ab9d2a61c5db1411f93662afba2bd4b46a36341199570e74c3da5
+MISC ChangeLog 2218 SHA256 93033c7a1913828c60c4b5060c5351ebca01f1cfc11fe59ca65cc101052d27e0 SHA512 210b3334296660553189820a8cc1b4ea4505e6f5caad842bf7a74cef51fecf22765add7696b6c3ca7c7e04bdbad3922f916ae5155e00b6597dfa5b07f740d3b3 WHIRLPOOL 0db0c9d2ac462ab1e59fae0aa1b181e1ea7c73a8c25d3de46c69b7fcaeee038ff6fc75567f102226ab141c0030f0eeaf742056faaecabd8d8310b67b9eea2061
+MISC ChangeLog-2015 1575 SHA256 6bebdb3a1bbba1518af891485ab3a0c06a750c325abe556dc6bdf6889c7a5b35 SHA512 5a2aa6fb17daf1fce47e098f1d1bf5d110878fbff15a2cf568097f3f8d3c0be296a12da24cdd0435c5e3d4b6cc0d3f7a910df3f0dbd1b2bc30c80263430942d2 WHIRLPOOL 12d8d71d9a125cfc6e66fa3f7793c2360f7eac49ed82237a230f6894db5fb66b30bc7bab77c388bac644c0913546a66282f1c46f002d135c2566851dbeb3d897
+MISC metadata.xml 245 SHA256 aa8d9ea02f3fea416f0452961c38705410888332c197a49f4a3f9a8c463a33e0 SHA512 2561b26d1e4e3411e19d3b8e5113c0d1ccb7f62f91a9597a68e843e0b872881c587bdee924655989d47f5911018cc534d6c11f63c7c7a9ed38b7037dd96b3b65 WHIRLPOOL 41275f07f4811dfd5f77829ceafb07d8d9ab54155476452d7a460ab59bf1db364e260a8e75447574f207c35c2db1eae7a4fdfe373ec4767002269fc2b5f8e6ea
diff --git a/sys-auth/tfm-fingerprint/files/tfmessbsp.cfg b/sys-auth/tfm-fingerprint/files/tfmessbsp.cfg
new file mode 100644
index 000000000000..f7d93eb20519
--- /dev/null
+++ b/sys-auth/tfm-fingerprint/files/tfmessbsp.cfg
@@ -0,0 +1,4 @@
+#hide-capture-success="0"
+hide-capture-success="0"
+#security-level="3"
+security-level="3"
diff --git a/sys-auth/tfm-fingerprint/metadata.xml b/sys-auth/tfm-fingerprint/metadata.xml
new file mode 100644
index 000000000000..bb4e0a505070
--- /dev/null
+++ b/sys-auth/tfm-fingerprint/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>vapier@gentoo.org</email>
+ <name>Mike Frysinger</name>
+</maintainer>
+</pkgmetadata>
diff --git a/sys-auth/tfm-fingerprint/tfm-fingerprint-1.0.ebuild b/sys-auth/tfm-fingerprint/tfm-fingerprint-1.0.ebuild
new file mode 100644
index 000000000000..ad4b00e36171
--- /dev/null
+++ b/sys-auth/tfm-fingerprint/tfm-fingerprint-1.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit multilib
+
+DESCRIPTION="TouchChip TFM/ESS FingerPrint BSP"
+HOMEPAGE="http://www.upek.com/support/dl_linux_bsp.asp"
+SRC_URI="http://www.upek.com/support/download/TFMESS_BSP_LIN_${PV}.zip"
+
+LICENSE="UPEK-SDK-EULA"
+SLOT="0"
+KEYWORDS="-* x86"
+IUSE=""
+
+RDEPEND="sys-auth/bioapi"
+DEPEND="${RDEPEND}
+ app-arch/unzip"
+
+S=${WORKDIR}
+
+QA_TEXTRELS="usr/lib/libtfmessbsp.so"
+QA_PRESTRIPPED="usr/lib/libtfmessbsp.so"
+
+src_install() {
+ # this is a binary blob, so it probably shouldnt live in /usr/lib
+ dolib.so libtfmessbsp.so || die
+ insinto /etc
+ doins "${FILESDIR}"/tfmessbsp.cfg || die
+}
+
+doit_with_ewarn() {
+ "$@" || ewarn "FAILURE: $*"
+}
+
+pkg_postinst() {
+ doit_with_ewarn mod_install -fi /usr/$(get_libdir)/libtfmessbsp.so
+
+ elog "Note: You have to be in the group usb to access the fingerprint device."
+}
+
+pkg_postrm() {
+ # only do this if uninstalling
+ if ! has_version ${CATEGORY}/${PN} ; then
+ doit_with_ewarn mod_install -fu libtfmessbsp.so
+ fi
+}
diff --git a/sys-auth/thinkfinger/Manifest b/sys-auth/thinkfinger/Manifest
new file mode 100644
index 000000000000..2de44b1a3fe3
--- /dev/null
+++ b/sys-auth/thinkfinger/Manifest
@@ -0,0 +1,11 @@
+AUX 0.3-carriagereturn.patch 409 SHA256 75b6d7093d6182a1384ada721f92975450e1055cf0e6796f2649260042738b65 SHA512 f41093878aebdea7c68d55a2c1365fd0cc491715797cd56ddc5b5f77390350d6bd097767d2d21bdb2d24f95ffa31057da726aeb3248b88cb37244bf2d442e7af WHIRLPOOL 04ad5f17da6a87386a859891c6e7921370a302ef54d73d6c002917d1fa3d9574502c12460c1a95bfd6c5e125e9c52c0185960e03ae1810d97fc5279f3b965127
+AUX 0.3-direct_set_config_usb_hello.patch 941 SHA256 285fd6ae82334e5b9b19fc0ba1e8429b0c46cb7b880a0df251989c7862969c23 SHA512 7770bc4eafb00e6ca4cef38cbaeab021ecb90bc7c3d8fdfb98c2c9b07a74d2e95227701a73c85a166e689387e44e37da67f765b7e427bb150e26c22eb3abd86e WHIRLPOOL 8b968417ad1455293f0d3ebff82fd930bba816d07c5b98a336ab0299dd01eb291e1722068609d39e966fa2f610ce9209f9a56ff1a510c6072451da45ea1d0b2f
+AUX 0.3-send-sync-event.patch 1031 SHA256 ff9aab4179d44708bb77b3b8be4939c3559e724b90fef8c688c5c9d0e996f095 SHA512 d73ed855535f093d3fbbbee368b3bd6a6ea66bf6ba347321468ab2990dc94efdb4b7b1c655a6501872304b2e7e9b07a2a8f32ae9e354c41bbccf6973bb0d9953 WHIRLPOOL 517f596513ed36445bc2a3e4a485b60fbc78edcd7451b91350b282b864da9d6ce7dfae904e79a1b170cbf4dcf16647dcb8a12e4f93bdecbfe8457f7f4cf9ac57
+AUX 0.3-strip-strip.patch 1375 SHA256 c125aa32ade799c9ef582dc67273b686f160721f84c9bdb05abfc399462aaa1c SHA512 85572023761a8f6ad1a7355062f308267bea10ce529e1e01268f14f3d81023e1a1d94b92833741a2132f448ef074cbeb9bfc7a9a29786f2eaaa7c17989315214 WHIRLPOOL 87eab357b54bba63edc6a5bb10685bc0cfab7054a34d391562446ebc6cd6e58e56853025038668f5d7648126a30f451263945f0e367b4ab459f182ed47185175
+AUX 0.3-tftoolgroup.patch 1708 SHA256 d48da4d150986c21bb1b9c2b0f43dce9814ef0e8a1044f29805ca393721e4bd3 SHA512 cf4d73bd3fa29b029074b4a529426f7822eeb356b4ee5d7ac503a55fb27e891c63ccd44a0e155b1ab0ec3b2c32ca23378648f9514653861761ed75ca797aeb9a WHIRLPOOL 1f41745539a6e628d0daa0319e4353705e63138b7469a5ad696634c63d46575a91a0cc2c60ae27d54f500c717edef782769cb77b701d8bc6a71ea8208f2934b4
+AUX 60-thinkfinger.rules 251 SHA256 e7d1c3f56b052b4bc50f1bf245bff5b32067f869c9c1859828dae2ae2ae612c9 SHA512 076aa2c09498681952d92268f6b87137f6a7856447dfb00bdde36408fd54cdd1856566424595815068981df44c36592e26e2d61e2f220d8311373f1149b6ab4a WHIRLPOOL 0c2070ac89bb28cf49fbf2da3c4c6bebd81ea5d4a2118e1df7081cfb9bec694e0dc349a4413bd59212d6919a697a0eec5ca3d4982d0b9ebaea191c4ee437be9a
+DIST thinkfinger-0.3.tar.gz 372053 SHA256 9741ae205aadc9f576be73c382596266300e709371e72574a86e339ebf978f4b SHA512 08bbefd906047dd128c9a3d5eef4b14332e51383d9c0667974ffe7f85ccab2561310f58adfa0cfe8a65154e621a607542f6e99df9be3f21ced394bc7993db4ff WHIRLPOOL 3911ab0ef7d75004229b9c5b2c7a33253d017105c273c6fddf318a6de4e109bf83bb45533d42b5820669d8168bc58fdaaa7201aceb92c5ec6aa2427a65987ef0
+EBUILD thinkfinger-0.3-r3.ebuild 2032 SHA256 b56de65fa1c9737cf5f701f215d3e1eba3cf8fb87fa395471e1d2e5b24fdb3df SHA512 db039efeecf66ac460f5f4903196b4853dfa1df168da5d6ced830a0a4b8173aa076bc22027a64de490cd161b46a40b3631f32d20665a18ca5429f98e709d3a2e WHIRLPOOL 59561424899c669465daaa48e32c78d60eb58b35975b28246dde5b0513abaeabbc8b1a2d6bcb9f5dd24e1f86ce1da53e706346be25aceaddcd70ffe41bd1b120
+MISC ChangeLog 3044 SHA256 946de3d6a482d8e7a40ffdff5c16f80161bfd326d83ac64291726bfdd11595da SHA512 c2db8493340f9e7a3ef682e2059a41bb7d4cf042c04136f31d077131b94225f11de3fda133935a3b5b712244c24bad62f909546b093660f9d169c32c3398200a WHIRLPOOL 5d0014da33e60d7be95f084f965f911f5f5d7d5922111c387d952e96acc93c9ba3254a0b33cf96cc55b14406fabac168266c4867b102c816c5236fbac7cbcc3a
+MISC ChangeLog-2015 3889 SHA256 8deae1ef9a6ef4989e4b19d04fef8041ca5486f064fe5b59bd524fe3b9296b75 SHA512 8b4c2be89661ddd1964696981df56d29cfccea77422e6a06b08c949fbd2f5ce0496eee79dcecc768447c8b3faf30423e55671b5c4ece6dbd5c9cc60040db3da5 WHIRLPOOL 0ebf08dfdb069394190ed5ba7fef16d0769bbaf0048ffb3ecc1c0513ac6b0b6f7af8bfdabd3b1174f096482d91641a23bcb031afda08ffd3196333843652fca1
+MISC metadata.xml 600 SHA256 4c3c65b70389dcb8d2a5ff56885ee95b907d0047aba44bd00e251f0612b4be85 SHA512 612c8cf26597a4ad78644d20f3feed7ff7f1770c3a62650669892551ceed8e97d0cf2db432ca127e3986c6b6c614070f3b94ce76a6d00360e29d2bbbf6d3deeb WHIRLPOOL 1c5ef62c470c3a145e8003e1ca9b8a431a174d9bb574ac29e44f369f8339b1457cdbc023e2d9210e7534c8bd0e952ba0c85655a087632b905f50aa92e3a716f7
diff --git a/sys-auth/thinkfinger/files/0.3-carriagereturn.patch b/sys-auth/thinkfinger/files/0.3-carriagereturn.patch
new file mode 100644
index 000000000000..731f1531947b
--- /dev/null
+++ b/sys-auth/thinkfinger/files/0.3-carriagereturn.patch
@@ -0,0 +1,10 @@
+--- pam/pam_thinkfinger-uinput.c 2007-02-27 17:52:50.000000000 +0100
++++ pam/pam_thinkfinger-uinput.c 2009-02-17 13:56:02.013033249 +0100
+@@ -95,6 +95,7 @@
+ /* our single key keyboard */
+ i = ioctl (*fd, UI_SET_EVBIT, EV_KEY) < 0;
+ i |= ioctl (*fd, UI_SET_KEYBIT, KEY_ENTER) < 0;
++ i |= ioctl (*fd, UI_SET_KEYBIT, KEY_A) < 0;
+
+ if (write (*fd, &device, device_size) != device_size) {
+ retval = errno;
diff --git a/sys-auth/thinkfinger/files/0.3-direct_set_config_usb_hello.patch b/sys-auth/thinkfinger/files/0.3-direct_set_config_usb_hello.patch
new file mode 100644
index 000000000000..06723ad1306c
--- /dev/null
+++ b/sys-auth/thinkfinger/files/0.3-direct_set_config_usb_hello.patch
@@ -0,0 +1,31 @@
+Index: libthinkfinger/libthinkfinger.c
+===================================================================
+--- libthinkfinger/libthinkfinger.c (revision 118)
++++ libthinkfinger/libthinkfinger.c (working copy)
+@@ -265,18 +265,7 @@
+ int retval = -1;
+ char dummy[] = "\x10";
+
+- /* SET_CONFIGURATION 1 -- should not be relevant */
+ retval = usb_control_msg (handle, // usb_dev_handle *dev
+- 0x00000000, // int requesttype
+- 0x00000009, // int request
+- 0x001, // int value
+- 0x000, // int index
+- dummy, // char *bytes
+- 0x00000000, // int size
+- USB_TIMEOUT); // int timeout
+- if (retval < 0)
+- goto out;
+- retval = usb_control_msg (handle, // usb_dev_handle *dev
+ 0x00000040, // int requesttype
+ 0x0000000c, // int request
+ 0x100, // int value
+@@ -285,7 +274,6 @@
+ 0x00000001, // int size
+ USB_TIMEOUT); // int timeout
+
+-out:
+ return retval;
+ }
+
diff --git a/sys-auth/thinkfinger/files/0.3-send-sync-event.patch b/sys-auth/thinkfinger/files/0.3-send-sync-event.patch
new file mode 100644
index 000000000000..39e0edb27ba1
--- /dev/null
+++ b/sys-auth/thinkfinger/files/0.3-send-sync-event.patch
@@ -0,0 +1,50 @@
+--- pam/pam_thinkfinger-uinput.c 2009-12-27 18:42:26.000000000 +0100
++++ pam/pam_thinkfinger-uinput.c 2009-12-27 18:41:55.000000000 +0100
+@@ -34,27 +34,40 @@
+ int uinput_cr (int *fd)
+ {
+ int retval = 0, ev_size = 0;
+- struct input_event ev = {
++ struct input_event key_ev = {
+ .type = EV_KEY,
+ .code = KEY_ENTER,
+ .time = {0, }
+ };
+
+- ev_size = sizeof (ev);
++ ev_size = sizeof (key_ev);
+
+ /* key press */
+- ev.value = 1;
+- if (write (*fd, &ev, ev_size) != ev_size) {
++ key_ev.value = 1;
++ if (write (*fd, &key_ev, ev_size) != ev_size) {
+ retval = errno;
+ goto out;
+ }
+ /* key release */
+- ev.value = 0;
+- if (write (*fd, &ev, ev_size) != ev_size) {
++ key_ev.value = 0;
++ if (write (*fd, &key_ev, ev_size) != ev_size) {
+ retval = errno;
+ goto out;
+ }
+-
++
++ /* syn event */
++ struct input_event syn_ev = {
++ .time = {0, },
++ .type = EV_SYN,
++ .code = SYN_REPORT,
++ .value = 0
++ };
++
++ if (write (*fd, &syn_ev, ev_size) != ev_size) {
++ retval = errno;
++ goto out;
++ }
++
+ out:
+ return retval;
+ }
diff --git a/sys-auth/thinkfinger/files/0.3-strip-strip.patch b/sys-auth/thinkfinger/files/0.3-strip-strip.patch
new file mode 100644
index 000000000000..1339baf63a00
--- /dev/null
+++ b/sys-auth/thinkfinger/files/0.3-strip-strip.patch
@@ -0,0 +1,24 @@
+Strip is handled by the package manager.
+
+--- a/pam/Makefile.am
++++ b/pam/Makefile.am
+@@ -8,7 +8,7 @@ pam_thinkfinger_so_SOURCES = pam_thinkfinger-compat.c pam_thinkfinger-compat.h p
+ else
+ pam_thinkfinger_so_SOURCES = pam_thinkfinger-uinput.c pam_thinkfinger-uinput.h pam_thinkfinger.c
+ endif
+-pam_thinkfinger_so_LDFLAGS = -shared --strip-all -Wl,-soname,pam_thinkfinger.so -Wl,--as-needed
++pam_thinkfinger_so_LDFLAGS = -shared -Wl,-soname,pam_thinkfinger.so -Wl,--as-needed
+ pam_thinkfinger_so_CFLAGS = $(CFLAGS)
+ pam_thinkfinger_so_LDADD = $(top_builddir)/libthinkfinger/libthinkfinger.la $(PAM_LIBS) $(PTHREAD_LIBS)
+
+--- a/pam/Makefile.in
++++ b/pam/Makefile.in
+@@ -201,7 +201,7 @@ pamdir = $(SECUREDIR)
+ INCLUDES = -I$(top_srcdir)/libthinkfinger
+ @HAVE_OLD_PAM_FALSE@pam_thinkfinger_so_SOURCES = pam_thinkfinger-uinput.c pam_thinkfinger-uinput.h pam_thinkfinger.c
+ @HAVE_OLD_PAM_TRUE@pam_thinkfinger_so_SOURCES = pam_thinkfinger-compat.c pam_thinkfinger-compat.h pam_thinkfinger-uinput.c pam_thinkfinger-uinput.h pam_thinkfinger.c
+-pam_thinkfinger_so_LDFLAGS = -shared --strip-all -Wl,-soname,pam_thinkfinger.so -Wl,--as-needed
++pam_thinkfinger_so_LDFLAGS = -shared -Wl,-soname,pam_thinkfinger.so -Wl,--as-needed
+ pam_thinkfinger_so_CFLAGS = $(CFLAGS)
+ pam_thinkfinger_so_LDADD = $(top_builddir)/libthinkfinger/libthinkfinger.la $(PAM_LIBS) $(PTHREAD_LIBS)
+ all: all-am
diff --git a/sys-auth/thinkfinger/files/0.3-tftoolgroup.patch b/sys-auth/thinkfinger/files/0.3-tftoolgroup.patch
new file mode 100644
index 000000000000..169b7cefe286
--- /dev/null
+++ b/sys-auth/thinkfinger/files/0.3-tftoolgroup.patch
@@ -0,0 +1,64 @@
+--- tf-tool/tf-tool.c 2007-03-30 11:00:45.000000000 +0200
++++ tf-tool/tf-tool.c 2009-02-18 14:57:24.316197097 +0100
+@@ -26,6 +26,9 @@
+ #include <errno.h>
+ #include <libgen.h>
+ #include <pwd.h>
++#include <grp.h>
++#include <sys/stat.h>
++#include <unistd.h>
+
+ #include <config.h>
+ #include <libthinkfinger.h>
+@@ -54,6 +57,21 @@
+ int swipe_failed;
+ } s_tfdata;
+
++int changegroup(const char *groupname,const char *filename)
++{
++ struct group *g;
++ g = getgrnam(groupname);
++ if(g == NULL) {
++ perror("getgrnam:");
++ return 1;
++ }
++ if( chown(filename,-1,g->gr_gid) == -1) {
++ perror("chown: ");
++ return 1;
++ }
++ return 0;
++}
++
+ static void print_status (int swipe_success, int swiped_required, int swipe_failed)
+ {
+ printf ("\rPlease swipe your finger (successful swipes %i/%i, failed swipes: %i)...",
+@@ -64,6 +82,8 @@
+ static void callback (libthinkfinger_state state, void *data)
+ {
+ char *str;
++ int err;
++ gid_t gfp;
+ s_tfdata *tfdata = (s_tfdata *) data;
+
+ if (tfdata->verbose == true) {
+@@ -108,8 +128,18 @@
+ case TF_STATE_ENROLL_SUCCESS:
+ print_status (tfdata->swipe_success, 3, tfdata->swipe_failed);
+ printf (" done.\nStoring data (%s)...", tfdata->bir);
+- fflush (stdout);
+- break;
++ /*small hack to change group and chmod 640 on created bir file*/
++ err = chmod(tfdata->bir, S_IRUSR | S_IWUSR | S_IRGRP);
++ if(err == -1) {
++ printf("Couldn't change perms on file %s\n",tfdata->bir);
++ perror("chmod:");
++ fflush(stdout);
++ break;
++ }
++ changegroup("fingerprint",tfdata->bir);
++ fflush(stdout);
++ break;
++ /*done*/
+ case TF_STATE_SWIPE_FAILED:
+ print_status (tfdata->swipe_success, 3, ++tfdata->swipe_failed);
+ break;
diff --git a/sys-auth/thinkfinger/files/60-thinkfinger.rules b/sys-auth/thinkfinger/files/60-thinkfinger.rules
new file mode 100644
index 000000000000..1ccc394d49ff
--- /dev/null
+++ b/sys-auth/thinkfinger/files/60-thinkfinger.rules
@@ -0,0 +1,5 @@
+# SGS Thomson Microelectronics Fingerprint Reader
+ATTRS{idVendor}=="0483", ATTRS{idProduct}=="2016", SYMLINK+="input/thinkfinger-%k", MODE="0660", GROUP="fingerprint"
+
+# the also-needed uinput device
+KERNEL=="uinput", MODE="0660", GROUP="fingerprint"
diff --git a/sys-auth/thinkfinger/metadata.xml b/sys-auth/thinkfinger/metadata.xml
new file mode 100644
index 000000000000..b61739fdd921
--- /dev/null
+++ b/sys-auth/thinkfinger/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>victor.quicksilver@gmail.com</email>
+ <name>Víctor Enríquez Miguel</name>
+</maintainer>
+<maintainer type="person">
+ <email>xmw@gentoo.org</email>
+ <name>Michael Weber</name>
+ <description>Proxy Maintainer</description>
+</maintainer>
+<maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+</maintainer>
+<upstream>
+ <remote-id type="sourceforge">ThinkFinger</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/sys-auth/thinkfinger/thinkfinger-0.3-r3.ebuild b/sys-auth/thinkfinger/thinkfinger-0.3-r3.ebuild
new file mode 100644
index 000000000000..ce297a26fdbe
--- /dev/null
+++ b/sys-auth/thinkfinger/thinkfinger-0.3-r3.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+
+inherit autotools-utils user linux-info pam
+
+DESCRIPTION="Support for the UPEK/SGS Thomson Microelectronics fingerprint reader, often seen in Thinkpads"
+HOMEPAGE="http://thinkfinger.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug pam static-libs"
+
+RDEPEND="virtual/libusb:0
+ pam? ( virtual/pam )"
+DEPEND="${RDEPEND}
+ sys-devel/libtool
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PV}-direct_set_config_usb_hello.patch
+ "${FILESDIR}"/${PV}-carriagereturn.patch
+ "${FILESDIR}"/${PV}-send-sync-event.patch
+ "${FILESDIR}"/${PV}-tftoolgroup.patch
+ "${FILESDIR}"/${PV}-strip-strip.patch
+)
+
+pkg_setup() {
+ if use pam ; then
+ CONFIG_CHECK="~INPUT_UINPUT"
+ ERROR_CFG="Your kernel needs uinput for the pam module to work"
+ check_extra_config
+ fi
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable pam) \
+ $(use_enable debug usb-debug) \
+ "--with-securedir=$(getpam_mod_dir)"
+ )
+ autotools-utils_src_configure
+}
+
+src_install() {
+ DOCS=( AUTHORS ChangeLog NEWS README )
+ autotools-utils_src_install
+
+ keepdir /etc/pam_thinkfinger
+ insinto /lib/udev/rules.d
+ doins "${FILESDIR}"/60-thinkfinger.rules
+}
+
+pkg_preinst() {
+ enewgroup fingerprint
+}
+
+pkg_postinst() {
+ fowners root:fingerprint /etc/pam_thinkfinger
+ fperms 710 /etc/pam_thinkfinger
+ elog "Use tf-tool --acquire to take a finger print"
+ elog "tf-tool will write the finger print file to /tmp/test.bir"
+ elog ""
+ if use pam ; then
+ elog "To add a fingerprint to PAM, use tf-tool --add-user USERNAME"
+ elog ""
+ elog "Add the following to /etc/pam.d/system-auth after pam_env.so"
+ elog "auth sufficient pam_thinkfinger.so"
+ elog ""
+ elog "Your system-auth should look similar to:"
+ elog "auth required pam_env.so"
+ elog "auth sufficient pam_thinkfinger.so"
+ elog "auth sufficient pam_unix.so try_first_pass likeauth nullok"
+ elog ""
+ fi
+}
diff --git a/sys-auth/ykclient/Manifest b/sys-auth/ykclient/Manifest
new file mode 100644
index 000000000000..302ff4ce84b9
--- /dev/null
+++ b/sys-auth/ykclient/Manifest
@@ -0,0 +1,7 @@
+DIST ykclient-2.14.tar.gz 386915 SHA256 bd7ddaa1d88ec7be323738cabdf58ff99cb6d6cd3fe937c69b52fa9b3764d362 SHA512 743249f52eed1b07a5e582b644b4819e1defcd18a4c2d812b7738cb161e3152e2a49fba54fbf0fe3dfcda9f8477536660b9d2b0bb5c2eb84b106d435c91efe8d WHIRLPOOL 74ab719cfb0af413f7c226f3e0b1f6026f174213f86a9f8599e084d29fbe2ca237b7dd0f927a83c94efbcd1fdd0a687ac708c466e27adc1a61ecfefe7ba4e188
+DIST ykclient-2.15.tar.gz 388738 SHA256 f461cdefe7955d58bbd09d0eb7a15b36cb3576b88adbd68008f40ea978ea5016 SHA512 a6e00309330225c681702616aa9f5d7e042f33a22ebe7719c2d71276f1a660ed0dc180d7f50c24b1c65d7bba6e2f2285d03037d504e926ac75506c24e6826279 WHIRLPOOL 91ca4a1179be8be14178e43ad4767c8b7c911bbca67d9fbdfdf1ce80024f18b2760af4712578a0e0ca620255c4553a1a39e7fc44ce649b507091eb2742702110
+EBUILD ykclient-2.14.ebuild 519 SHA256 c16fa7f50060cd7a221bfb0ced1f893a98d9753e310a5b8ce55dcd472c563456 SHA512 94226ed6f721788db1c7c7eaf28912c95666697d4b8350e47c005a64d4175a245d331776d20606c5d5416fc71b9dfe0c04640ad2ff16afadf54aec64cfc1c8ce WHIRLPOOL 849529edefaa18b557c472200d7805748ad6670134632a1a3d66201dbe022e9bee4bd9e1823d0271bf1c5526ac2412b50d8895c29ae9bdf03d2e6297121acd49
+EBUILD ykclient-2.15.ebuild 494 SHA256 b53a828a7e9f63503f4f99235756bf1b3d06e02b7a18ffd1ba12fb9db8c3ee84 SHA512 5f5a3fe705a77caf1f42f3960eedd93baf8786ffb130b969cb77d5eb93712af0245d3d9b4c8864e62e0128142494be56904d429fe4f3f32362bdc2f6229ff4af WHIRLPOOL e7bf4fc7969e58027c077133f064d27cda0f307f913243b83db1d11f478dac7a3d37a6c6c53aa761ff17496db9ee602fda3c7e97ba4b114134119adce3db3ef4
+MISC ChangeLog 3019 SHA256 0bd0a92f719166cc440added03ae5ae232f85cbe7894c55e01b4996b6d3e703f SHA512 822e111cbcaf534b3700ef3ead4a684b019da8180801159c0a93157b3e99a7dcbe3b23fbb0db5843c82b7dabfdc782498567004088981837cc52604ffe538463 WHIRLPOOL 8dadfd6e3a504018903a815c2df231e639361275f9c3d5bdf9a14452d0773225066c3476a184860d3749281f106c1f3957792016789bf1d12d057cf9336c0bbd
+MISC ChangeLog-2015 1605 SHA256 fa73b5218b83462aace7ed71aa1e1d79deb2ceca1767dbb14bd2a2479754e7e5 SHA512 7fa033d1b51abcb8aaf6f5bdc217fec7be2eb948755c35c5530e1a349736f9d60e270c55b9353baca638bdf12857064c781f53e11066d9f9f90cce09b9199711 WHIRLPOOL 5991785797de1e3ce43bf21127ec6e4d4524abf573129f81ef109dc61175a1a8190895a7539c2dc3b3d0248c345a5c53552c0f29397b7ed54325cabf330e9143
+MISC metadata.xml 321 SHA256 f3718570721ba1a1f3b4f57385ecfa0e87ab94db0272cc4ce70ed58b9e4490b1 SHA512 a19889c9f91a995a6c1f4c753481271de980fb1d3b7653ea4160f1b4eb3443d2260e3ddd223b05b508b6dfa607f86a4d0412b666a6915fffcd2bd07e954a2870 WHIRLPOOL c3aceb55e2d0fbd177e2686b465893a6f3b168f80d67ee0a35c2f2cb82a07f1d4b9e17e053a8befc279253f96a04b822bc8ee60dadd901f9eecac98a435b558b
diff --git a/sys-auth/ykclient/metadata.xml b/sys-auth/ykclient/metadata.xml
new file mode 100644
index 000000000000..30473973d7bf
--- /dev/null
+++ b/sys-auth/ykclient/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="google-code">yubico-c-client</remote-id>
+ <remote-id type="github">Yubico/yubico-c-client</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/ykclient/ykclient-2.14.ebuild b/sys-auth/ykclient/ykclient-2.14.ebuild
new file mode 100644
index 000000000000..fb692e4fa79d
--- /dev/null
+++ b/sys-auth/ykclient/ykclient-2.14.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit autotools-utils
+
+DESCRIPTION="Yubico C client library"
+SRC_URI="http://opensource.yubico.com/yubico-c-client/releases/${P}.tar.gz"
+HOMEPAGE="https://github.com/Yubico/yubico-c-client"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+LICENSE="BSD-2"
+IUSE="static-libs"
+
+RDEPEND=">=net-misc/curl-7.21.1"
+DEPEND="${RDEPEND}"
+
+# Tests require an active network connection, we don't want to run them
+RESTRICT="test"
diff --git a/sys-auth/ykclient/ykclient-2.15.ebuild b/sys-auth/ykclient/ykclient-2.15.ebuild
new file mode 100644
index 000000000000..cec75e52208d
--- /dev/null
+++ b/sys-auth/ykclient/ykclient-2.15.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DESCRIPTION="Yubico C client library"
+SRC_URI="http://opensource.yubico.com/yubico-c-client/releases/${P}.tar.gz"
+HOMEPAGE="https://github.com/Yubico/yubico-c-client"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+LICENSE="BSD-2"
+IUSE="static-libs"
+
+RDEPEND=">=net-misc/curl-7.21.1"
+DEPEND="${RDEPEND}"
+
+# Tests require an active network connection, we don't want to run them
+RESTRICT="test"
diff --git a/sys-auth/ykneo-ccid-tools/Manifest b/sys-auth/ykneo-ccid-tools/Manifest
new file mode 100644
index 000000000000..64bb1cb366b5
--- /dev/null
+++ b/sys-auth/ykneo-ccid-tools/Manifest
@@ -0,0 +1,6 @@
+AUX ykneo-ccid-tools-0.0.0-string.patch 370 SHA256 cd2c12401d930e6997ad106e171649d7be6884a23e761aecfae902dd13d21fc7 SHA512 208f63e0acbbcf88d67aba6c79e2b17b266d1450b3518e6043b6c3a56811282c70d30c27dcd00cc7190d61591e6ca53bffe15d54bc4d9152ce1f7a2ade9d076b WHIRLPOOL e6da859729180571a9d09305713cf853de48714db046e8e680cdf01ff157b93e694bc485a7064764a9621ba8a06b2e2b2dc5183e17e123fe0e2e33d09fd64864
+DIST ykneo-ccid-tools-0.0.0.tar.gz 298831 SHA256 8f2419471f3ef3acd88cacc387bf9ff68572a3604da1a29c46383fc027d066e3 SHA512 735fbdee9e307b8fa1304b5ebc1fc490807e3b4cd67b62c4faa100fe9ac2915b8c1c979820078e0035ddb9d304460c7bae601ad89f358101faae2f13d066d864 WHIRLPOOL ed59d69b518794261283532473d398dafc6b09e2a2803e2068c269168c8fd9ffd29e9c3188562fb2eb688e9a8bb4caf68f70ad84fdc64903689a92ae1f84001a
+EBUILD ykneo-ccid-tools-0.0.0.ebuild 556 SHA256 d183150bbd49ee9885b9f4c36afe211557148934da1e2b31ec3864c5092f370e SHA512 3ae38112048a75fa2c40a7aef85e6e1939ad6b3bebb8305e6eaa26add7812fd175ec4b161f23fb30a90eadf61e228fa4ee275fd8767ffd4d3cd7391b2a4a0102 WHIRLPOOL 3ae71a021644dc6b070c18728a03c0b8cdad4d9532e86923485f1e5dd5ec57ae558dbaaec7bdfb3cfa29afa06a56ff8afbf0022a05e68d3e927cc367ad3f6a58
+MISC ChangeLog 2249 SHA256 cfe1113eca768e071cda977158cbb04e10b27608e8dca827e13e2e97f28c87eb SHA512 f0ad3a25bdc3944b67aefb21b1e88467a5db8a44ec530357a38f2f20bc59e851b8323aeeb216ac89e50e6293dbf36994e6a83747de86c664628d83bb18b6d921 WHIRLPOOL 30cdc9c79008572068c2e6d37431c61cc28c271e77fa0064846966ad1fe66b99225803c31bbea1cce51440b809b467d26926af15f3240ff0e6c1535b70c1342d
+MISC ChangeLog-2015 534 SHA256 295f921f33b6b54a976a40e6e519b05aad14c26aa198689657f176e46ed62f97 SHA512 6939033082453afbd1c455c3d28e2c1fbaeca67377ce4c8ab9889cc194659ed1ac1a0eddce9fa8992f329acbc2533fb8df62925f36f8418dcd2f5725fd950d81 WHIRLPOOL 248e9101ba5a2565e93ee5d80761278435733cbb917379c3fb0e6175363617d00538b89f9e0532e842cd6df5ce928eb49161777d420df56546e1ca75734aae12
+MISC metadata.xml 397 SHA256 71031f21c8379918f2c8f62a814cc96703b3c4f44e72b294b16bb7ac12857dd4 SHA512 f2e30bfdb825bcc096ffdda9dcc2a022f457456f68e047d41340b971f2fe57f340887befed8fd8237c38d43995936808bf796df56e306c99a798ae82512046f6 WHIRLPOOL e64e53bdeeb11f36a96a57adb0dceb7ada77068c5da607596982a33a3353a226d85d20551ea19133f59d385587275e9a1fc2fe4f7fc7a9ba86e80d8bc70941be
diff --git a/sys-auth/ykneo-ccid-tools/files/ykneo-ccid-tools-0.0.0-string.patch b/sys-auth/ykneo-ccid-tools/files/ykneo-ccid-tools-0.0.0-string.patch
new file mode 100644
index 000000000000..7a4b70b82f82
--- /dev/null
+++ b/sys-auth/ykneo-ccid-tools/files/ykneo-ccid-tools-0.0.0-string.patch
@@ -0,0 +1,11 @@
+diff -urN ykneo-ccid-tools-0.0.0.orig/NEO_Config.c ykneo-ccid-tools-0.0.0/NEO_Config.c
+--- ykneo-ccid-tools-0.0.0.orig/NEO_Config.c 2012-12-20 21:30:44.000000000 +0100
++++ ykneo-ccid-tools-0.0.0/NEO_Config.c 2013-08-12 16:40:18.109041000 +0200
+@@ -9,6 +9,7 @@
+
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <string.h>
+ #include <neo_if.h>
+
+ #pragma pack(push, 1)
diff --git a/sys-auth/ykneo-ccid-tools/metadata.xml b/sys-auth/ykneo-ccid-tools/metadata.xml
new file mode 100644
index 000000000000..92242fc23b80
--- /dev/null
+++ b/sys-auth/ykneo-ccid-tools/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>wschlich@gentoo.org</email>
+ <name>Wolfram Schlich</name>
+ <description>Primary mainainer</description>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Yubico/ykneo-ccid-tools</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/ykneo-ccid-tools/ykneo-ccid-tools-0.0.0.ebuild b/sys-auth/ykneo-ccid-tools/ykneo-ccid-tools-0.0.0.ebuild
new file mode 100644
index 000000000000..08d2001b65e5
--- /dev/null
+++ b/sys-auth/ykneo-ccid-tools/ykneo-ccid-tools-0.0.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils udev
+
+DESCRIPTION="Tools for Yubico's YubiKey NEO in CCID mode"
+SRC_URI="http://yubico.github.io/ykneo-ccid-tools/releases/${P}.tar.gz"
+HOMEPAGE="https://github.com/Yubico/ykneo-ccid-tools"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+LICENSE="BSD-2"
+IUSE=""
+
+RDEPEND="sys-apps/pcsc-lite"
+DEPEND="${RDEPEND}
+ sys-apps/help2man
+ dev-util/gengetopt"
+
+DOCS=( AUTHORS NEWS README )
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-string.patch"
+}
diff --git a/sys-auth/ykpers/Manifest b/sys-auth/ykpers/Manifest
new file mode 100644
index 000000000000..8062c2ade5cb
--- /dev/null
+++ b/sys-auth/ykpers/Manifest
@@ -0,0 +1,5 @@
+DIST ykpers-1.18.0.tar.gz 124932 SHA256 7cf5fa315132e4473caca509d3a0768ed490938d1068e8aa46be200fc751eff5 SHA512 d636fcabf94a3fb48841572b7b0f03a12a3b3243b11ed7377654d01c33c7282dc321ee13b13c1ee3f2a49fc5015e326a96ef5bc1594b8592d07c1e5aa0521d20 WHIRLPOOL 187ca974593d71043e673acd242b8af18a4c92e9b93d18f4048f4ac8d61637b871f3c9db0f0868291ad66a0d0062ca6039dc0cc6bc4d2ac929617d08c4afb648
+EBUILD ykpers-1.18.0.ebuild 939 SHA256 8a22c6cf4f8e6880c8491b60a431992706c5dcce0a4abf5614177238a4e6dce2 SHA512 76fc32d10f703bcbcff7ed285ea30960845670dca330ddbcd0f3151c4f316a3c55de772b9e9ec4923099eda3a961b78c2cf3deef4610680a478bb7772a9bbe08 WHIRLPOOL 537bb38ef74b369caa2651605b9fe058121935fdfeb512a9c39c49eecbcc5f175e5d1faf5f162b5477df628bf1ee83c685f61a03388a12ece0cd553e403d0d68
+MISC ChangeLog 3047 SHA256 7229bc7f9812d23e6c0b0cb496586e2e8a52ed0e2f49b7868f1bf3e3d41fdf80 SHA512 2ceec08bc068316fc08a2681d1b724edf5d740099474e3ba930083e6d1d3e7eb5a3057813f9dbe981325ae69c7a3dc7563604136f307fccb0c2cfa35f4ad4835 WHIRLPOOL 3df26bcd362b050c8d3b74ff5fdeacaef7535ccfae43c2d3541bfe811956063845c46975756cbafd613f3d0109ad1a0f712bc8619513b54680c084cd95d3f22e
+MISC ChangeLog-2015 2810 SHA256 e866a84167d7924f4563d557753f73a8deacf027a04de6ac42c88a050ffa07b3 SHA512 b901ec12b3c5b0a7dc62e31af74803267ed955280015ca608756627d74c295c4ccd7cd29f0d159057b6854aa98e7a074360fbd6327d3f7623a16c3b5ccdacb8e WHIRLPOOL 90e061898f5811be142d77d4cc158df66b52061a4660e440a8a2a5f5b5c59330bdc3041055a60d0b00c98cacd0ea367811fdbc23fcea498a98a9b7019f84d59b
+MISC metadata.xml 632 SHA256 4b7bcf96636a14990b9506d5462b580f62c422ddbb846ae4159fad9fcb821f18 SHA512 1cb1ba38e29077530438a94c0a2c4e6724abc4b8e3f946466d141497495b6f316094c5f6d2313e260b163c979f65a777570de03a7630c2908a085ce5da34580b WHIRLPOOL aaa5e5bbf13a927cd63de8d93496753ab54c14498b607cc8dda52f941f91de91d50086dfca6667110f6fb842e3e1dbb277a58720852098a75e4ca3006344263b
diff --git a/sys-auth/ykpers/metadata.xml b/sys-auth/ykpers/metadata.xml
new file mode 100644
index 000000000000..46e7a0ccd48e
--- /dev/null
+++ b/sys-auth/ykpers/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gokturk@gentoo.org</email>
+ <name>Göktürk Yüksek</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Yubico/yubikey-personalization</remote-id>
+ <bugs-to>https://github.com/Yubico/yubikey-personalization/issues</bugs-to>
+ </upstream>
+ <use>
+ <flag name="consolekit">
+ Use <pkg>sys-auth/consolekit</pkg> and <pkg>virtual/udev</pkg>
+ to allow access to the YubiKey HID device to the console user.
+ </flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-auth/ykpers/ykpers-1.18.0.ebuild b/sys-auth/ykpers/ykpers-1.18.0.ebuild
new file mode 100644
index 000000000000..0ce22ce63b07
--- /dev/null
+++ b/sys-auth/ykpers/ykpers-1.18.0.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools udev
+
+DESCRIPTION="Library and tool for personalization of Yubico's YubiKey"
+SRC_URI="https://github.com/Yubico/yubikey-personalization/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="https://github.com/Yubico/yubikey-personalization"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+LICENSE="BSD-2"
+IUSE="static-libs consolekit"
+
+RDEPEND="
+ >=sys-auth/libyubikey-1.6
+ virtual/libusb:1"
+DEPEND="${RDEPEND}
+ app-text/asciidoc
+ virtual/pkgconfig"
+RDEPEND="${RDEPEND}
+ consolekit? ( sys-auth/consolekit[acl] )"
+
+S="${WORKDIR}/yubikey-personalization-${PV}"
+
+DOCS=( doc/. AUTHORS NEWS README )
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ --localstatedir=/var \
+ $(use_enable static-libs static)
+}
+
+src_install() {
+ default
+ use consolekit && udev_dorules *.rules
+}
diff --git a/sys-auth/yubico-piv-tool/Manifest b/sys-auth/yubico-piv-tool/Manifest
new file mode 100644
index 000000000000..aac804e186aa
--- /dev/null
+++ b/sys-auth/yubico-piv-tool/Manifest
@@ -0,0 +1,4 @@
+DIST yubico-piv-tool-1.4.3.tar.gz 108262 SHA256 e2e46681716cde14be84f68a8b455bde0a6bef2c1703fd043763050c4e65fe5f SHA512 86b2564fe96a8b4dbcf3f122316c4e258628c97bf6917953d93c6e0265df866c6b3ef5a6c7572177d26ef74265ef39db8e15348a08e6eb0be1e145978affd16b WHIRLPOOL 19ad5e09db318d72dca9c63af85e5b6e7a196c4fa6a591faed91702051284ede40f04d3ad7ee8eeff695a040c4cb2e5479f2620e4bcc0e3f67e2f47d58db0684
+EBUILD yubico-piv-tool-1.4.3.ebuild 637 SHA256 b06b800ef81ed6d0a4b3db10995e79157bdc0424c0e21da80d61a3702929abd0 SHA512 3fa86a7b7b48dbad6113da5cabdfdd21c53b5a3bcb8f11d32ae824f4344cbf7f53aa374e08728198ab33c7831f94ea73a382a586dedcf355bd99012017838d91 WHIRLPOOL 356be833297a70fd753ca37d91b7e558a4c8e613f80a341ed16eb34d3cc0ac8fcd5555d3517042f84aaf173e0470ecd899da1138c9114c43b892da442efde334
+MISC ChangeLog 382 SHA256 a9924c8e5982ce36e147dac93064ea107878a0a0cb70d500a654b3a4eed740c6 SHA512 190c036dc5bff8c1379d47d9d3cd262900286ffdfdd77bea3ef88afacaa844c0a2933d5156c2347cf4c915c14aed10860ec318cf3d52cd09567aa3244baf6bf6 WHIRLPOOL 961e65fb5dfaa9bb3c0a33af2e5a8fc2468da10eed8dc9b153f502bc6e4221a80983524419b1dbb2f38bd1849d913f60449576419064267f0bb384d6ccf29929
+MISC metadata.xml 332 SHA256 746d2e068aa1388e1d6f27f6759583753c02a49d8d90222b68efec3162d13314 SHA512 2c6a73a6db03b7f0f53973b61c2040e397271bee8c45cf672f4619643ff3f2a1927289cd0d6f91700c94ad23bc27808f358f57395aa3f45b53d7bf5825b0f824 WHIRLPOOL 1b4139c0a39c6827f5bf031f07edd7fbf3e54374a79365eb3a2431422565ac74272e10104f8af58b562429744d00c8b8439f3b2aa5f02d2e8cdc3b0907d423fe
diff --git a/sys-auth/yubico-piv-tool/metadata.xml b/sys-auth/yubico-piv-tool/metadata.xml
new file mode 100644
index 000000000000..1b855a968651
--- /dev/null
+++ b/sys-auth/yubico-piv-tool/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mrueg@gentoo.org</email>
+ <name>Manuel Rüger</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Yubico/yubico-piv-tool</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/yubico-piv-tool/yubico-piv-tool-1.4.3.ebuild b/sys-auth/yubico-piv-tool/yubico-piv-tool-1.4.3.ebuild
new file mode 100644
index 000000000000..9d5c1a2d8804
--- /dev/null
+++ b/sys-auth/yubico-piv-tool/yubico-piv-tool-1.4.3.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools
+
+DESCRIPTION="Command line tool for the YubiKey PIV application"
+SRC_URI="https://github.com/Yubico/yubico-piv-tool/archive/yubico-piv-tool-${PV}.tar.gz"
+HOMEPAGE="https://developers.yubico.com/yubico-piv-tool/ https://github.com/Yubico/yubico-piv-tool"
+
+LICENSE="BSD-2"
+SLOT="0/1"
+KEYWORDS="~amd64"
+IUSE=""
+
+RDEPEND="dev-libs/openssl:0=
+ sys-apps/pcsc-lite"
+DEPEND="dev-util/gengetopt
+ sys-apps/help2man
+ virtual/pkgconfig
+ ${RDEPEND}"
+
+S=${WORKDIR}/${PN}-${P}
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/sys-auth/yubikey-personalization-gui/Manifest b/sys-auth/yubikey-personalization-gui/Manifest
new file mode 100644
index 000000000000..e81f392246b0
--- /dev/null
+++ b/sys-auth/yubikey-personalization-gui/Manifest
@@ -0,0 +1,7 @@
+DIST yubikey-personalization-gui-3.1.23.tar.gz 1450340 SHA256 80747cca7c77c384f175b92ea360955c034dcff8f7552dae080ad2b70ff81897 SHA512 912bcbcac5cad285c43995f646de6aa68cc99a4d047b7632786cd93e38c031e2fb8dcc4f57f45647ba3e276de03aaea6ed9757f72ec2c42a43780c19edcca51b WHIRLPOOL fdc625fa4fd2a34a79c45209e274a1ddaf2934e3bf4301a790b8c1b22f4d8032f62362a31ed188025f8676d2b4f5c92270b8c0007045664af1c4d02b948ad696
+DIST yubikey-personalization-gui-3.1.24.tar.gz 947135 SHA256 98295f7ed7bda72e6f8f96351d69d41d55c09d9515f80b5efc7c722dd566482a SHA512 149237a719277a6571916473d31e6099c3f3a2003fcb2893c2becee80788102496dbbc8e424f75fe1f1dd3ac87122bd35b6908cf784458635069d89e7e706cfa WHIRLPOOL fa7610d74f2ee6a22ae622b93b11c300f327339cb47ab3c4624a1b8ac274f068a021102b29c7b3b131b8d03ff49a9630357bda8844f66d5cb636cabda55844c7
+EBUILD yubikey-personalization-gui-3.1.23.ebuild 962 SHA256 c82e5b5cc344f2c8e716917bb718b34b36a1ff434ce94b7b533d40f114601d5c SHA512 4fd6c55a5b145fc94db852da55d43c2f407bf5132f7a4b326831645138c8a6e61b37b5c76b648de540c279213e71b3048ec0464d0292e6e0c7ad487271340b84 WHIRLPOOL b5cfb5c74e37fd6ebc6a9e6c9fdee75f9cbd52381d9476816a205e13ae1356e67bdbd0398b8dc25322d594ff6d594d1f9163a08066f5fd73458cd20fd869a3fc
+EBUILD yubikey-personalization-gui-3.1.24.ebuild 962 SHA256 1d719d002f5a35d460054c14b827ea9e1c64c1c83efea2f3d44b2db9995ba3d2 SHA512 9b505329e8ff92e42cc9dfe11d9c90ce270442670dc131ef975d04288b438387ec9a1244e6fbc73b57f48c770e7955c1bd3947aa102d4f924c1518e8915c9059 WHIRLPOOL 0a53cb2d10a291b98897051ab8739865a34e9294d412dd7142b7f2ae7b4abb4d5f10484ceb407601859062002869760db8599d734c99ffba2ee9d287fb6331c0
+MISC ChangeLog 3182 SHA256 dadf721c3c353a805251fd4273ded5f2f8ba24ced3cb21bf7627adb503613f37 SHA512 2644203d77a67d957b6a1b13d42f20d3afdcdea11030037afe1bd4b29ac989546307be9c2466b2680c463e73a7ff6f08fbaf98c3e3f2e606329f7f8876b4ef83 WHIRLPOOL e389ff18f73d6a36f521802b46e5c7fdb9f41235cc2cb5a5b6d79f016504c26b29911071c3dff51b617899ef40bfd3ef2f30665d8ed4cc5180b59961a611a427
+MISC ChangeLog-2015 1623 SHA256 27ffb7430d08003996617a899dfa7fc1bbbeb4c760e880819c2e7772e6426610 SHA512 161320d1b6fd296f67e2e97820738437511ca717aba155d119de918bee66b46adf2de361c1fc2ea9f1cbdab916c91d54361dc0064fb54060a0b18bc4dc378cda WHIRLPOOL 641324c57ab3a81761100c270eaead2f4968f4fe0fae371df95997a4a1db8e55a6b6a21a4a8dd68cef07e1816234a2cf9bc044f1f404d9f5dbeb7698452a3a03
+MISC metadata.xml 404 SHA256 3a8065434a3ecd1aabb9716daae83c41a6ae56cbea3a1d028ae20298f9bcbe41 SHA512 bbd668995dcf6b8e44b498dc152349ccc9c534047fd46e6364cce6ca0f0689e396064466c9f49cc170e832b8681f98f096f43bb5da423e1065cfd019da3c1b12 WHIRLPOOL 0406b972288997944578a29fc78fd99bead4e465cc6728683761f88b548f97d2eae265f9187496732b96333c9df813f997dbc6bfce5fca5b941e9fb5ee6a2a7b
diff --git a/sys-auth/yubikey-personalization-gui/metadata.xml b/sys-auth/yubikey-personalization-gui/metadata.xml
new file mode 100644
index 000000000000..4de9fcb71c15
--- /dev/null
+++ b/sys-auth/yubikey-personalization-gui/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>wschlich@gentoo.org</email>
+ <name>Wolfram Schlich</name>
+ <description>Primary mainainer</description>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Yubico/yubikey-personalization</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-auth/yubikey-personalization-gui/yubikey-personalization-gui-3.1.23.ebuild b/sys-auth/yubikey-personalization-gui/yubikey-personalization-gui-3.1.23.ebuild
new file mode 100644
index 000000000000..9f4e92b51485
--- /dev/null
+++ b/sys-auth/yubikey-personalization-gui/yubikey-personalization-gui-3.1.23.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils qmake-utils
+
+DESCRIPTION="GUI for personalization of Yubico's YubiKey"
+SRC_URI="http://yubico.github.io/yubikey-personalization-gui/releases/${P}.tar.gz"
+HOMEPAGE="https://github.com/Yubico/yubikey-personalization-gui"
+
+KEYWORDS="~amd64"
+SLOT="0"
+LICENSE="BSD-2"
+IUSE="debug"
+
+RDEPEND="
+ >=sys-auth/ykpers-1.14.0
+ >=sys-auth/libyubikey-1.6
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ dev-qt/qttest:4
+ dev-libs/glib:2
+ virtual/libusb:1"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+DOCS=( NEWS README )
+
+src_configure() {
+ eqmake4 YKPersonalization.pro
+}
+
+src_install() {
+ dobin build/release/yubikey-personalization-gui
+ doman resources/lin/yubikey-personalization-gui.1
+ domenu resources/lin/yubikey-personalization-gui.desktop
+ doicon resources/lin/yubikey-personalization-gui.xpm
+ doicon -s 128 resources/lin/yubikey-personalization-gui.png
+}
diff --git a/sys-auth/yubikey-personalization-gui/yubikey-personalization-gui-3.1.24.ebuild b/sys-auth/yubikey-personalization-gui/yubikey-personalization-gui-3.1.24.ebuild
new file mode 100644
index 000000000000..3e2afce422b9
--- /dev/null
+++ b/sys-auth/yubikey-personalization-gui/yubikey-personalization-gui-3.1.24.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils qmake-utils
+
+DESCRIPTION="GUI for personalization of Yubico's YubiKey"
+SRC_URI="http://yubico.github.io/yubikey-personalization-gui/releases/${P}.tar.gz"
+HOMEPAGE="https://github.com/Yubico/yubikey-personalization-gui"
+
+KEYWORDS="~amd64"
+SLOT="0"
+LICENSE="BSD-2"
+IUSE="debug"
+
+RDEPEND="
+ >=sys-auth/ykpers-1.14.0
+ >=sys-auth/libyubikey-1.6
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ dev-qt/qttest:4
+ dev-libs/glib:2
+ virtual/libusb:1"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+DOCS=( NEWS README )
+
+src_configure() {
+ eqmake4 YKPersonalization.pro
+}
+
+src_install() {
+ dobin build/release/yubikey-personalization-gui
+ doman resources/lin/yubikey-personalization-gui.1
+ domenu resources/lin/yubikey-personalization-gui.desktop
+ doicon resources/lin/yubikey-personalization-gui.xpm
+ doicon -s 128 resources/lin/yubikey-personalization-gui.png
+}