summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-crypt')
-rw-r--r--app-crypt/WiRouterKeyRec/Manifest1
-rw-r--r--app-crypt/WiRouterKeyRec/WiRouterKeyRec-1.1.2.ebuild41
-rw-r--r--app-crypt/WiRouterKeyRec/metadata.xml9
-rw-r--r--app-crypt/acr38u/Manifest1
-rw-r--r--app-crypt/acr38u/acr38u-1.7.11-r1.ebuild57
-rw-r--r--app-crypt/acr38u/acr38u-1.7.11-r3.ebuild44
-rw-r--r--app-crypt/acr38u/files/1.7.11-bis.rules15
-rw-r--r--app-crypt/acr38u/files/1.7.11.rules12
-rw-r--r--app-crypt/acr38u/files/acr38u-1.7.11-build.patch178
-rw-r--r--app-crypt/acr38u/metadata.xml14
-rw-r--r--app-crypt/aescrypt/Manifest1
-rw-r--r--app-crypt/aescrypt/aescrypt-3.0.6b.ebuild32
-rw-r--r--app-crypt/aescrypt/files/aescrypt-3.0.6b-build.patch62
-rw-r--r--app-crypt/aescrypt/files/aescrypt-3.0.6b-iconv.patch40
-rw-r--r--app-crypt/aescrypt/metadata.xml5
-rw-r--r--app-crypt/aespipe/Manifest2
-rw-r--r--app-crypt/aespipe/aespipe-2.3e.ebuild30
-rw-r--r--app-crypt/aespipe/aespipe-2.4c-r1.ebuild29
-rw-r--r--app-crypt/aespipe/metadata.xml10
-rw-r--r--app-crypt/aesutil/Manifest1
-rw-r--r--app-crypt/aesutil/aesutil-1.0.7.ebuild37
-rw-r--r--app-crypt/aesutil/metadata.xml5
-rw-r--r--app-crypt/af_alg/Manifest1
-rw-r--r--app-crypt/af_alg/af_alg-0_pre20120229.ebuild37
-rw-r--r--app-crypt/af_alg/metadata.xml17
-rw-r--r--app-crypt/asedriveiiie-serial/Manifest1
-rw-r--r--app-crypt/asedriveiiie-serial/asedriveiiie-serial-3.5.ebuild46
-rw-r--r--app-crypt/asedriveiiie-serial/metadata.xml5
-rw-r--r--app-crypt/asedriveiiie-usb/Manifest1
-rw-r--r--app-crypt/asedriveiiie-usb/asedriveiiie-usb-3.5.ebuild26
-rw-r--r--app-crypt/asedriveiiie-usb/metadata.xml5
-rw-r--r--app-crypt/asekey/Manifest1
-rw-r--r--app-crypt/asekey/asekey-3.7.ebuild36
-rw-r--r--app-crypt/asekey/files/asekey-3.7-bundle.patch24
-rw-r--r--app-crypt/asekey/metadata.xml5
-rw-r--r--app-crypt/bcrypt/Manifest1
-rw-r--r--app-crypt/bcrypt/bcrypt-1.1.ebuild33
-rw-r--r--app-crypt/bcrypt/files/bcrypt-1.1-Makefile.patch19
-rw-r--r--app-crypt/bcrypt/metadata.xml8
-rw-r--r--app-crypt/bcwipe/Manifest2
-rw-r--r--app-crypt/bcwipe/bcwipe-1.9.8.ebuild49
-rw-r--r--app-crypt/bcwipe/files/bcwipe-1.9.7-fix_warnings.patch20
-rw-r--r--app-crypt/bcwipe/files/bcwipe-1.9.8-fix-flags.patch11
-rw-r--r--app-crypt/bcwipe/metadata.xml5
-rw-r--r--app-crypt/bestcrypt/Manifest3
-rw-r--r--app-crypt/bestcrypt/bestcrypt-2.0.0.ebuild72
-rw-r--r--app-crypt/bestcrypt/bestcrypt-2.0.4.ebuild72
-rw-r--r--app-crypt/bestcrypt/bestcrypt-2.0.6.ebuild76
-rw-r--r--app-crypt/bestcrypt/files/bcrypt3104
-rw-r--r--app-crypt/bestcrypt/files/bestcrypt-2.0.0-build.patch59
-rw-r--r--app-crypt/bestcrypt/files/bestcrypt-2.0.4-build.patch108
-rw-r--r--app-crypt/bestcrypt/files/bestcrypt-2.0.6-build.patch341
-rw-r--r--app-crypt/bestcrypt/metadata.xml5
-rw-r--r--app-crypt/bsign/Manifest1
-rw-r--r--app-crypt/bsign/bsign-0.4.5-r1.ebuild34
-rw-r--r--app-crypt/bsign/bsign-0.4.5.ebuild35
-rw-r--r--app-crypt/bsign/files/bsign-0.4.5-build.patch31
-rw-r--r--app-crypt/bsign/files/bsign-0.4.5-non-gnu.patch42
-rw-r--r--app-crypt/bsign/files/bsign-0.4.5-scripts.patch48
-rw-r--r--app-crypt/bsign/metadata.xml13
-rw-r--r--app-crypt/cardpeek/Manifest3
-rw-r--r--app-crypt/cardpeek/cardpeek-0.7.1.ebuild24
-rw-r--r--app-crypt/cardpeek/cardpeek-0.7.2.ebuild24
-rw-r--r--app-crypt/cardpeek/cardpeek-0.8.2.ebuild25
-rw-r--r--app-crypt/cardpeek/metadata.xml5
-rw-r--r--app-crypt/ccid/Manifest2
-rw-r--r--app-crypt/ccid/ccid-1.4.15.ebuild49
-rw-r--r--app-crypt/ccid/ccid-1.4.18.ebuild49
-rw-r--r--app-crypt/ccid/files/92_pcscd_ccid-2.rules50
-rw-r--r--app-crypt/ccid/files/92_pcscd_ccid.rules50
-rw-r--r--app-crypt/ccid/metadata.xml8
-rw-r--r--app-crypt/ccrypt/Manifest2
-rw-r--r--app-crypt/ccrypt/ccrypt-1.10.ebuild21
-rw-r--r--app-crypt/ccrypt/ccrypt-1.9.ebuild21
-rw-r--r--app-crypt/ccrypt/metadata.xml5
-rw-r--r--app-crypt/chntpw/Manifest2
-rw-r--r--app-crypt/chntpw/chntpw-110511.ebuild47
-rw-r--r--app-crypt/chntpw/chntpw-140201.ebuild48
-rw-r--r--app-crypt/chntpw/metadata.xml5
-rw-r--r--app-crypt/ckpass/Manifest1
-rw-r--r--app-crypt/ckpass/ckpass-0.2.ebuild24
-rw-r--r--app-crypt/ckpass/files/ckpass-0.2-tinfo.patch10
-rw-r--r--app-crypt/ckpass/metadata.xml11
-rw-r--r--app-crypt/codecrypt/Manifest2
-rw-r--r--app-crypt/codecrypt/codecrypt-1.4.1.ebuild23
-rw-r--r--app-crypt/codecrypt/codecrypt-1.6.ebuild23
-rw-r--r--app-crypt/codecrypt/metadata.xml21
-rw-r--r--app-crypt/codegroup/Manifest1
-rw-r--r--app-crypt/codegroup/codegroup-20080907-r1.ebuild34
-rw-r--r--app-crypt/codegroup/files/codegroup-20080907-Makefile.patch20
-rw-r--r--app-crypt/codegroup/metadata.xml9
-rw-r--r--app-crypt/coolkey/Manifest2
-rw-r--r--app-crypt/coolkey/coolkey-1.1.0-r6.ebuild86
-rw-r--r--app-crypt/coolkey/metadata.xml5
-rw-r--r--app-crypt/crackpkcs12/Manifest1
-rw-r--r--app-crypt/crackpkcs12/crackpkcs12-0.2.9.ebuild17
-rw-r--r--app-crypt/crackpkcs12/metadata.xml10
-rw-r--r--app-crypt/cryptkeeper/Manifest1
-rw-r--r--app-crypt/cryptkeeper/cryptkeeper-0.9.5.ebuild44
-rw-r--r--app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-binutils-gold.patch15
-rw-r--r--app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-fix-ftbfs-gcc-4.7-672010.patch18
-rw-r--r--app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-fix_cryptkeeper.desktop.patch17
-rw-r--r--app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-is_mounted_overflow_fix.patch53
-rw-r--r--app-crypt/cryptkeeper/metadata.xml15
-rw-r--r--app-crypt/dieharder/Manifest2
-rw-r--r--app-crypt/dieharder/dieharder-2.28.1.ebuild38
-rw-r--r--app-crypt/dieharder/dieharder-3.31.1-r1.ebuild45
-rw-r--r--app-crypt/dieharder/dieharder-3.31.1.ebuild38
-rw-r--r--app-crypt/dieharder/files/dieharder-2.28.1-qafixes.patch33
-rw-r--r--app-crypt/dieharder/files/dieharder-3.31.1-build.patch27
-rw-r--r--app-crypt/dieharder/metadata.xml5
-rw-r--r--app-crypt/dirmngr/Manifest1
-rw-r--r--app-crypt/dirmngr/dirmngr-1.1.1-r1.ebuild41
-rw-r--r--app-crypt/dirmngr/files/dirmngr-1.1.1-pth.patch17
-rw-r--r--app-crypt/dirmngr/metadata.xml5
-rw-r--r--app-crypt/easy-rsa/Manifest2
-rw-r--r--app-crypt/easy-rsa/easy-rsa-2.2.0-r1.ebuild37
-rw-r--r--app-crypt/easy-rsa/easy-rsa-2.2.2.ebuild36
-rw-r--r--app-crypt/easy-rsa/files/2.2.2-pkcs11.patch36
-rw-r--r--app-crypt/easy-rsa/files/65easy-rsa1
-rw-r--r--app-crypt/easy-rsa/files/easy-rsa-2.0.0-pkcs11.patch36
-rw-r--r--app-crypt/easy-rsa/files/no-licenses.patch14
-rw-r--r--app-crypt/easy-rsa/metadata.xml11
-rw-r--r--app-crypt/efitools/Manifest2
-rw-r--r--app-crypt/efitools/efitools-1.4.1-r1.ebuild23
-rw-r--r--app-crypt/efitools/efitools-1.4.1-r2.ebuild29
-rw-r--r--app-crypt/efitools/efitools-1.4.1.ebuild21
-rw-r--r--app-crypt/efitools/efitools-1.4.2-r1.ebuild23
-rw-r--r--app-crypt/efitools/efitools-1.4.2.ebuild22
-rw-r--r--app-crypt/efitools/files/xxdi.patch110
-rw-r--r--app-crypt/efitools/metadata.xml8
-rw-r--r--app-crypt/eid-mw/Manifest2
-rw-r--r--app-crypt/eid-mw/eid-mw-4.0.6_p1480.ebuild65
-rw-r--r--app-crypt/eid-mw/eid-mw-4.0.6_p1620.ebuild62
-rw-r--r--app-crypt/eid-mw/eid-mw-9999.ebuild62
-rw-r--r--app-crypt/eid-mw/files/eid-mw-4.0.2_p1188+gcc-4.7.patch38
-rw-r--r--app-crypt/eid-mw/files/fix-nodialog-bug.patch20
-rw-r--r--app-crypt/eid-mw/metadata.xml29
-rw-r--r--app-crypt/ekeyd/Manifest2
-rw-r--r--app-crypt/ekeyd/ekeyd-1.1.4-r2.ebuild186
-rw-r--r--app-crypt/ekeyd/ekeyd-1.1.5.ebuild165
-rw-r--r--app-crypt/ekeyd/files/90-ekeyd.rules16
-rw-r--r--app-crypt/ekeyd/files/ekey-egd-linux.conf.210
-rw-r--r--app-crypt/ekeyd/files/ekey-egd-linux.init.223
-rw-r--r--app-crypt/ekeyd/files/ekey-ulusbd.conf.217
-rw-r--r--app-crypt/ekeyd/files/ekey-ulusbd.init.241
-rw-r--r--app-crypt/ekeyd/files/ekeyd-1.1.4-gentoo.patch133
-rw-r--r--app-crypt/ekeyd/files/ekeyd-1.1.5-const_char_usage.patch32
-rw-r--r--app-crypt/ekeyd/files/ekeyd-1.1.5-enoent.patch23
-rw-r--r--app-crypt/ekeyd/files/ekeyd-1.1.5-misc.patch50
-rw-r--r--app-crypt/ekeyd/files/ekeyd-1.1.5-path-fixes.patch49
-rw-r--r--app-crypt/ekeyd/files/ekeyd-1.1.5-remove-werror.patch29
-rw-r--r--app-crypt/ekeyd/files/ekeyd-1.1.5-udev-rule.patch36
-rw-r--r--app-crypt/ekeyd/files/ekeyd.init.230
-rw-r--r--app-crypt/ekeyd/files/ekeyd.service8
-rw-r--r--app-crypt/ekeyd/metadata.xml27
-rw-r--r--app-crypt/elettra/Manifest1
-rw-r--r--app-crypt/elettra/elettra-1.0.ebuild35
-rw-r--r--app-crypt/elettra/metadata.xml7
-rw-r--r--app-crypt/etcd-ca/Manifest2
-rw-r--r--app-crypt/etcd-ca/etcd-ca-0_p20140903.ebuild38
-rw-r--r--app-crypt/etcd-ca/etcd-ca-0_p20150423-r1.ebuild38
-rw-r--r--app-crypt/etcd-ca/etcd-ca-0_p20150423.ebuild38
-rw-r--r--app-crypt/etcd-ca/metadata.xml13
-rw-r--r--app-crypt/fcrackzip/Manifest1
-rw-r--r--app-crypt/fcrackzip/fcrackzip-1.0.ebuild27
-rw-r--r--app-crypt/fcrackzip/metadata.xml9
-rw-r--r--app-crypt/gcr/Manifest3
-rw-r--r--app-crypt/gcr/files/gcr-3.14.0-race-building.patch29
-rw-r--r--app-crypt/gcr/gcr-3.12.2.ebuild78
-rw-r--r--app-crypt/gcr/gcr-3.14.0.ebuild83
-rw-r--r--app-crypt/gcr/gcr-3.16.0.ebuild79
-rw-r--r--app-crypt/gcr/metadata.xml5
-rw-r--r--app-crypt/gentoo-keys/Manifest1
-rw-r--r--app-crypt/gentoo-keys/gentoo-keys-201501052117.ebuild27
-rw-r--r--app-crypt/gentoo-keys/metadata.xml8
-rw-r--r--app-crypt/gifshuffle/Manifest1
-rw-r--r--app-crypt/gifshuffle/gifshuffle-2.0.ebuild29
-rw-r--r--app-crypt/gifshuffle/metadata.xml7
-rw-r--r--app-crypt/gkeys-gen/Manifest1
-rw-r--r--app-crypt/gkeys-gen/gkeys-gen-0.1-r1.ebuild40
-rw-r--r--app-crypt/gkeys-gen/gkeys-gen-9999.ebuild57
-rw-r--r--app-crypt/gkeys-gen/metadata.xml8
-rw-r--r--app-crypt/gkeys/Manifest1
-rw-r--r--app-crypt/gkeys/gkeys-0.1-r1.ebuild53
-rw-r--r--app-crypt/gkeys/gkeys-9999.ebuild67
-rw-r--r--app-crypt/gkeys/metadata.xml8
-rw-r--r--app-crypt/gnupg-pkcs11-scd/Manifest1
-rw-r--r--app-crypt/gnupg-pkcs11-scd/gnupg-pkcs11-scd-0.7.3.ebuild26
-rw-r--r--app-crypt/gnupg-pkcs11-scd/metadata.xml11
-rw-r--r--app-crypt/gnupg/Manifest5
-rw-r--r--app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch34
-rw-r--r--app-crypt/gnupg/files/gnupg-2.0.26-Need-to-init-the-trustdb-for-import.patch35
-rw-r--r--app-crypt/gnupg/files/gnupg-2.0.26-misc-cve.patch118
-rw-r--r--app-crypt/gnupg/gnupg-1.4.19.ebuild115
-rw-r--r--app-crypt/gnupg/gnupg-2.0.26-r3.ebuild165
-rw-r--r--app-crypt/gnupg/gnupg-2.0.27-r1.ebuild167
-rw-r--r--app-crypt/gnupg/gnupg-2.0.27.ebuild163
-rw-r--r--app-crypt/gnupg/gnupg-2.0.28.ebuild167
-rw-r--r--app-crypt/gnupg/gnupg-2.1.6.ebuild170
-rw-r--r--app-crypt/gnupg/metadata.xml31
-rw-r--r--app-crypt/gorilla/Manifest1
-rw-r--r--app-crypt/gorilla/files/gorilla-script-destdir.patch17
-rw-r--r--app-crypt/gorilla/gorilla-1.4-r1.ebuild41
-rw-r--r--app-crypt/gorilla/metadata.xml11
-rw-r--r--app-crypt/gpa/Manifest4
-rw-r--r--app-crypt/gpa/gpa-0.9.4.ebuild36
-rw-r--r--app-crypt/gpa/gpa-0.9.5.ebuild36
-rw-r--r--app-crypt/gpa/gpa-0.9.6.ebuild36
-rw-r--r--app-crypt/gpa/gpa-0.9.7.ebuild36
-rw-r--r--app-crypt/gpa/metadata.xml5
-rw-r--r--app-crypt/gpg-ringmgr/Manifest1
-rw-r--r--app-crypt/gpg-ringmgr/gpg-ringmgr-1.12.ebuild31
-rw-r--r--app-crypt/gpg-ringmgr/metadata.xml8
-rw-r--r--app-crypt/gpgme/Manifest1
-rw-r--r--app-crypt/gpgme/files/gpgme-1.1.8-et_EE.patch11
-rw-r--r--app-crypt/gpgme/gpgme-1.5.5.ebuild41
-rw-r--r--app-crypt/gpgme/metadata.xml8
-rw-r--r--app-crypt/gpgstats/Manifest1
-rw-r--r--app-crypt/gpgstats/files/gpgstats-0.5-flags.patch25
-rw-r--r--app-crypt/gpgstats/gpgstats-0.5-r1.ebuild29
-rw-r--r--app-crypt/gpgstats/metadata.xml8
-rw-r--r--app-crypt/hashalot/Manifest1
-rw-r--r--app-crypt/hashalot/hashalot-0.3-r2.ebuild23
-rw-r--r--app-crypt/hashalot/metadata.xml5
-rw-r--r--app-crypt/hashcat-bin/Manifest3
-rw-r--r--app-crypt/hashcat-bin/hashcat-bin-0.46.ebuild111
-rw-r--r--app-crypt/hashcat-bin/hashcat-bin-0.47.ebuild111
-rw-r--r--app-crypt/hashcat-bin/hashcat-bin-0.49.ebuild111
-rw-r--r--app-crypt/hashcat-bin/metadata.xml10
-rw-r--r--app-crypt/hashcat-gui/Manifest1
-rw-r--r--app-crypt/hashcat-gui/hashcat-gui-0.5.1.ebuild44
-rw-r--r--app-crypt/hashcat-gui/metadata.xml16
-rw-r--r--app-crypt/heimdal/Manifest1
-rw-r--r--app-crypt/heimdal/files/heimdal-kadmind.confd5
-rw-r--r--app-crypt/heimdal/files/heimdal-kadmind.initd-r223
-rw-r--r--app-crypt/heimdal/files/heimdal-kcm.confd5
-rw-r--r--app-crypt/heimdal/files/heimdal-kcm.initd-r122
-rw-r--r--app-crypt/heimdal/files/heimdal-kdc.confd5
-rw-r--r--app-crypt/heimdal/files/heimdal-kdc.initd-r225
-rw-r--r--app-crypt/heimdal/files/heimdal-kpasswdd.confd5
-rw-r--r--app-crypt/heimdal/files/heimdal-kpasswdd.initd-r223
-rw-r--r--app-crypt/heimdal/files/heimdal_db6.patch41
-rw-r--r--app-crypt/heimdal/files/heimdal_disable-check-iprop.patch16
-rw-r--r--app-crypt/heimdal/files/heimdal_link_order.patch41
-rw-r--r--app-crypt/heimdal/files/heimdal_missing-include.patch11
-rw-r--r--app-crypt/heimdal/files/heimdal_missing_symbols.patch28
-rw-r--r--app-crypt/heimdal/files/heimdal_texinfo-5.patch28
-rw-r--r--app-crypt/heimdal/files/heimdal_tinfo.patch22
-rw-r--r--app-crypt/heimdal/files/krb5.conf27
-rw-r--r--app-crypt/heimdal/heimdal-1.5.3-r2.ebuild194
-rw-r--r--app-crypt/heimdal/metadata.xml17
-rw-r--r--app-crypt/hmaccalc/Manifest1
-rw-r--r--app-crypt/hmaccalc/hmaccalc-0.9.13.ebuild31
-rw-r--r--app-crypt/hmaccalc/metadata.xml14
-rw-r--r--app-crypt/ima-evm-utils/Manifest2
-rw-r--r--app-crypt/ima-evm-utils/ima-evm-utils-0.2.ebuild33
-rw-r--r--app-crypt/ima-evm-utils/ima-evm-utils-0.8.ebuild33
-rw-r--r--app-crypt/ima-evm-utils/ima-evm-utils-9999.ebuild22
-rw-r--r--app-crypt/ima-evm-utils/metadata.xml14
-rw-r--r--app-crypt/jacksum/Manifest1
-rw-r--r--app-crypt/jacksum/jacksum-1.7.0.ebuild33
-rw-r--r--app-crypt/jacksum/metadata.xml8
-rw-r--r--app-crypt/johntheripper/Manifest2
-rw-r--r--app-crypt/johntheripper/files/johntheripper-1.7.3.1-mkdir-sandbox.patch12
-rw-r--r--app-crypt/johntheripper/files/johntheripper-1.7.6-cflags.patch83
-rw-r--r--app-crypt/johntheripper/files/johntheripper-1.7.9-jumbo-5-NT-performance-02.patch31
-rw-r--r--app-crypt/johntheripper/files/johntheripper-1.7.9-ppc-compile-fix.patch17
-rw-r--r--app-crypt/johntheripper/johntheripper-1.7.9-r10.ebuild266
-rw-r--r--app-crypt/johntheripper/johntheripper-1.7.9-r6.ebuild251
-rw-r--r--app-crypt/johntheripper/metadata.xml15
-rw-r--r--app-crypt/kencfs/Manifest1
-rw-r--r--app-crypt/kencfs/files/kencfs-1.2-desktop.patch11
-rw-r--r--app-crypt/kencfs/files/kencfs-1.4.0-encfs5.patch13
-rw-r--r--app-crypt/kencfs/kencfs-1.5.0.ebuild38
-rw-r--r--app-crypt/kencfs/metadata.xml5
-rw-r--r--app-crypt/keybase/Manifest4
-rw-r--r--app-crypt/keybase/keybase-0.8.10.ebuild33
-rw-r--r--app-crypt/keybase/keybase-0.8.12.ebuild33
-rw-r--r--app-crypt/keybase/keybase-0.8.13.ebuild33
-rw-r--r--app-crypt/keybase/keybase-0.8.9.ebuild33
-rw-r--r--app-crypt/keybase/metadata.xml14
-rw-r--r--app-crypt/keylookup/Manifest1
-rw-r--r--app-crypt/keylookup/keylookup-2.2-r9999.ebuild14
-rw-r--r--app-crypt/keylookup/keylookup-2.2.ebuild21
-rw-r--r--app-crypt/keylookup/metadata.xml8
-rw-r--r--app-crypt/keynote/Manifest1
-rw-r--r--app-crypt/keynote/files/keynote-2.3-parallel-build.patch14
-rw-r--r--app-crypt/keynote/files/keynote-2.3-qa.patch44
-rw-r--r--app-crypt/keynote/keynote-2.3-r3.ebuild51
-rw-r--r--app-crypt/keynote/metadata.xml7
-rw-r--r--app-crypt/kstart/Manifest1
-rw-r--r--app-crypt/kstart/kstart-4.1.ebuild34
-rw-r--r--app-crypt/kstart/metadata.xml17
-rw-r--r--app-crypt/libscrypt/Manifest2
-rw-r--r--app-crypt/libscrypt/libscrypt-1.19.ebuild29
-rw-r--r--app-crypt/libscrypt/libscrypt-1.20.ebuild29
-rw-r--r--app-crypt/libscrypt/metadata.xml11
-rw-r--r--app-crypt/libsecret/Manifest2
-rw-r--r--app-crypt/libsecret/libsecret-0.18.2.ebuild66
-rw-r--r--app-crypt/libsecret/libsecret-0.18.ebuild71
-rw-r--r--app-crypt/libsecret/metadata.xml8
-rw-r--r--app-crypt/libu2f-host/Manifest2
-rw-r--r--app-crypt/libu2f-host/libu2f-host-0.0.2.ebuild49
-rw-r--r--app-crypt/libu2f-host/libu2f-host-0.0.4.ebuild49
-rw-r--r--app-crypt/libu2f-host/metadata.xml18
-rw-r--r--app-crypt/libykneomgr/Manifest2
-rw-r--r--app-crypt/libykneomgr/libykneomgr-0.1.6.ebuild32
-rw-r--r--app-crypt/libykneomgr/libykneomgr-0.1.7.ebuild32
-rw-r--r--app-crypt/libykneomgr/metadata.xml12
-rw-r--r--app-crypt/loop-aes-losetup/Manifest2
-rw-r--r--app-crypt/loop-aes-losetup/loop-aes-losetup-2.21.ebuild96
-rw-r--r--app-crypt/loop-aes-losetup/metadata.xml5
-rw-r--r--app-crypt/mcrypt/Manifest1
-rw-r--r--app-crypt/mcrypt/files/mcrypt-2.6.7-qa.patch22
-rw-r--r--app-crypt/mcrypt/files/mcrypt-2.6.8-format-string.patch31
-rw-r--r--app-crypt/mcrypt/files/mcrypt-2.6.8-overflow.patch25
-rw-r--r--app-crypt/mcrypt/files/mcrypt-2.6.8-segv.patch40
-rw-r--r--app-crypt/mcrypt/files/mcrypt-2.6.8-sprintf.patch108
-rw-r--r--app-crypt/mcrypt/files/mcrypt-2.6.8-stdlib.h.patch11
-rw-r--r--app-crypt/mcrypt/mcrypt-2.6.8-r2.ebuild39
-rw-r--r--app-crypt/mcrypt/metadata.xml12
-rw-r--r--app-crypt/md4sum/Manifest1
-rw-r--r--app-crypt/md4sum/files/md4sum-fix-out-of-bounds-write.diff11
-rw-r--r--app-crypt/md4sum/md4sum-0.02.03-r1.ebuild31
-rw-r--r--app-crypt/md4sum/metadata.xml5
-rw-r--r--app-crypt/md5deep/Manifest2
-rw-r--r--app-crypt/md5deep/md5deep-4.3.ebuild17
-rw-r--r--app-crypt/md5deep/md5deep-4.4.ebuild22
-rw-r--r--app-crypt/md5deep/metadata.xml11
-rw-r--r--app-crypt/md6sum/Manifest1
-rw-r--r--app-crypt/md6sum/files/md6sum-1.0-cflags.patch27
-rw-r--r--app-crypt/md6sum/files/md6sum-1.0-format-security.patch26
-rw-r--r--app-crypt/md6sum/files/md6sum-1.0-ldflags.patch12
-rw-r--r--app-crypt/md6sum/md6sum-1.0-r2.ebuild27
-rw-r--r--app-crypt/md6sum/metadata.xml10
-rw-r--r--app-crypt/mdcrack/Manifest1
-rw-r--r--app-crypt/mdcrack/files/mdcrack-1.2-asneeded.patch20
-rw-r--r--app-crypt/mdcrack/files/mdcrack-1.2-gcc4.diff24
-rw-r--r--app-crypt/mdcrack/files/mdcrack-1.2-remove-interactive-test.diff120
-rw-r--r--app-crypt/mdcrack/mdcrack-1.2.ebuild57
-rw-r--r--app-crypt/mdcrack/metadata.xml5
-rw-r--r--app-crypt/metadata.xml40
-rw-r--r--app-crypt/mhash/Manifest1
-rw-r--r--app-crypt/mhash/files/mhash-0.9.9-autotools-namespace-stomping.patch96
-rw-r--r--app-crypt/mhash/files/mhash-0.9.9-fix-mem-leak.patch27
-rw-r--r--app-crypt/mhash/files/mhash-0.9.9-fix-snefru-segfault.patch27
-rw-r--r--app-crypt/mhash/files/mhash-0.9.9-fix-whirlpool-segfault.patch27
-rw-r--r--app-crypt/mhash/files/mhash-0.9.9-mutils-align.patch118
-rw-r--r--app-crypt/mhash/files/mhash-0.9.9.9-align.patch119
-rw-r--r--app-crypt/mhash/files/mhash-0.9.9.9-alignment.patch16
-rw-r--r--app-crypt/mhash/files/mhash-0.9.9.9-force64bit-tiger.patch14
-rw-r--r--app-crypt/mhash/files/mhash-0.9.9.9-remove_premature_free.patch12
-rw-r--r--app-crypt/mhash/metadata.xml11
-rw-r--r--app-crypt/mhash/mhash-0.9.9.9-r1.ebuild52
-rw-r--r--app-crypt/mit-krb5-appl/Manifest1
-rw-r--r--app-crypt/mit-krb5-appl/files/mit-krb5-appl-sig_t.patch55
-rw-r--r--app-crypt/mit-krb5-appl/files/mit-krb5-appl-tinfo.patch12
-rw-r--r--app-crypt/mit-krb5-appl/metadata.xml5
-rw-r--r--app-crypt/mit-krb5-appl/mit-krb5-appl-1.0.3.ebuild63
-rw-r--r--app-crypt/mit-krb5/Manifest1
-rw-r--r--app-crypt/mit-krb5/files/kpropd.xinetd11
-rw-r--r--app-crypt/mit-krb5/files/mit-krb5-1.12_warn_cflags.patch11
-rw-r--r--app-crypt/mit-krb5/files/mit-krb5-config_LDFLAGS.patch12
-rw-r--r--app-crypt/mit-krb5/files/mit-krb5kadmind.initd-r125
-rw-r--r--app-crypt/mit-krb5/files/mit-krb5kdc.initd-r124
-rw-r--r--app-crypt/mit-krb5/files/mit-krb5kpropd.initd-r124
-rw-r--r--app-crypt/mit-krb5/metadata.xml16
-rw-r--r--app-crypt/mit-krb5/mit-krb5-1.13.2.ebuild151
-rw-r--r--app-crypt/monkeysign/Manifest1
-rw-r--r--app-crypt/monkeysign/files/monkeysign-1.1-basename.patch12
-rw-r--r--app-crypt/monkeysign/files/monkeysign-2.0.0-rst2s5.patch17
-rw-r--r--app-crypt/monkeysign/files/monkeysign-2.0.2-smtplib.patch28
-rw-r--r--app-crypt/monkeysign/files/monkeysign.desktop9
-rw-r--r--app-crypt/monkeysign/metadata.xml8
-rw-r--r--app-crypt/monkeysign/monkeysign-2.0.2-r1.ebuild51
-rw-r--r--app-crypt/monkeysphere/Manifest2
-rw-r--r--app-crypt/monkeysphere/files/monkeysphere-0.36_default_shell.patch12
-rw-r--r--app-crypt/monkeysphere/files/monkeysphere-0.36_hd_od.patch14
-rw-r--r--app-crypt/monkeysphere/files/monkeysphere-0.36_non_default_port.patch14
-rw-r--r--app-crypt/monkeysphere/files/monkeysphere-0.36_openpgp2ssh_sanity_check.patch34
-rw-r--r--app-crypt/monkeysphere/files/monkeysphere-0.36_tests_gnupg2.patch50
-rw-r--r--app-crypt/monkeysphere/files/monkeysphere-0.36_userid_empty_line.patch12
-rw-r--r--app-crypt/monkeysphere/files/monkeysphere-0.37_default_shell.patch12
-rw-r--r--app-crypt/monkeysphere/files/monkeysphere-0.37_hd_od.patch14
-rw-r--r--app-crypt/monkeysphere/metadata.xml8
-rw-r--r--app-crypt/monkeysphere/monkeysphere-0.36-r1.ebuild58
-rw-r--r--app-crypt/monkeysphere/monkeysphere-0.36-r2.ebuild68
-rw-r--r--app-crypt/monkeysphere/monkeysphere-0.37.ebuild58
-rw-r--r--app-crypt/nasty/Manifest1
-rw-r--r--app-crypt/nasty/files/nasty-0.6-flags.patch22
-rw-r--r--app-crypt/nasty/metadata.xml8
-rw-r--r--app-crypt/nasty/nasty-0.6-r1.ebuild30
-rw-r--r--app-crypt/nistp224/Manifest1
-rw-r--r--app-crypt/nistp224/files/nistp224-0.75-asmfix.patch39
-rw-r--r--app-crypt/nistp224/files/nistp224-0.75-declare-exit.patch18
-rw-r--r--app-crypt/nistp224/files/nistp224-0.75-honour-CC.patch79
-rw-r--r--app-crypt/nistp224/metadata.xml13
-rw-r--r--app-crypt/nistp224/nistp224-0.75-r1.ebuild57
-rw-r--r--app-crypt/nwipe/Manifest3
-rw-r--r--app-crypt/nwipe/files/nwipe-0.12-ncurses.patch59
-rw-r--r--app-crypt/nwipe/metadata.xml12
-rw-r--r--app-crypt/nwipe/nwipe-0.12-r1.ebuild28
-rw-r--r--app-crypt/nwipe/nwipe-0.12.ebuild24
-rw-r--r--app-crypt/nwipe/nwipe-0.13.ebuild21
-rw-r--r--app-crypt/nwipe/nwipe-0.14.ebuild21
-rw-r--r--app-crypt/oclhashcat-lite-bin/Manifest1
-rw-r--r--app-crypt/oclhashcat-lite-bin/metadata.xml11
-rw-r--r--app-crypt/oclhashcat-lite-bin/oclhashcat-lite-bin-0.15.ebuild150
-rw-r--r--app-crypt/oclhashcat-plus-bin/Manifest1
-rw-r--r--app-crypt/oclhashcat-plus-bin/metadata.xml11
-rw-r--r--app-crypt/oclhashcat-plus-bin/oclhashcat-plus-bin-0.15.ebuild147
-rw-r--r--app-crypt/onak/Manifest1
-rw-r--r--app-crypt/onak/files/onak-0.3.7-berkdb-5.0.patch13
-rw-r--r--app-crypt/onak/metadata.xml8
-rw-r--r--app-crypt/onak/onak-0.4.0.ebuild56
-rw-r--r--app-crypt/openssl-blacklist/Manifest2
-rw-r--r--app-crypt/openssl-blacklist/metadata.xml10
-rw-r--r--app-crypt/openssl-blacklist/openssl-blacklist-0.5.3.ebuild52
-rw-r--r--app-crypt/openssl-tpm-engine/Manifest1
-rw-r--r--app-crypt/openssl-tpm-engine/metadata.xml8
-rw-r--r--app-crypt/openssl-tpm-engine/openssl-tpm-engine-0.4.1.ebuild34
-rw-r--r--app-crypt/openvpn-blacklist/Manifest1
-rw-r--r--app-crypt/openvpn-blacklist/metadata.xml5
-rw-r--r--app-crypt/openvpn-blacklist/openvpn-blacklist-0.4-r1.ebuild33
-rw-r--r--app-crypt/ophcrack-tables/Manifest3
-rw-r--r--app-crypt/ophcrack-tables/metadata.xml16
-rw-r--r--app-crypt/ophcrack-tables/ophcrack-tables-1.0-r2.ebuild39
-rw-r--r--app-crypt/ophcrack/Manifest5
-rw-r--r--app-crypt/ophcrack/metadata.xml14
-rw-r--r--app-crypt/ophcrack/ophcrack-3.1.0-r2.ebuild35
-rw-r--r--app-crypt/ophcrack/ophcrack-3.3.0.ebuild35
-rw-r--r--app-crypt/ophcrack/ophcrack-3.3.1.ebuild42
-rw-r--r--app-crypt/ophcrack/ophcrack-3.4.0.ebuild42
-rw-r--r--app-crypt/ophcrack/ophcrack-3.6.0.ebuild42
-rw-r--r--app-crypt/osslsigncode/Manifest1
-rw-r--r--app-crypt/osslsigncode/metadata.xml11
-rw-r--r--app-crypt/osslsigncode/osslsigncode-1.4.ebuild23
-rw-r--r--app-crypt/p11-kit/Manifest4
-rw-r--r--app-crypt/p11-kit/metadata.xml9
-rw-r--r--app-crypt/p11-kit/p11-kit-0.20.7.ebuild46
-rw-r--r--app-crypt/p11-kit/p11-kit-0.22.0.ebuild46
-rw-r--r--app-crypt/p11-kit/p11-kit-0.22.1.ebuild46
-rw-r--r--app-crypt/p11-kit/p11-kit-0.23.1.ebuild46
-rw-r--r--app-crypt/paperkey/Manifest1
-rw-r--r--app-crypt/paperkey/metadata.xml8
-rw-r--r--app-crypt/paperkey/paperkey-1.3.ebuild16
-rw-r--r--app-crypt/pdfcrack/Manifest2
-rw-r--r--app-crypt/pdfcrack/files/pdfcrack-0.13-build.patch22
-rw-r--r--app-crypt/pdfcrack/files/pdfcrack-0.14-cflags.patch8
-rw-r--r--app-crypt/pdfcrack/metadata.xml8
-rw-r--r--app-crypt/pdfcrack/pdfcrack-0.13.ebuild28
-rw-r--r--app-crypt/pdfcrack/pdfcrack-0.14.ebuild28
-rw-r--r--app-crypt/pesign/Manifest1
-rw-r--r--app-crypt/pesign/files/destdir.patch10
-rw-r--r--app-crypt/pesign/metadata.xml11
-rw-r--r--app-crypt/pesign/pesign-0.108.ebuild53
-rw-r--r--app-crypt/pgpdump/Manifest2
-rw-r--r--app-crypt/pgpdump/files/pgpdump-0.28-respect-ldflags.patch42
-rw-r--r--app-crypt/pgpdump/metadata.xml8
-rw-r--r--app-crypt/pgpdump/pgpdump-0.28-r1.ebuild29
-rw-r--r--app-crypt/pgpdump/pgpdump-0.29.ebuild29
-rw-r--r--app-crypt/pinentry/Manifest2
-rw-r--r--app-crypt/pinentry/files/pinentry-0.8.2-ncurses.patch25
-rw-r--r--app-crypt/pinentry/files/pinentry-0.8.2-texi.patch20
-rw-r--r--app-crypt/pinentry/files/pinentry-0.9.0-accessibility.patch82
-rw-r--r--app-crypt/pinentry/files/pinentry-0.9.4-actually_respect_users_pm.patch49
-rw-r--r--app-crypt/pinentry/files/pinentry-0.9.5-build.patch52
-rw-r--r--app-crypt/pinentry/metadata.xml8
-rw-r--r--app-crypt/pinentry/pinentry-0.9.0-r3.ebuild101
-rw-r--r--app-crypt/pinentry/pinentry-0.9.0.ebuild98
-rw-r--r--app-crypt/pinentry/pinentry-0.9.5.ebuild89
-rw-r--r--app-crypt/pius/Manifest3
-rw-r--r--app-crypt/pius/metadata.xml18
-rw-r--r--app-crypt/pius/pius-2.0.10.ebuild30
-rw-r--r--app-crypt/pius/pius-2.0.11.ebuild28
-rw-r--r--app-crypt/pius/pius-2.0.9.ebuild30
-rw-r--r--app-crypt/pkcrack/Manifest1
-rw-r--r--app-crypt/pkcrack/metadata.xml8
-rw-r--r--app-crypt/pkcrack/pkcrack-1.2.2-r1.ebuild59
-rw-r--r--app-crypt/pkcrack/pkcrack-1.2.2.ebuild54
-rw-r--r--app-crypt/pkcs11-data/Manifest1
-rw-r--r--app-crypt/pkcs11-data/metadata.xml8
-rw-r--r--app-crypt/pkcs11-data/pkcs11-data-0.7.4.ebuild25
-rw-r--r--app-crypt/pkcs11-dump/Manifest1
-rw-r--r--app-crypt/pkcs11-dump/metadata.xml8
-rw-r--r--app-crypt/pkcs11-dump/pkcs11-dump-0.3.4.ebuild25
-rw-r--r--app-crypt/qca-cyrus-sasl/Manifest1
-rw-r--r--app-crypt/qca-cyrus-sasl/metadata.xml7
-rw-r--r--app-crypt/qca-cyrus-sasl/qca-cyrus-sasl-2.0.0_beta3.ebuild36
-rw-r--r--app-crypt/qca-gnupg/Manifest1
-rw-r--r--app-crypt/qca-gnupg/metadata.xml7
-rw-r--r--app-crypt/qca-gnupg/qca-gnupg-2.0.0_beta3.ebuild37
-rw-r--r--app-crypt/qca-logger/Manifest1
-rw-r--r--app-crypt/qca-logger/metadata.xml7
-rw-r--r--app-crypt/qca-logger/qca-logger-2.0.0_beta2.ebuild36
-rw-r--r--app-crypt/qca-ossl/Manifest1
-rw-r--r--app-crypt/qca-ossl/files/qca-ossl-openssl-1.0.0.patch155
-rw-r--r--app-crypt/qca-ossl/metadata.xml7
-rw-r--r--app-crypt/qca-ossl/qca-ossl-2.0.0_beta3-r2.ebuild42
-rw-r--r--app-crypt/qca-pkcs11/Manifest1
-rw-r--r--app-crypt/qca-pkcs11/files/qca-pkcs11-2.0.0_beta2-gcc44.patch12
-rw-r--r--app-crypt/qca-pkcs11/metadata.xml7
-rw-r--r--app-crypt/qca-pkcs11/qca-pkcs11-2.0.0_beta2.ebuild40
-rw-r--r--app-crypt/qca/Manifest2
-rw-r--r--app-crypt/qca/files/qca-2.0.2-pcfilespath.patch13
-rw-r--r--app-crypt/qca/files/qca-2.0.3+gcc-4.7.patch59
-rw-r--r--app-crypt/qca/files/qca-2.1.0.3-qt55.patch26
-rw-r--r--app-crypt/qca/files/qca-disable-pgp-test.patch13
-rw-r--r--app-crypt/qca/metadata.xml18
-rw-r--r--app-crypt/qca/qca-2.0.3-r1.ebuild80
-rw-r--r--app-crypt/qca/qca-2.1.0.3.ebuild123
-rw-r--r--app-crypt/quickcrypt/Manifest1
-rw-r--r--app-crypt/quickcrypt/metadata.xml8
-rw-r--r--app-crypt/quickcrypt/quickcrypt-0.9.2b.ebuild23
-rw-r--r--app-crypt/rainbowcrack/Manifest2
-rw-r--r--app-crypt/rainbowcrack/metadata.xml14
-rw-r--r--app-crypt/rainbowcrack/rainbowcrack-1.5.ebuild46
-rw-r--r--app-crypt/rotix/Manifest1
-rw-r--r--app-crypt/rotix/files/0.83-respect-CFLAGS-and-dont-strip.patch31
-rw-r--r--app-crypt/rotix/files/rotix-0.83-interix.patch15
-rw-r--r--app-crypt/rotix/files/rotix-0.83-locale.diff10
-rw-r--r--app-crypt/rotix/metadata.xml8
-rw-r--r--app-crypt/rotix/rotix-0.83.ebuild33
-rw-r--r--app-crypt/sbsigntool/Manifest1
-rw-r--r--app-crypt/sbsigntool/files/0002-image.c-clear-image-variable.patch29
-rw-r--r--app-crypt/sbsigntool/files/0003-Fix-for-multi-sign.patch39
-rw-r--r--app-crypt/sbsigntool/metadata.xml11
-rw-r--r--app-crypt/sbsigntool/sbsigntool-0.6-r1.ebuild38
-rw-r--r--app-crypt/sbsigntool/sbsigntool-0.6.ebuild36
-rw-r--r--app-crypt/scl011-bin/Manifest2
-rw-r--r--app-crypt/scl011-bin/files/92_pcscd_scl011-bin.rules10
-rw-r--r--app-crypt/scl011-bin/metadata.xml14
-rw-r--r--app-crypt/scl011-bin/scl011-bin-2.06.ebuild43
-rw-r--r--app-crypt/scrypt/Manifest1
-rw-r--r--app-crypt/scrypt/metadata.xml5
-rw-r--r--app-crypt/scrypt/scrypt-1.1.6.ebuild20
-rw-r--r--app-crypt/scute/Manifest1
-rw-r--r--app-crypt/scute/files/scute-1.2.0-noversion.patch14
-rw-r--r--app-crypt/scute/files/scute-1.4.0-tests.patch13
-rw-r--r--app-crypt/scute/metadata.xml28
-rw-r--r--app-crypt/scute/scute-1.4.0.ebuild50
-rw-r--r--app-crypt/seahorse-sharing/Manifest1
-rw-r--r--app-crypt/seahorse-sharing/metadata.xml5
-rw-r--r--app-crypt/seahorse-sharing/seahorse-sharing-3.8.0.ebuild59
-rw-r--r--app-crypt/seahorse/Manifest2
-rw-r--r--app-crypt/seahorse/files/seahorse-3.16.0-gnupg-detection.patch173
-rw-r--r--app-crypt/seahorse/metadata.xml30
-rw-r--r--app-crypt/seahorse/seahorse-3.14.1.ebuild67
-rw-r--r--app-crypt/seahorse/seahorse-3.16.0-r1.ebuild71
-rw-r--r--app-crypt/sgeps/Manifest1
-rw-r--r--app-crypt/sgeps/metadata.xml13
-rw-r--r--app-crypt/sgeps/sgeps-0_pre15.ebuild43
-rw-r--r--app-crypt/shash/Manifest1
-rw-r--r--app-crypt/shash/files/0.2.6-manpage-fixes.patch30
-rw-r--r--app-crypt/shash/files/shash-0.2.6-binary-files.patch34
-rw-r--r--app-crypt/shash/files/shash.bash-completion39
-rw-r--r--app-crypt/shash/metadata.xml10
-rw-r--r--app-crypt/shash/shash-0.2.6-r2.ebuild34
-rw-r--r--app-crypt/shishi/Manifest2
-rw-r--r--app-crypt/shishi/files/shishi-1.0.2_automake-1.12.patch24
-rw-r--r--app-crypt/shishi/files/shishi_automake-1.12.patch35
-rw-r--r--app-crypt/shishi/files/shishi_gets.patch20
-rw-r--r--app-crypt/shishi/files/shishi_resolv.patch31
-rw-r--r--app-crypt/shishi/files/shishid.confd6
-rw-r--r--app-crypt/shishi/files/shishid.init25
-rw-r--r--app-crypt/shishi/metadata.xml15
-rw-r--r--app-crypt/shishi/shishi-1.0.1-r1.ebuild81
-rw-r--r--app-crypt/shishi/shishi-1.0.1-r2.ebuild82
-rw-r--r--app-crypt/shishi/shishi-1.0.1.ebuild79
-rw-r--r--app-crypt/shishi/shishi-1.0.2.ebuild76
-rw-r--r--app-crypt/sign/Manifest1
-rw-r--r--app-crypt/sign/files/1.0.7-as-needed.patch10
-rw-r--r--app-crypt/sign/files/1.0.7-openssl-0.9.8.patch12
-rw-r--r--app-crypt/sign/metadata.xml20
-rw-r--r--app-crypt/sign/sign-1.0.7.ebuild37
-rw-r--r--app-crypt/signing-party/Manifest3
-rw-r--r--app-crypt/signing-party/files/signing-party-makefile.diff18
-rw-r--r--app-crypt/signing-party/metadata.xml5
-rw-r--r--app-crypt/signing-party/signing-party-1.1.11-r1.ebuild117
-rw-r--r--app-crypt/signing-party/signing-party-1.1.4.ebuild107
-rw-r--r--app-crypt/signing-party/signing-party-2.0.ebuild115
-rw-r--r--app-crypt/simple-tpm-pk11/Manifest1
-rw-r--r--app-crypt/simple-tpm-pk11/metadata.xml11
-rw-r--r--app-crypt/simple-tpm-pk11/simple-tpm-pk11-0.03.ebuild35
-rw-r--r--app-crypt/ssdeep/Manifest4
-rw-r--r--app-crypt/ssdeep/files/ssdeep-2.10-shared.patch10
-rw-r--r--app-crypt/ssdeep/metadata.xml8
-rw-r--r--app-crypt/ssdeep/ssdeep-2.10.ebuild21
-rw-r--r--app-crypt/ssdeep/ssdeep-2.11.1.ebuild21
-rw-r--r--app-crypt/ssdeep/ssdeep-2.12.ebuild21
-rw-r--r--app-crypt/ssdeep/ssdeep-2.13.ebuild21
-rw-r--r--app-crypt/ssh-multiadd/Manifest1
-rw-r--r--app-crypt/ssh-multiadd/metadata.xml8
-rw-r--r--app-crypt/ssh-multiadd/ssh-multiadd-1.3.2-r1.ebuild35
-rw-r--r--app-crypt/ssh-multiadd/ssh-multiadd-1.3.2.ebuild40
-rw-r--r--app-crypt/stan/Manifest1
-rw-r--r--app-crypt/stan/files/stan-0.4.1-errno.patch26
-rw-r--r--app-crypt/stan/metadata.xml5
-rw-r--r--app-crypt/stan/stan-0.4.1.ebuild27
-rw-r--r--app-crypt/tc-play/Manifest1
-rw-r--r--app-crypt/tc-play/metadata.xml13
-rw-r--r--app-crypt/tc-play/tc-play-2.0.ebuild52
-rw-r--r--app-crypt/tinyca/Manifest1
-rw-r--r--app-crypt/tinyca/files/tinyca-2.0.7.3-compositefix.patch12
-rw-r--r--app-crypt/tinyca/files/tinyca-2.0.7.5-openssl-1.patch48
-rw-r--r--app-crypt/tinyca/files/tinyca-2.0.7.5-perl-5.18.patch47
-rw-r--r--app-crypt/tinyca/metadata.xml5
-rw-r--r--app-crypt/tinyca/tinyca-2.0.7.5-r2.ebuild68
-rw-r--r--app-crypt/tpm-emulator/Manifest1
-rw-r--r--app-crypt/tpm-emulator/files/tpm-emulator.confd-0.7.42
-rw-r--r--app-crypt/tpm-emulator/files/tpm-emulator.initd54
-rwxr-xr-xapp-crypt/tpm-emulator/files/tpm-emulator.initd-0.7.460
-rw-r--r--app-crypt/tpm-emulator/files/tpm-emulator.udev1
-rw-r--r--app-crypt/tpm-emulator/metadata.xml8
-rw-r--r--app-crypt/tpm-emulator/tpm-emulator-0.7.4-r1.ebuild69
-rw-r--r--app-crypt/tpm-tools/Manifest1
-rw-r--r--app-crypt/tpm-tools/files/tpm-tools-1.3.8-build.patch10
-rw-r--r--app-crypt/tpm-tools/files/tpm-tools-1.3.8-gold.patch10
-rw-r--r--app-crypt/tpm-tools/metadata.xml14
-rw-r--r--app-crypt/tpm-tools/tpm-tools-1.3.8.ebuild52
-rw-r--r--app-crypt/trousers/Manifest2
-rw-r--r--app-crypt/trousers/files/61-trousers.rules2
-rw-r--r--app-crypt/trousers/files/tcsd.confd9
-rw-r--r--app-crypt/trousers/files/tcsd.initd39
-rw-r--r--app-crypt/trousers/files/tcsd.service10
-rw-r--r--app-crypt/trousers/files/trousers-0.3.13-nouseradd.patch12
-rw-r--r--app-crypt/trousers/files/trousers-0.3.5-nouseradd.patch11
-rw-r--r--app-crypt/trousers/metadata.xml9
-rw-r--r--app-crypt/trousers/trousers-0.3.10-r1.ebuild104
-rw-r--r--app-crypt/trousers/trousers-0.3.13.ebuild101
-rw-r--r--app-crypt/truecrypt/Manifest4
-rw-r--r--app-crypt/truecrypt/files/execstack-fix.diff60
-rw-r--r--app-crypt/truecrypt/files/makefile-archdetect.diff11
-rw-r--r--app-crypt/truecrypt/files/truecrypt-7.1a-build.patch16
-rw-r--r--app-crypt/truecrypt/files/truecrypt-stop.sh9
-rw-r--r--app-crypt/truecrypt/files/truecrypt.init29
-rw-r--r--app-crypt/truecrypt/metadata.xml11
-rw-r--r--app-crypt/truecrypt/truecrypt-7.1a.ebuild126
-rw-r--r--app-crypt/truecrypt/truecrypt-7.2.ebuild114
-rw-r--r--app-crypt/xca/Manifest1
-rw-r--r--app-crypt/xca/files/xca-1.0.0-desktop.patch8
-rw-r--r--app-crypt/xca/files/xca-1.1.0-ec.patch124
-rw-r--r--app-crypt/xca/metadata.xml8
-rw-r--r--app-crypt/xca/xca-1.1.0.ebuild44
-rw-r--r--app-crypt/xor-analyze/Manifest1
-rw-r--r--app-crypt/xor-analyze/metadata.xml5
-rw-r--r--app-crypt/xor-analyze/xor-analyze-0.5.ebuild25
-rw-r--r--app-crypt/yubikey-neo-manager/Manifest3
-rw-r--r--app-crypt/yubikey-neo-manager/metadata.xml13
-rw-r--r--app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.1.0.ebuild48
-rw-r--r--app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.2.1.ebuild48
-rw-r--r--app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.3.0.ebuild50
653 files changed, 19409 insertions, 0 deletions
diff --git a/app-crypt/WiRouterKeyRec/Manifest b/app-crypt/WiRouterKeyRec/Manifest
new file mode 100644
index 000000000000..42c5cf90cc5d
--- /dev/null
+++ b/app-crypt/WiRouterKeyRec/Manifest
@@ -0,0 +1 @@
+DIST WiRouterKeyRec-1.1.2.zip 117262 SHA256 3e59138f35502b32b47bd91fe18c0c232921c08d32525a2ae3c14daec09058d4 SHA512 a3c449497e3f3fed88dfbb35a90a2cfa5937efa02393e825ec51ab390b7094ce619d3238a916afd2b48e35e0e261b454f7d7005af46d6a45d77b2e1d4faaac51 WHIRLPOOL e52d316a01ba84bbe34f3a7b8abdf94287b67f3b28bc4ccfd0036fb21cd38c711d1bb2388b9b55f9253cd01ae26e032547624d8a25b55acfa9ea4e1ee36f96f2
diff --git a/app-crypt/WiRouterKeyRec/WiRouterKeyRec-1.1.2.ebuild b/app-crypt/WiRouterKeyRec/WiRouterKeyRec-1.1.2.ebuild
new file mode 100644
index 000000000000..cee83355103b
--- /dev/null
+++ b/app-crypt/WiRouterKeyRec/WiRouterKeyRec-1.1.2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit toolchain-funcs
+
+MY_PN="WiRouter_KeyRec"
+MY_P="${MY_PN}_${PV}"
+
+DESCRIPTION="Recovery tool for wpa passphrase"
+HOMEPAGE="http://www.salvatorefresta.net"
+SRC_URI="http://tools.salvatorefresta.net/${MY_P}.zip -> ${P}.zip"
+
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+LICENSE="GPL-2"
+SLOT="0"
+
+DEPEND="app-arch/unzip"
+RDEPEND=""
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare () {
+ sed -i "s:wirouterkeyrec:${PN}:" src/*.h || die
+}
+
+src_compile () {
+ emake \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+}
+
+src_install () {
+ newbin build/wirouterkeyrec ${PN}
+ insinto /etc/${PN}
+ doins config/agpf_config.lst config/teletu_config.lst
+}
diff --git a/app-crypt/WiRouterKeyRec/metadata.xml b/app-crypt/WiRouterKeyRec/metadata.xml
new file mode 100644
index 000000000000..6c08151bd39f
--- /dev/null
+++ b/app-crypt/WiRouterKeyRec/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>
+ <email>ago@gentoo.org</email>
+ <name>Agostino Sarubbo</name>
+ </maintainer>
+</pkgmetadata>
+
diff --git a/app-crypt/acr38u/Manifest b/app-crypt/acr38u/Manifest
new file mode 100644
index 000000000000..70ff4c452d0c
--- /dev/null
+++ b/app-crypt/acr38u/Manifest
@@ -0,0 +1 @@
+DIST ACR38_LINUX_100711_P.tar.bz2 274137 SHA256 7d7e4fa97def2415f4b5c9e90cfedc2f7acbe94ca8b1653a5d8a85e24fc0ab53 SHA512 c5d0e71ae383de515718d24110b825efa84cf1a150ec7249f80070446331fb4df4d157f5f4e96d45588346e51ab8e2012530edae92575b66891c7ee596d8d3f7 WHIRLPOOL d63f7d1a8ff51ff131e0e0bcf943bbb5c38773b707019e695377fc42b5a91029ac22736dae95f10342a8d44370f90f766c9bdbf23f5c445c8f41c051303f87c3
diff --git a/app-crypt/acr38u/acr38u-1.7.11-r1.ebuild b/app-crypt/acr38u/acr38u-1.7.11-r1.ebuild
new file mode 100644
index 000000000000..2dcc78feab12
--- /dev/null
+++ b/app-crypt/acr38u/acr38u-1.7.11-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit multilib eutils versionator autotools toolchain-funcs udev
+
+MY_P=ACR38_LINUX_$(get_version_component_range 1)00$(get_version_component_range 2)$(get_version_component_range 3)_P
+
+SLOT="0"
+LICENSE="LGPL-2.1"
+KEYWORDS="~amd64 ~x86"
+DESCRIPTION="Non CCID driver for ACR38 AC1038-based Smart Card Reader"
+
+#SRC_URI="http://www.acs.com.hk/drivers/eng/${MY_P}.tar.bz2"
+# tarball release is encapsuled in a .zip file :-(
+# http://www.acs.com.hk/drivers/eng/ACR38_Driver_Lnx_101_P.zip
+# I'm waiting an answer from info@acs.com.hk about that !
+SRC_URI="http://www.linuxunderground.be/${MY_P}.tar.bz2"
+HOMEPAGE="http://www.acs.com.hk"
+
+# Make this safe from collisions, require a version of pcsc-lite that
+# uses libusb-1.0 and use the wrapper library instead.
+# Changed back from dev-libs/libusb-compat to virtual/libusb:0 because
+# libusb-compat is marked stable and primary in the virtual. -ssuominen
+RDEPEND=">=sys-apps/pcsc-lite-1.6.4
+ virtual/libusb:0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+IUSE=""
+
+src_prepare() {
+ epatch_user
+
+ sed -i -e '/pcdir/s:@prefix@/lib:$(libdir):' src/controllib/Makefile.am
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --enable-static=false \
+ --enable-usbdropdir="${D}/usr/$(get_libdir)/readers/usb"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ prune_libtool_files
+
+ # note: for eudev support this pkg may always need to install rules to /usr
+ udev_newrules "${FILESDIR}"/${PV}.rules 92-pcscd-acr38u.rules
+}
diff --git a/app-crypt/acr38u/acr38u-1.7.11-r3.ebuild b/app-crypt/acr38u/acr38u-1.7.11-r3.ebuild
new file mode 100644
index 000000000000..4c4104b8b7b3
--- /dev/null
+++ b/app-crypt/acr38u/acr38u-1.7.11-r3.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit multilib eutils versionator toolchain-funcs udev autotools-utils
+
+MY_P=ACR38_LINUX_$(get_version_component_range 1)00$(get_version_component_range 2)$(get_version_component_range 3)_P
+
+SLOT="0"
+LICENSE="LGPL-2.1"
+KEYWORDS="~amd64 ~x86"
+DESCRIPTION="Non CCID driver for ACR38 AC1038-based Smart Card Reader"
+
+#SRC_URI="http://www.acs.com.hk/drivers/eng/${MY_P}.tar.bz2"
+# tarball release is encapsuled in a .zip file :-(
+# http://www.acs.com.hk/drivers/eng/ACR38_Driver_Lnx_101_P.zip
+# I'm waiting an answer from info@acs.com.hk about that !
+SRC_URI="http://www.linuxunderground.be/${MY_P}.tar.bz2"
+HOMEPAGE="http://www.acs.com.hk"
+
+# Make this safe from collisions, require a version of pcsc-lite that
+# uses libusb-1.0 and use the wrapper library instead.
+# Changed back from dev-libs/libusb-compat to virtual/libusb:0 because
+# libusb-compat is marked stable and primary in the virtual. -ssuominen
+RDEPEND=">=sys-apps/pcsc-lite-1.6.4
+ virtual/libusb:0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+IUSE=""
+
+AUTOTOOLS_AUTORECONF=yes
+PATCHES=( "${FILESDIR}"/${P}-build.patch )
+
+src_install() {
+ autotools-utils_src_install
+
+ # note: for eudev support this pkg may always need to install rules to /usr
+ udev_newrules "${FILESDIR}"/${PV}-bis.rules 92-pcscd-acr38u.rules
+}
diff --git a/app-crypt/acr38u/files/1.7.11-bis.rules b/app-crypt/acr38u/files/1.7.11-bis.rules
new file mode 100644
index 000000000000..784c606f4044
--- /dev/null
+++ b/app-crypt/acr38u/files/1.7.11-bis.rules
@@ -0,0 +1,15 @@
+# udev rules to set the access rights of non CCID ACR38u smart card readers
+# so they can be used by pcscd
+
+ACTION!="add", GOTO="pcscd_acr38u_rules_end"
+SUBSYSTEM!="usb", GOTO="pcscd_acr38u_rules_end"
+ENV{DEVTYPE}!="usb_device", GOTO="pcscd_acr38u_rules_end"
+
+# change group from default "root" to "pcscd"
+ENV{ID_USB_INTERFACES}=="*:0b0000:*", ENV{PCSCD}="1"
+
+ATTRS{idVendor}=="072f", ATTRS{idProduct}=="9000", ENV{PCSCD}="1"
+ATTRS{idVendor}=="072f", ATTRS{idProduct}=="9006", ENV{PCSCD}="1"
+ATTRS{idVendor}=="072f", ATTRS{idProduct}=="90CF", ENV{PCSCD}="1"
+
+LABEL="pcscd_acr38u_rules_end"
diff --git a/app-crypt/acr38u/files/1.7.11.rules b/app-crypt/acr38u/files/1.7.11.rules
new file mode 100644
index 000000000000..eead6bd200e3
--- /dev/null
+++ b/app-crypt/acr38u/files/1.7.11.rules
@@ -0,0 +1,12 @@
+# udev rules to set the access rights of non CCID ACR38u smart card readers
+# so they can be used by pcscd
+
+ACTION!="add", GOTO="pcscd_acr38u_rules_end"
+SUBSYSTEM!="usb", GOTO="pcscd_acr38u_rules_end"
+ENV{DEVTYPE}!="usb_device", GOTO="pcscd_acr38u_rules_end"
+
+ATTRS{idVendor}=="072f", ATTRS{idProduct}=="9000", ENV{PCSCD}="1"
+ATTRS{idVendor}=="072f", ATTRS{idProduct}=="9006", ENV{PCSCD}="1"
+ATTRS{idVendor}=="072f", ATTRS{idProduct}=="90CF", ENV{PCSCD}="1"
+
+LABEL="pcscd_acr38u_rules_end"
diff --git a/app-crypt/acr38u/files/acr38u-1.7.11-build.patch b/app-crypt/acr38u/files/acr38u-1.7.11-build.patch
new file mode 100644
index 000000000000..374ca2822c1d
--- /dev/null
+++ b/app-crypt/acr38u/files/acr38u-1.7.11-build.patch
@@ -0,0 +1,178 @@
+Index: ACR38_LINUX_100711_P/configure.ac
+===================================================================
+--- ACR38_LINUX_100711_P.orig/configure.ac
++++ ACR38_LINUX_100711_P/configure.ac
+@@ -58,74 +58,21 @@ if test x${debug} = xtrue ; then
+ AC_DEFINE(USBDEBUG, 1, [enable USB debug messaging.])
+ fi
+
+-# --enable-pcscdropdir=DIR ; pcsclite installation directory
+-AC_ARG_ENABLE([pcscdropdir],
+- AS_HELP_STRING([--enable-pcscdropdir=DIR],
+- [installation directory of PCSCLITE (default to PREFIX)]),
+- [pcscdropdir=$enableval],
+- [pcscdropdir=false])
+-
+-if test "${pcscdropdir}" = false ; then
+- if test "$prefix" = NONE ; then
+- pcscdropdir="$ac_default_prefix"
+- else
+- pcscdropdir="$prefix"
+- fi
+-fi
+-
+-# removed by ZETES
+-# AC_SUBST([PKG_PCSC_CONFIG_PATH],[$pcscdropdir/lib/pkgconfig])
+-# removed by ZETES
+-# AC_SUBST([PKG_PCSCLITE],[$pcscdropdir/lib/pkgconfig/libpcsclite.pc])
+-
+-# added by ZETES ...
+-PKG_PCSCLITE="libpcsclite"
+-# ... added by ZETES
+-
+-# Check if pkg-config exists
+-AC_CHECK_PROG([PKGCONFIG], [pkg-config], [yes])
+-if test "$PKGCONFIG" = "yes"; then
+- if ! `pkg-config --print-errors --atleast-version=1.2.0 $PKG_PCSCLITE`
+- then
+- AC_MSG_ERROR([install pcsc-lite 1.2.0 or later])
+- fi
+-fi
+-
+-# Check for libusb 0.1.12
+-PKG_LIBUSB="libusb"
+-if test "$PKGCONFIG" = "yes"; then
+- if ! `pkg-config --print-errors --atleast-version=0.1.12 $PKG_LIBUSB`
+- then
+- AC_MSG_ERROR([install libusb 0.1.12 or later])
+- fi
+-fi
++PKG_INSTALLDIR()
+
+-# --enable-usbdropdir=DIR
+-AC_ARG_ENABLE([usbdropdir],
+- AC_HELP_STRING([--enable-usbdropdir=DIR],
+- [directory containing USB drivers (default to pcscd config or $(prefix)/pcsc/drivers)]),
+- [usbdropdir="${enableval}"],
+- [usbdropdir=false])
+-
+-if test "${usbdropdir}" = false ; then
+- if test "$PKGCONFIG" = yes ; then
+- usbdropdir=`pkg-config $PKG_PCSCLITE --variable=usbdropdir`
+- else
+- usbdropdir=""
+- fi
+- if test -z "$usbdropdir" ; then
++PKG_CHECK_MODULES([PCSCLITE], [libpcsclite >= 1.2.0])
++PKG_CHECK_VAR([USBDROPDIR], [libpcsclite], [usbdropdir], [], [
+ if test "$prefix" = NONE ; then
+- usbdropdir="$ac_default_prefix/pcsc/drivers"
++ USBDROPDIR="$ac_default_prefix/pcsc/drivers"
+ else
+- usbdropdir="$prefix/pcsc/drivers"
++ USBDROPDIR="$prefix/pcsc/drivers"
+ fi
+- fi
+-fi
++ ])
+
+-AC_SUBST(usbdropdir)
++# Check for libusb 0.1.12
++PKG_CHECK_MODULES([LIBUSB], [libusb >= 0.1.12])
+
+-AC_MSG_RESULT([USB drop directory : $usbdropdir])
+-AC_DEFINE_UNQUOTED(PCSCLITE_HP_DROPDIR, "$usbdropdir", [directory containing USB drivers])
++AC_DEFINE_UNQUOTED(PCSCLITE_HP_DROPDIR, "$USBDROPDIR", [directory containing USB drivers])
+
+ #AC_SUBST(CTRLLIBCFLAGS)
+ #AC_SUBST(CTRLLIBLIBS)
+@@ -141,7 +88,7 @@ AC_DEFINE_UNQUOTED(PCSCLITE_HP_DROPDIR,
+
+ # Checks for programs.
+ AC_PROG_CC
+-AC_PROG_LIBTOOL
++AC_PROG_LIBTOOL([disable-static])
+
+ # Checks for libraries.
+ # FIXME: Replace `main' with a function in `-lpcsclite':
+@@ -164,8 +111,8 @@ AC_CHECK_HEADERS([fcntl.h limits.h mallo
+
+ # Setup the compiler and linker flag
+ OLD_CFLAGS=$CFLAGS
+-CFLAGS="$CFLAGS `pkg-config --cflags $PKG_PCSCLITE`"
+-CFLAGS="$CFLAGS `pkg-config --cflags $PKG_LIBUSB`"
++CFLAGS="$CFLAGS $PCSCLITE_CFLAGS"
++CFLAGS="$CFLAGS $LIBUSB_CFLAGS"
+
+ # Check for pcsclite header files
+ # removed by ZETES NO_PCSC_MSG="Please install PCSCLITE 1.2.0 or later before building the driver!!"
+@@ -173,12 +120,6 @@ CFLAGS="$CFLAGS `pkg-config --cflags $PK
+
+ # removed by ZETES CFLAGS=$OLD_CFLAGS
+
+-AC_SUBST(LIBPCSCLITE)
+-LIBPCSCLITE=`pkg-config --libs $PKG_PCSCLITE`
+-
+-AC_SUBST(LIBUSB)
+-LIBUSB=`pkg-config --libs $PKG_LIBUSB`
+-
+ # Select OS specific versions of source files.
+ AC_SUBST(BUNDLE_HOST)
+ AC_SUBST(DYN_LIB_EXT)
+Index: ACR38_LINUX_100711_P/src/controllib/Makefile.am
+===================================================================
+--- ACR38_LINUX_100711_P.orig/src/controllib/Makefile.am
++++ ACR38_LINUX_100711_P/src/controllib/Makefile.am
+@@ -6,7 +6,7 @@
+
+ ACR38_CONTROLLIB = libacr38ucontrol.$(DYN_LIB_EXT)
+
+-AM_CPPFLAGS = -I../driver `pkg-config libpcsclite --cflags`
++AM_CPPFLAGS = -I$(srcdir)/../driver $(PCSCLITE_CFLAGS)
+
+ lib_LTLIBRARIES = libacr38ucontrol.la
+ include_HEADERS = ACS38DrvTools.h
+@@ -16,8 +16,6 @@ SRC_CONTROLLIB = ACS38DrvTools.c \
+ ACS38DrvTools.h
+
+ libacr38ucontrol_la_SOURCES = $(SRC_CONTROLLIB)
+-libacr38ucontrol_la_CFLAGS = `pkg-config libpcsclite --cflags`
++libacr38ucontrol_la_CFLAGS = $(PCSCLITE_CFLAGS)
+
+-#pcdir= $(PKG_PCSC_CONFIG_PATH)
+-pcdir= @prefix@/lib/pkgconfig
+-pc_DATA = libacr38ucontrol.pc
++pkgconfig_DATA = libacr38ucontrol.pc
+Index: ACR38_LINUX_100711_P/src/driver/Makefile.am
+===================================================================
+--- ACR38_LINUX_100711_P.orig/src/driver/Makefile.am
++++ ACR38_LINUX_100711_P/src/driver/Makefile.am
+@@ -9,7 +9,7 @@ DRIVER_LIB_NAME = lib$(DRIVER_NAME).$(DY
+ DRIVER_BUNDLE_DIR = $(DRIVER_NAME).bundle
+ DRIVER_INSTALL_HOME_DIR = pcsc/drivers/$(DRIVER_LIB_NAME).bundle/Contents/Linux
+
+-AM_CPPFLAGS = `pkg-config libpcsclite --cflags`
++AM_CPPFLAGS = $(PCSCLITE_CFLAGS)
+
+ EXTRA_DIST = Info.plist
+
+@@ -34,13 +34,13 @@ SRC_USB = usbserial_linux.c \
+ usbserial_linux.h
+
+ libACR38UDriver_la_SOURCES = $(SRC_DRV) $(SRC_USB)
+-libACR38UDriver_la_LIBADD = @LIBPCSCLITE@ @LIBUSB@ @COREFOUNDATION@ @IOKIT@
++libACR38UDriver_la_LIBADD = @PCSCLITE_LIBS@ @LIBUSB_LIBS@ @COREFOUNDATION@ @IOKIT@
+
+ install: libACR38UDriver.la
+- $(mkinstalldirs) $(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/
+- $(INSTALL) .libs/$(DRIVER_LIB_NAME) $(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/$(DRIVER_NAME)
+- $(INSTALL) Info.plist $(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents
+-# chmod 755 $(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/$(DRIVER_LIB_NAME)
++ $(MKDIR_P) $(DESTDIR)$(USBDROPDIR)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/
++ $(INSTALL) .libs/$(DRIVER_LIB_NAME) $(DESTDIR)$(USBDROPDIR)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/$(DRIVER_NAME)
++ $(INSTALL) $(srcdir)/Info.plist $(DESTDIR)$(USBDROPDIR)/$(DRIVER_BUNDLE_DIR)/Contents
++# chmod 755 $(DESTDIR)$(USBDROPDIR)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/$(DRIVER_LIB_NAME)
+
+ uninstall:
+- rm -rf $(usbdropdir)/$(DRIVER_BUNDLE_DIR)
++ rm -rf $(DESTDIR)$(USBDROPDIR)/$(DRIVER_BUNDLE_DIR)
diff --git a/app-crypt/acr38u/metadata.xml b/app-crypt/acr38u/metadata.xml
new file mode 100644
index 000000000000..662ee8f7211f
--- /dev/null
+++ b/app-crypt/acr38u/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>vincent.hardy.be@gmail.com</email>
+ <description>Proxied maintainer, assign bugs to him</description>
+ </maintainer>
+ <maintainer>
+ <email>flameeyes@gentoo.org</email>
+ <description>Proxy-maintainer, CC him on bugs</description>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/aescrypt/Manifest b/app-crypt/aescrypt/Manifest
new file mode 100644
index 000000000000..1f1d640ce321
--- /dev/null
+++ b/app-crypt/aescrypt/Manifest
@@ -0,0 +1 @@
+DIST aescrypt-3.0.6b.tar.gz 28272 SHA256 88a5efe11ede495688e409807c33c09d3df6595acbbf2639f5a93d0061ca3dfd SHA512 4c88abc9bff50ae5d310be7dad8f29843941843f9b484d9846b08dc76c605940adbb375f7e8ffefd6e8236f35ff860a745f89226e9c171bfa70c28c16aa6626a WHIRLPOOL b8fc56084af1b8296a531ff1bfbf5b70d2ea79cb3a2a0539f21e01d443f549016d52fc73f2e94033d82ec1f6a9e4ef2124d7fd9d1971a6364f91d4e35393db7a
diff --git a/app-crypt/aescrypt/aescrypt-3.0.6b.ebuild b/app-crypt/aescrypt/aescrypt-3.0.6b.ebuild
new file mode 100644
index 000000000000..1f5e2c60f1f8
--- /dev/null
+++ b/app-crypt/aescrypt/aescrypt-3.0.6b.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils toolchain-funcs flag-o-matic
+
+DESCRIPTION="Advanced file encryption using AES"
+HOMEPAGE="http://www.aescrypt.com/"
+SRC_URI="https://www.aescrypt.com/download/v3/${P}.tar.gz"
+
+LICENSE="BSD GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="static"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-build.patch"
+ epatch "${FILESDIR}/${P}-iconv.patch"
+}
+
+src_compile() {
+ if use static; then
+ append-cflags "-DDISABLE_ICONV"
+ append-ldflags "-static"
+ fi
+ emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)"
+}
diff --git a/app-crypt/aescrypt/files/aescrypt-3.0.6b-build.patch b/app-crypt/aescrypt/files/aescrypt-3.0.6b-build.patch
new file mode 100644
index 000000000000..8dac5b4e6f47
--- /dev/null
+++ b/app-crypt/aescrypt/files/aescrypt-3.0.6b-build.patch
@@ -0,0 +1,62 @@
+From ab74ea544739ab044af1e9b398770d31add3b435 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 2 Feb 2013 01:16:03 +0200
+Subject: [PATCH 1/2] build: respect CFLAGS, DESTDIR and permissions
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ Makefile | 18 ++++++++++--------
+ 1 file changed, 10 insertions(+), 8 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index ac661a8..abcdcc4 100644
+--- a/Makefile
++++ b/Makefile
+@@ -17,7 +17,8 @@ CC=gcc
+
+ #The below line is for debugging
+ #CFLAGS=-I. -ggdb -Wall -D_FILE_OFFSET_BITS=64
+-CFLAGS=-Wall -D_FILE_OFFSET_BITS=64
++CFLAGS=-Wall
++EXTRA_CFLAGS=-D_FILE_OFFSET_BITS=64
+
+ LIBS=
+
+@@ -27,10 +28,10 @@ LIBS=
+ all: aescrypt aescrypt_keygen
+
+ aescrypt: aescrypt.o aes.o sha256.o password.o keyfile.o
+- $(CC) $(CFLAGS) $(LIBS) -o $@ $^
++ $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(LIBS) $(LDFLAGS) -o $@ $^
+
+ aescrypt_keygen: aescrypt_keygen.o password.o
+- $(CC) $(CFLAGS) $(LIBS) -o $@ $^
++ $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(LIBS) $(LDFLAGS) -o $@ $^
+
+ test:
+ @$(CC) -DTEST -o sha.test sha256.c
+@@ -48,15 +49,16 @@ testfile: aescrypt
+ cmp test.orig.txt test.txt
+
+ %.o: %.c %.h
+- $(CC) $(CFLAGS) -c $*.c
++ $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -c $*.c
+
+ install: aescrypt
+- install -o root -g root -m 755 aescrypt /usr/bin
+- install -o root -g root -m 755 aescrypt_keygen /usr/bin
++ install -m 755 -d $(DESTDIR)/usr/bin
++ install -m 755 aescrypt $(DESTDIR)/usr/bin
++ install -m 755 aescrypt_keygen $(DESTDIR)/usr/bin
+
+ uninstall:
+- rm -f /usr/bin/aescrypt
+- rm -f /usr/bin/aescrypt_keygen
++ rm -f $(DESTDIR)/usr/bin/aescrypt
++ rm -f $(DESTDIR)/usr/bin/aescrypt_keygen
+
+ clean:
+ rm -f *.o aescrypt aescrypt_keygen test* *test
+--
+1.7.12.4
+
diff --git a/app-crypt/aescrypt/files/aescrypt-3.0.6b-iconv.patch b/app-crypt/aescrypt/files/aescrypt-3.0.6b-iconv.patch
new file mode 100644
index 000000000000..616e87e38d61
--- /dev/null
+++ b/app-crypt/aescrypt/files/aescrypt-3.0.6b-iconv.patch
@@ -0,0 +1,40 @@
+From 337cc9367a3cb4450eee245c6ceb615d0f05499d Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 2 Feb 2013 01:18:08 +0200
+Subject: [PATCH 2/2] build: support disable iconv for static build
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ password.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/password.c b/password.c
+index 9a2c1f8..dee79da 100644
+--- a/password.c
++++ b/password.c
+@@ -232,6 +232,15 @@ int passwd_to_utf16(unsigned char *in_passwd,
+ size_t ic_inbytesleft,
+ ic_outbytesleft;
+
++#ifdef DISABLE_ICONV
++ /* support only latin */
++ int i;
++ for (i=0;i<length+1;i++) {
++ out_passwd[i*2] = in_passwd[i];
++ out_passwd[i*2+1] = 0;
++ }
++ return length*2;
++#else
+ /* Max length is specified in character, but this function deals
+ * with bytes. So, multiply by two since we are going to create a
+ * UTF-16 string.
+@@ -273,5 +282,6 @@ int passwd_to_utf16(unsigned char *in_passwd,
+ }
+ iconv_close(condesc);
+ return (max_length - ic_outbytesleft);
++#endif
+ }
+
+--
+1.7.12.4
+
diff --git a/app-crypt/aescrypt/metadata.xml b/app-crypt/aescrypt/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/aescrypt/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/aespipe/Manifest b/app-crypt/aespipe/Manifest
new file mode 100644
index 000000000000..8816155839ec
--- /dev/null
+++ b/app-crypt/aespipe/Manifest
@@ -0,0 +1,2 @@
+DIST aespipe-v2.3e.tar.bz2 91752 SHA256 4e63a5709fdd0bffdb555582f9fd7a0bd1842e429420159accaf7f60c5d3c70f SHA512 e62f1f7a8f595066142f626dfd928106b4057c3e5f129bb31057af4e4a9412b4def60afffac72083621334449d627424fb661ef11a426015b0b0c232aa3ce648 WHIRLPOOL 3564aedeeb7e16a9cf10ceb13d15aaf3350b39ff8eb771d23d59029c8676b27bccee4098644d7e3d457af6866e045bec1cdfdf16f3941a831c0ec0b90897d08a
+DIST aespipe-v2.4c.tar.bz2 106608 SHA256 260190beea911190a839e711f610ec3454a9b13985d35479775b7e26ad4c845e SHA512 6738c019e4c1e5377650f9a982b328ce38e127ebe838cfe61c7d3fad878eaf0a4fd051d32897eb4c2ff33f94669203ccba25fc246405b50f9ac24fdf5d2831cf WHIRLPOOL a9c99f45313fa427e3a4227a3a8b8035c031937851e30fb5a31e8409bef25990497ce3f1b32e0e93c184a6d5549fa2a5e31185790a531350d6774df041c6f5e9
diff --git a/app-crypt/aespipe/aespipe-2.3e.ebuild b/app-crypt/aespipe/aespipe-2.3e.ebuild
new file mode 100644
index 000000000000..9bef38d6d18c
--- /dev/null
+++ b/app-crypt/aespipe/aespipe-2.3e.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit flag-o-matic
+
+DESCRIPTION="Encrypts data from stdin to stdout"
+HOMEPAGE="http://loop-aes.sourceforge.net"
+SRC_URI="http://loop-aes.sourceforge.net/aespipe/${PN}-v${PV}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm ppc ppc64 sparc x86 ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris"
+IUSE="static"
+DEPEND=""
+RDEPEND="app-arch/sharutils"
+
+S="${WORKDIR}/${PN}-v${PV}"
+
+src_compile() {
+ use static && append-ldflags -static
+ econf || die
+ emake || die
+}
+
+src_install() {
+ dobin aespipe bz2aespipe
+ dodoc README
+ doman aespipe.1
+}
diff --git a/app-crypt/aespipe/aespipe-2.4c-r1.ebuild b/app-crypt/aespipe/aespipe-2.4c-r1.ebuild
new file mode 100644
index 000000000000..62ceb09ad12c
--- /dev/null
+++ b/app-crypt/aespipe/aespipe-2.4c-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit flag-o-matic
+
+DESCRIPTION="Encrypts data from stdin to stdout"
+HOMEPAGE="http://loop-aes.sourceforge.net"
+SRC_URI="http://loop-aes.sourceforge.net/aespipe/${PN}-v${PV}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86 ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris"
+IUSE="+asm cpu_flags_x86_aes cpu_flags_x86_padlock static"
+DEPEND=""
+RDEPEND="app-arch/sharutils
+ app-crypt/gnupg"
+
+S="${WORKDIR}/${PN}-v${PV}"
+
+src_configure() {
+ use static && append-ldflags -static
+ econf \
+ $(use_enable asm) \
+ $(use_enable cpu_flags_x86_aes intelaes) \
+ $(use_enable cpu_flags_x86_padlock padlock)
+}
diff --git a/app-crypt/aespipe/metadata.xml b/app-crypt/aespipe/metadata.xml
new file mode 100644
index 000000000000..7e01eb4b56dd
--- /dev/null
+++ b/app-crypt/aespipe/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<use>
+ <flag name='asm'>Enable assebly modules</flag>
+ <flag name='cpu_flags_x86_padlock'>Use VIA padlock instructions,
+ detected at run time, code still works on non-padlock processors</flag>
+</use>
+</pkgmetadata>
diff --git a/app-crypt/aesutil/Manifest b/app-crypt/aesutil/Manifest
new file mode 100644
index 000000000000..20c279d2b244
--- /dev/null
+++ b/app-crypt/aesutil/Manifest
@@ -0,0 +1 @@
+DIST aes-1.0.7.tar.gz 34165 SHA256 729bdefff0a614229ffd1a8fd3c299f9e8568a8bf2bf78979376cc0b7ad52a19 SHA512 df2cc6c0aa38e648332b64cab8e712164d28a670a5e4d397918cf9e5faabdaa5d68d9f4e501885b990da98254383ee466e5c374a30e1c00411e8be88884eacf5 WHIRLPOOL 1458bd44117d0e3327adcc7d9fb2380ab245608aec73eb260ac8080cd0b81d878d1411acdf83604fcfbb3d495950824ea489bed9112b5d3c6214f95a2713a056
diff --git a/app-crypt/aesutil/aesutil-1.0.7.ebuild b/app-crypt/aesutil/aesutil-1.0.7.ebuild
new file mode 100644
index 000000000000..acb5e233b0c0
--- /dev/null
+++ b/app-crypt/aesutil/aesutil-1.0.7.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit toolchain-funcs
+
+MY_P="${PN/util/}-${PV}"
+DESCRIPTION="Command line program ('aes') to encrypt and decrypt data using the Rijndael algorithm"
+HOMEPAGE="http://my.cubic.ch/users/timtas/aes/"
+SRC_URI="http://my.cubic.ch/users/timtas/aes/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 hppa ppc ~ppc64 sparc x86 ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ sed -e "/^CFLAGS/s:-g -Wall:${CFLAGS}:" Makefile.linux > Makefile \
+ || die "Sed failed"
+ sed -i -e "/^LDFLAGS/s:-g:${LDFLAGS}:" Makefile || die "Sed failed"
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" || die
+}
+
+src_install() {
+ dobin aes || die
+ dodoc CHANGES INSTALL README TODO || die
+}
diff --git a/app-crypt/aesutil/metadata.xml b/app-crypt/aesutil/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/aesutil/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/af_alg/Manifest b/app-crypt/af_alg/Manifest
new file mode 100644
index 000000000000..da2c017ffb21
--- /dev/null
+++ b/app-crypt/af_alg/Manifest
@@ -0,0 +1 @@
+DIST af_alg-7b13512edbd77c35d20edb4e53d5d83eeaf05d52.tar.gz 5362 SHA256 5fd78ccf5f815ac89d55bf53db6a41a720100325e2ecb7dd7c2b459d30bee88d SHA512 c897a64ce12c5ecbdf8147a8776b646b9fed7d012cbc913e1f047eff4dd81fe1783733d64e711ab3702923b57055e4ca923cdf4f90bef6a4868f803be11239ca WHIRLPOOL 53c1972c01833f7a4151f1613095a53a5fe46ed162296c2a082b1c647e038c1367c70a3dfdb4399e3ce2244d7b3a544614805e0f40a69b63ae2cb996d7dd3d61
diff --git a/app-crypt/af_alg/af_alg-0_pre20120229.ebuild b/app-crypt/af_alg/af_alg-0_pre20120229.ebuild
new file mode 100644
index 000000000000..fbf16e4df78b
--- /dev/null
+++ b/app-crypt/af_alg/af_alg-0_pre20120229.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs multilib
+
+COMMIT_ID=7b13512edbd77c35d20edb4e53d5d83eeaf05d52
+
+DESCRIPTION="AF_ALG for OpenSSL"
+HOMEPAGE="http://carnivore.it/2011/04/23/openssl_-_af_alg"
+
+MY_P="$PN-${COMMIT_ID}"
+SRC_URI="http://src.carnivore.it/users/common/af_alg/snapshot/${MY_P}.tar.gz"
+
+LICENSE="openssl"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="dev-libs/openssl"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_compile() {
+ $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wall -fPIC \
+ -shared -Wl,-soname,libaf_alg.so -lcrypto -o libaf_alg.so \
+ e_af_alg.c
+}
+
+src_install() {
+ exeinto /usr/$(get_libdir)/engines
+ doexe libaf_alg.so
+ dodoc README
+}
diff --git a/app-crypt/af_alg/metadata.xml b/app-crypt/af_alg/metadata.xml
new file mode 100644
index 000000000000..7bb3d5a0ddaa
--- /dev/null
+++ b/app-crypt/af_alg/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+<email>robbat2@gentoo.org</email>
+<name>Robin H. Johnson</name>
+</maintainer>
+<longdescription lang="en">
+af_alg implements an OpenSSL engine that uses the AF_ALG functionailty found in
+kernel >= 2.6.38 for crypto offload. Be sure to actually check if it's faster,
+as for many modern systems, userspace software implementations are actually
+faster, as they avoid a kernel context switch. However, on embedded systems and
+others with crypto hardware, AF_ALG may be faster. The homepage has more
+details.
+</longdescription>
+</pkgmetadata>
+
diff --git a/app-crypt/asedriveiiie-serial/Manifest b/app-crypt/asedriveiiie-serial/Manifest
new file mode 100644
index 000000000000..a433234ec628
--- /dev/null
+++ b/app-crypt/asedriveiiie-serial/Manifest
@@ -0,0 +1 @@
+DIST asedriveiiie-serial-3.5.tar.bz2 32461 SHA256 77743ecb79f08ebd70d9c254d4fd35331eaa06bef528cc813ecdbb378b274120 SHA512 b74ea2225990c36e86d106fa7e9e844e1f99d87f9869416faf3dfaa1ecaca34b4bdd4e5887746c6b039de325e03ede3ee78aadeaf20d0fabc8deba48a72a93b3 WHIRLPOOL 1adacde0df7dbedf5edb120dfaff9b341c40b5220467412ce58e04fc6a7dd7083b7b757305aa86cc2e2492e54a39f732c068f1f0fabe8bd711a21dea0bf3c211
diff --git a/app-crypt/asedriveiiie-serial/asedriveiiie-serial-3.5.ebuild b/app-crypt/asedriveiiie-serial/asedriveiiie-serial-3.5.ebuild
new file mode 100644
index 000000000000..f2047fd1a927
--- /dev/null
+++ b/app-crypt/asedriveiiie-serial/asedriveiiie-serial-3.5.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="ASEDriveIIIe Serial Card Reader"
+HOMEPAGE="http://www.athena-scs.com"
+SRC_URI="http://www.athena-scs.com/downloads/${P}.tar.bz2"
+LICENSE="BSD"
+SLOT="0"
+IUSE=""
+KEYWORDS="~amd64 ~x86"
+RDEPEND=">=sys-apps/pcsc-lite-1.3.0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_install() {
+ local conf="/etc/reader.conf.d/${PN}.conf"
+
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ dodoc ChangeLog README
+
+ dodir "$(dirname "${conf}")"
+ insinto "$(dirname "${conf}")"
+ newins "etc/reader.conf" "$(basename "${conf}")"
+}
+
+pkg_postinst() {
+ elog "NOTICE:"
+ elog "1. Update ${conf} file"
+ elog "2. Run update-reader.conf, yes this is a command..."
+ elog "3. Restart pcscd"
+}
+
+pkg_postrm() {
+ #
+ # Without this, pcscd will not start next time.
+ #
+ local conf="/etc/reader.conf.d/${PN}.conf"
+ if ! [ -f "$(grep LIBPATH "${conf}" | sed 's/LIBPATH *//' | sed 's/ *$//g' | head -n 1)" ]; then
+ rm "${conf}"
+ update-reader.conf
+ elog "NOTICE:"
+ elog "You need to restart pcscd"
+ fi
+}
diff --git a/app-crypt/asedriveiiie-serial/metadata.xml b/app-crypt/asedriveiiie-serial/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/asedriveiiie-serial/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/asedriveiiie-usb/Manifest b/app-crypt/asedriveiiie-usb/Manifest
new file mode 100644
index 000000000000..079f0c855b5b
--- /dev/null
+++ b/app-crypt/asedriveiiie-usb/Manifest
@@ -0,0 +1 @@
+DIST asedriveiiie-usb-3.5.tar.bz2 32595 SHA256 3cbdb3491422678fba970a2364c9aba71fa463e6f2fc2321c0618cdd311cc3a2 SHA512 aa718a1f4b28c9186e120bb8e2216389a8a9f54ac3f299a9cd72c398594fcf23229ac4a14e5358cc02e6fcd2ce3abe0e1e4125e4dac8d302bdc325a3f410744f WHIRLPOOL adc59ccffecd9c82caa02496164c1d93b0354e0beb950a6111de482ad5a63ca801173f83d60045e79ffa200353863af748fe39b4507a0e7f701173ba5d3ab2a5
diff --git a/app-crypt/asedriveiiie-usb/asedriveiiie-usb-3.5.ebuild b/app-crypt/asedriveiiie-usb/asedriveiiie-usb-3.5.ebuild
new file mode 100644
index 000000000000..4f56b014daae
--- /dev/null
+++ b/app-crypt/asedriveiiie-usb/asedriveiiie-usb-3.5.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="ASEDriveIIIe USB Card Reader"
+HOMEPAGE="http://www.athena-scs.com"
+SRC_URI="http://www.athena-scs.com/downloads/${P}.tar.bz2"
+LICENSE="BSD"
+SLOT="0"
+IUSE=""
+KEYWORDS="~amd64 ~x86"
+RDEPEND=">=sys-apps/pcsc-lite-1.3.0
+ =virtual/libusb-0*"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ dodoc ChangeLog README
+}
+
+pkg_postinst() {
+ elog "NOTICE:"
+ elog "You should restart pcscd."
+}
diff --git a/app-crypt/asedriveiiie-usb/metadata.xml b/app-crypt/asedriveiiie-usb/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/asedriveiiie-usb/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/asekey/Manifest b/app-crypt/asekey/Manifest
new file mode 100644
index 000000000000..4f8d7a57444c
--- /dev/null
+++ b/app-crypt/asekey/Manifest
@@ -0,0 +1 @@
+DIST asekey-3.7.tar.bz2 33304 SHA256 5561c54d0629489fcf689ebacc4f8bc3b6305b02ef5675a5d9669dc6669fd6e7 SHA512 29a01f8250d5fb26a4ba2aca562211cadf403c9e986f9fa6930faf477c374e13095c025b2917e6e837cbe8d83f3a3e023a527598b151ef1c704247c7e7c40647 WHIRLPOOL 3e38ef00b20abca33a980b0ffe05db9469945a574b3e71f9c4dbbea87a41857b9a0a69db748698ed368dcb5e34989c6b917b3c39c2e55f4a26e9923cafbc5149
diff --git a/app-crypt/asekey/asekey-3.7.ebuild b/app-crypt/asekey/asekey-3.7.ebuild
new file mode 100644
index 000000000000..d546b09f4e8b
--- /dev/null
+++ b/app-crypt/asekey/asekey-3.7.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils udev
+
+DESCRIPTION="ASEKey USB SIM Card Reader"
+HOMEPAGE="http://www.athena-scs.com/"
+SRC_URI="${HOMEPAGE}/docs/reader-drivers/${PN}-${PV/./-}-tar.bz2 -> ${P}.tar.bz2"
+LICENSE="BSD LGPL-2.1"
+
+SLOT="0"
+IUSE=""
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="sys-apps/pcsc-lite[udev]"
+RDEPEND="${RDEPEND}
+ virtual/libusb:0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-bundle.patch"
+ sed -i -e 's/GROUP="pcscd"/ENV{PCSCD}="1"/' "92_pcscd_${PN}.rules" || die
+}
+
+src_configure() {
+ econf --with-udev-rules-dir="$(get_udevdir)/rules.d"
+}
+
+src_install() {
+ default
+ dodoc ChangeLog README
+}
diff --git a/app-crypt/asekey/files/asekey-3.7-bundle.patch b/app-crypt/asekey/files/asekey-3.7-bundle.patch
new file mode 100644
index 000000000000..fd233001718e
--- /dev/null
+++ b/app-crypt/asekey/files/asekey-3.7-bundle.patch
@@ -0,0 +1,24 @@
+diff --git a/Info.plist b/Info.plist
+index ed473da..9d59815 100644
+--- a/Info.plist
++++ b/Info.plist
+@@ -14,6 +14,7 @@
+ <string>ASEKey</string>
+ <string>ASEKey</string>
+ </array>
++ <key>CFBundleExecutable</key>
+ <array>
+ <string>libASEKey.so</string>
+ <string>libASEKey.so</string>
+diff --git a/Makefile b/Makefile
+index 285ceff..1b06fd1 100644
+--- a/Makefile
++++ b/Makefile
+@@ -28,7 +28,6 @@ clean:
+
+ install: all
+ install -c -d "${DRIVER_DIR}/Contents/${KERNEL_NAME}"
+- install -c -m 0755 libASEKey.so "${DRIVER_DIR}"
+ install -c -m 0644 Info.plist "${DRIVER_DIR}/Contents/"
+ install -c -m 0755 libASEKey.so "${DRIVER_DIR}/Contents/${KERNEL_NAME}"
+ install -c -d "${UDEV_DIR}"
diff --git a/app-crypt/asekey/metadata.xml b/app-crypt/asekey/metadata.xml
new file mode 100644
index 000000000000..b02ffbb5d348
--- /dev/null
+++ b/app-crypt/asekey/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/bcrypt/Manifest b/app-crypt/bcrypt/Manifest
new file mode 100644
index 000000000000..2e9b9ad082e3
--- /dev/null
+++ b/app-crypt/bcrypt/Manifest
@@ -0,0 +1 @@
+DIST bcrypt-1.1.tar.gz 36781 SHA256 b9c1a7c0996a305465135b90123b0c63adbb5fa7c47a24b3f347deb2696d417d SHA512 4cc939e997b125b48a66c20469d9743ec227dbee080d89b1ab2515a3c41749c6e8fb6d2d4276cd23eaf6bed0614989431f1f87c23220a94ad595024f8985d68b WHIRLPOOL 9ff061cb2aba0e7cca7ba131ee2789b4136b9251a6704f3713eb897a549a6619e38b9efcced9647d17aa4eb9baea80cb477af53cbfdc9e21cc96079127412a94
diff --git a/app-crypt/bcrypt/bcrypt-1.1.ebuild b/app-crypt/bcrypt/bcrypt-1.1.ebuild
new file mode 100644
index 000000000000..07266aa2a6a8
--- /dev/null
+++ b/app-crypt/bcrypt/bcrypt-1.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A file encryption utility using Paul Kocher's implementation of the blowfish algorithm"
+HOMEPAGE="http://bcrypt.sourceforge.net/"
+SRC_URI="mirror://sourceforge/bcrypt/${P}.tar.gz"
+SLOT="0"
+LICENSE="BSD"
+KEYWORDS="alpha amd64 ppc sparc x86 ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE=""
+DEPEND="sys-libs/zlib"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ epatch "${FILESDIR}"/${P}-Makefile.patch
+}
+
+src_compile() {
+ tc-export CC
+ emake || die
+}
+
+src_install() {
+ dobin bcrypt || die
+ dodoc README || die
+ doman bcrypt.1 || die
+}
diff --git a/app-crypt/bcrypt/files/bcrypt-1.1-Makefile.patch b/app-crypt/bcrypt/files/bcrypt-1.1-Makefile.patch
new file mode 100644
index 000000000000..1b210392427e
--- /dev/null
+++ b/app-crypt/bcrypt/files/bcrypt-1.1-Makefile.patch
@@ -0,0 +1,19 @@
+--- Makefile.old 2006-11-23 13:58:19.000000000 +0100
++++ Makefile 2006-11-23 13:59:52.000000000 +0100
+@@ -1,13 +1,12 @@
+ DEFAULTS = Makefile includes.h blowfish.h functions.h config.h
+-CC = gcc
+-CFLAGS = -O2 -Wall
++CFLAGS += -Wall
+ COMPILE = ${CC} ${CFLAGS}
+ OBJS = main.o blowfish.o rwfile.o keys.o wrapbf.o endian.o wrapzl.o
+-LDFLAGS = -L/usr/local/lib -lz
++LIBS = -lz
+ PREFIX = /usr/local
+
+ bcrypt: ${OBJS} Makefile
+- ${COMPILE} -o bcrypt ${OBJS} ${LDFLAGS}
++ ${COMPILE} ${LDFLAGS} -o bcrypt ${OBJS} ${LIBS}
+
+ install: bcrypt Makefile
+ mkdir -p ${PREFIX}/bin;\
diff --git a/app-crypt/bcrypt/metadata.xml b/app-crypt/bcrypt/metadata.xml
new file mode 100644
index 000000000000..eb17ed1ab0b2
--- /dev/null
+++ b/app-crypt/bcrypt/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <upstream>
+ <remote-id type="sourceforge">bcrypt</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/bcwipe/Manifest b/app-crypt/bcwipe/Manifest
new file mode 100644
index 000000000000..49a47b5ab22b
--- /dev/null
+++ b/app-crypt/bcwipe/Manifest
@@ -0,0 +1,2 @@
+DIST BCWipe-1.9-8.tar.gz 131414 SHA256 6f5261716da15e3df07569ca2516334f7d132f0069420082fc71faf2aaf04fc0 SHA512 fe0b72b5279f8dc85c7ac2bee9c3b4ba13df542750faa25556b4a9a03eff323a5822e9e736440e4677c6aa6011a9ecf02acb51b7e934b30f4354826e798d7aa2 WHIRLPOOL 28fbf43435433a4858813329d474dd67e61af615616f9a3283e4b98b7bf9bdebd7ce84c1c787d4ba08a9f7f8ae53293c331cd2bcef3321c0de4ea932a570d618
+DIST BCWipe.doc.tgz 21218 SHA256 afa50bf8653bb6bee108f0ae8b3dc35d289dde3d5c513b7e9ae7fe373635df4f SHA512 5aa402669ded46b6dc680293f18aea4ab20a7d6b7d9d7bf8e63003e557b953e8f8019431ea69d96d2236121e754bc456b3700a0895f4fff0573d2e9bac2e2ee3 WHIRLPOOL 2f6475d9395d2424cbabb046085ce0a016ecad4e76f195e51fb385e57f68f13313587b52c2776ad29798b682eaa8503bae4186029b698a2405f08187180a904f
diff --git a/app-crypt/bcwipe/bcwipe-1.9.8.ebuild b/app-crypt/bcwipe/bcwipe-1.9.8.ebuild
new file mode 100644
index 000000000000..791fe6542845
--- /dev/null
+++ b/app-crypt/bcwipe/bcwipe-1.9.8.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+
+inherit eutils versionator
+
+MY_PV="$(replace_version_separator 2 -)"
+
+DESCRIPTION="Secure file removal utility"
+HOMEPAGE="http://www.jetico.com/"
+SRC_URI="http://www.jetico.com/linux/BCWipe-${MY_PV}.tar.gz
+ doc? ( http://www.jetico.com/linux/BCWipe.doc.tgz )"
+
+LICENSE="bestcrypt"
+SLOT="0"
+IUSE="doc"
+KEYWORDS="amd64 ppc x86"
+
+DEPEND=""
+RDEPEND=""
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.9.7-fix_warnings.patch \
+ "${FILESDIR}"/${P}-fix-flags.patch
+}
+
+src_test() {
+ echo "abc123" >> testfile
+ ./bcwipe -f testfile || die "bcwipe test failed"
+ [[ -f testfile ]] && die "test file still exists. bcwipe should have deleted it"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ if use doc ; then
+ dohtml -r ../bcwipe-help || die "dohtml failed"
+ fi
+}
+
+pkg_postinst() {
+ ewarn "The BestCrypt drivers are not free - Please purchace a license from "
+ ewarn "http://www.jetico.com/"
+ ewarn "full details /usr/share/doc/${PF}/html/bcwipe-help/wu_licen.htm"
+}
diff --git a/app-crypt/bcwipe/files/bcwipe-1.9.7-fix_warnings.patch b/app-crypt/bcwipe/files/bcwipe-1.9.7-fix_warnings.patch
new file mode 100644
index 000000000000..f24a6acdb600
--- /dev/null
+++ b/app-crypt/bcwipe/files/bcwipe-1.9.7-fix_warnings.patch
@@ -0,0 +1,20 @@
+--- schemes.c
++++ schemes.c
+@@ -15,6 +15,7 @@
+ *
+ *******************************************************************/
+ #include "config.h"
++#include <ctype.h>
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <errno.h>
+--- wipe.c
++++ wipe.c
+@@ -42,6 +42,7 @@
+ #include <sys/ioctl.h>
+ #include <signal.h>
+ #include <time.h>
++#include <sys/time.h>
+ #include <ctype.h>
+
+ #if HAVE_SYS_DISKIO_H /* HP-UX */
diff --git a/app-crypt/bcwipe/files/bcwipe-1.9.8-fix-flags.patch b/app-crypt/bcwipe/files/bcwipe-1.9.8-fix-flags.patch
new file mode 100644
index 000000000000..ac91518e0270
--- /dev/null
+++ b/app-crypt/bcwipe/files/bcwipe-1.9.8-fix-flags.patch
@@ -0,0 +1,11 @@
+--- Makefile.in 2011-02-23 01:07:29.841894634 +0100
++++ Makefile.in 2011-02-23 01:07:46.626793943 +0100
+@@ -174,7 +174,7 @@
+ bcwipe_SOURCES = wipe.c wipe.h options.c options.h schemes.c schemes.h sha1.c sha1.h sha1random.c sha1random.h log.c log.h standard.h rand.h rand.c prng.c
+ man_MANS = bcwipe.1
+ EXTRA_DIST = $(man_MANS) bcwipe.spec.in osxpkg.sh.in
+-AM_CFLAGS = -g -D_LARGE_FILES -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
++AM_CFLAGS = -D_LARGE_FILES -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
+ all: config.h
+ $(MAKE) $(AM_MAKEFLAGS) all-am
+
diff --git a/app-crypt/bcwipe/metadata.xml b/app-crypt/bcwipe/metadata.xml
new file mode 100644
index 000000000000..b02ffbb5d348
--- /dev/null
+++ b/app-crypt/bcwipe/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/bestcrypt/Manifest b/app-crypt/bestcrypt/Manifest
new file mode 100644
index 000000000000..2a80a6db5aea
--- /dev/null
+++ b/app-crypt/bestcrypt/Manifest
@@ -0,0 +1,3 @@
+DIST BestCrypt-2.0-0.tar.gz 1999791 SHA256 53007d398d137426cb7e24a98d32a8227d5ad20bca623ba9a9ac125f34971df7 SHA512 ccd0b6d91947808cc5396355d3c1e62260b537cd7e4f236017e009a7ecc64c9a7fdf53a937538c9e02c1e303c0b962c9d5debbb37cd8b24ead34aaf33fb6b9e5 WHIRLPOOL 74e04c297664cb3080ec83d1c9791bca61ce72e065462ca0f7f77a69b0c5828814598f9778a6d4c9669f09c431ba365e8d00defa674f4f172fc90677815ff984
+DIST BestCrypt-2.0-4.tar.gz 2024711 SHA256 041b3c3766c921583b8e89a9437b7486653b68fc20517a11fca18468ff203335 SHA512 62d2c6204ad0cc0b0b081cfdae082ae0b54ed958a9bb5d81f4ff7c3b0882d64169d179ed8b421f19976eb76ea40b6da97b8ada798a0ea3360847c113f908d019 WHIRLPOOL b4dc6a0c39ce5e8ac41b9cd24a1ddb92718769c81cd2ce1c8ed6cf1fb1408c01b76f425fab9ca25808690fe7cae8df7d5d50a3efc2f4d9bc32374794f2cbf05b
+DIST BestCrypt-2.0.6.tar.gz 2060735 SHA256 e0286b7dfc662a480340845648a3afdcf9b2f2e38d9b327bc8adf7efa50fc4e0 SHA512 392fc8067099ae046b54ef695b49c9722a30e0a0c66953da51aa0881a306fe2a9e10e1bc6084b20e904a7830eb998c4f44da5813b9951c74e1cd3893689457d3 WHIRLPOOL d2c4e764f2e2b4b7f15c777ac3b84771e29a7a79cd4d6a8b19f6c3c7cd15c11f5a5ec6969d5194d655e9f90a08d7f2826d7e478ba333b5835bb8068fa89bf8d9
diff --git a/app-crypt/bestcrypt/bestcrypt-2.0.0.ebuild b/app-crypt/bestcrypt/bestcrypt-2.0.0.ebuild
new file mode 100644
index 000000000000..ad0824247af2
--- /dev/null
+++ b/app-crypt/bestcrypt/bestcrypt-2.0.0.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils linux-mod toolchain-funcs versionator
+
+MY_PN="bcrypt"
+MY_PV="$(replace_version_separator 2 -)"
+DESCRIPTION="commercially licensed transparent filesystem encryption"
+HOMEPAGE="http://www.jetico.com/"
+SRC_URI="http://www.jetico.com/linux/BestCrypt-${MY_PV}.tar.gz"
+
+LICENSE="bestcrypt"
+SLOT="0"
+IUSE=""
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="virtual/linux-sources"
+RDEPEND=""
+
+S="${WORKDIR}/${MY_PN}-${MY_PV}"
+
+pkg_setup() {
+ CONFIG_CHECK="MODULES"
+ linux-mod_pkg_setup
+
+ MODULE_NAMES="bestcrypt(block::kernel/kmod)
+ bc_3des(crypto::kernel/kmod/crypto/algs/3des)
+ bc_bf128(crypto::kernel/kmod/crypto/algs/bf128)
+ bc_bf448(crypto::kernel/kmod/crypto/algs/bf448)
+ bc_blowfish(crypto::kernel/kmod/crypto/algs/blowfish)
+ bc_cast(crypto::kernel/kmod/crypto/algs/cast)
+ bc_des(crypto::kernel/kmod/crypto/algs/des)
+ bc_gost(crypto::kernel/kmod/crypto/algs/gost)
+ bc_idea(crypto::kernel/kmod/crypto/algs/idea)
+ bc_rijn(crypto::kernel/kmod/crypto/algs/rijn)"
+ BUILD_TARGETS="module"
+ BUILD_PARAMS=" \
+ KERNEL_DIR=\"${KV_DIR}\""
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-build.patch"
+}
+
+src_compile() {
+ MAKEOPTS="-j1" linux-mod_src_compile
+ MAKEOPTS="-j1" emake \
+ CFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ linux-mod_src_install
+
+ emake install PREFIX="${ED}" install
+
+ newinitd "${FILESDIR}/bcrypt3" bcrypt
+ sed -e '/\(bc_rc6\|bc_serpent\|bc_twofish\)/d' -i "${D}etc/init.d/bcrypt"
+ dodoc HIDDEN_PART README
+}
+
+pkg_postinst() {
+ ewarn
+ ewarn "The BestCrypt drivers are not free - Please purchace a license from "
+ ewarn "http://www.jetico.com/"
+ ewarn
+
+ linux-mod_pkg_postinst
+}
diff --git a/app-crypt/bestcrypt/bestcrypt-2.0.4.ebuild b/app-crypt/bestcrypt/bestcrypt-2.0.4.ebuild
new file mode 100644
index 000000000000..9ea8eb819602
--- /dev/null
+++ b/app-crypt/bestcrypt/bestcrypt-2.0.4.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils linux-mod toolchain-funcs versionator
+
+MY_PN="bcrypt"
+MY_PV="$(replace_version_separator 2 -)"
+DESCRIPTION="commercially licensed transparent filesystem encryption"
+HOMEPAGE="http://www.jetico.com/"
+SRC_URI="http://www.jetico.com/linux/BestCrypt-${MY_PV}.tar.gz"
+
+LICENSE="bestcrypt"
+SLOT="0"
+IUSE=""
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="virtual/linux-sources"
+RDEPEND=""
+
+S="${WORKDIR}/${MY_PN}-${MY_PV}"
+
+pkg_setup() {
+ CONFIG_CHECK="MODULES"
+ linux-mod_pkg_setup
+
+ MODULE_NAMES="bestcrypt(block::kernel/kmod)
+ bc_3des(crypto::kernel/kmod/crypto/algs/3des)
+ bc_bf128(crypto::kernel/kmod/crypto/algs/bf128)
+ bc_bf448(crypto::kernel/kmod/crypto/algs/bf448)
+ bc_blowfish(crypto::kernel/kmod/crypto/algs/blowfish)
+ bc_cast(crypto::kernel/kmod/crypto/algs/cast)
+ bc_des(crypto::kernel/kmod/crypto/algs/des)
+ bc_gost(crypto::kernel/kmod/crypto/algs/gost)
+ bc_idea(crypto::kernel/kmod/crypto/algs/idea)
+ bc_rijn(crypto::kernel/kmod/crypto/algs/rijn)"
+ BUILD_TARGETS="module"
+ BUILD_PARAMS=" \
+ BC_KERNEL_DIR=\"${KERNEL_DIR}\""
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-build.patch"
+}
+
+src_compile() {
+ MAKEOPTS="-j1" linux-mod_src_compile
+ MAKEOPTS="-j1" emake \
+ CFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ linux-mod_src_install
+
+ emake install PREFIX="${ED}" install
+
+ newinitd "${FILESDIR}/bcrypt3" bcrypt
+ sed -e '/\(bc_rc6\|bc_serpent\|bc_twofish\)/d' -i "${D}etc/init.d/bcrypt"
+ dodoc HIDDEN_PART README
+}
+
+pkg_postinst() {
+ ewarn
+ ewarn "The BestCrypt drivers are not free - Please purchace a license from "
+ ewarn "http://www.jetico.com/"
+ ewarn
+
+ linux-mod_pkg_postinst
+}
diff --git a/app-crypt/bestcrypt/bestcrypt-2.0.6.ebuild b/app-crypt/bestcrypt/bestcrypt-2.0.6.ebuild
new file mode 100644
index 000000000000..7dfc7d64ac54
--- /dev/null
+++ b/app-crypt/bestcrypt/bestcrypt-2.0.6.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils linux-mod toolchain-funcs versionator
+
+MY_PN="BestCrypt"
+DESCRIPTION="commercially licensed transparent filesystem encryption"
+HOMEPAGE="http://www.jetico.com/"
+SRC_URI="http://www.jetico.com/linux/${MY_PN}-${PV}.tar.gz"
+
+LICENSE="bestcrypt"
+SLOT="0"
+IUSE=""
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="virtual/linux-sources
+ app-shells/bash"
+RDEPEND=""
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+pkg_setup() {
+ CONFIG_CHECK="MODULES"
+ linux-mod_pkg_setup
+
+ MODULE_NAMES="bestcrypt(block::kernel/kmod)
+ bc_3des(crypto::kernel/kmod/crypto/algs/3des)
+ bc_bf128(crypto::kernel/kmod/crypto/algs/bf128)
+ bc_bf448(crypto::kernel/kmod/crypto/algs/bf448)
+ bc_blowfish(crypto::kernel/kmod/crypto/algs/blowfish)
+ bc_cast(crypto::kernel/kmod/crypto/algs/cast)
+ bc_des(crypto::kernel/kmod/crypto/algs/des)
+ bc_gost(crypto::kernel/kmod/crypto/algs/gost)
+ bc_idea(crypto::kernel/kmod/crypto/algs/idea)
+ bc_rijn(crypto::kernel/kmod/crypto/algs/rijn)"
+ BUILD_TARGETS="module"
+ BUILD_PARAMS=" \
+ BC_KERNEL_DIR=\"${KERNEL_DIR}\""
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-build.patch"
+}
+
+src_compile() {
+ MAKEOPTS="-j1" linux-mod_src_compile \
+ CXX="$(tc-getCXX)"
+ MAKEOPTS="-j1" emake \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ AR="$(tc-getAR)" \
+ CFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ linux-mod_src_install
+
+ emake install PREFIX="${ED}" install
+
+ newinitd "${FILESDIR}/bcrypt3" bcrypt
+ sed -e '/\(bc_rc6\|bc_serpent\|bc_twofish\)/d' -i "${D}etc/init.d/bcrypt"
+ dodoc HIDDEN_PART README
+}
+
+pkg_postinst() {
+ ewarn
+ ewarn "The BestCrypt drivers are not free - Please purchace a license from "
+ ewarn "http://www.jetico.com/"
+ ewarn
+
+ linux-mod_pkg_postinst
+}
diff --git a/app-crypt/bestcrypt/files/bcrypt3 b/app-crypt/bestcrypt/files/bcrypt3
new file mode 100644
index 000000000000..8f6dd386237b
--- /dev/null
+++ b/app-crypt/bestcrypt/files/bcrypt3
@@ -0,0 +1,104 @@
+#!/sbin/runscript
+#
+# bestcrypt Encrypted File Systems.
+#
+# Version: 1.2
+#
+# Revision: $Id$
+#
+# Author: Jetico Inc. (support@jetico.com)
+#
+# Modified by Stefan Tittel (with thanks to steveb) to work around
+# the "xargs: environment too large for exec"-error occuring in
+# the gentoo 1.4 linux distribution.
+
+# chkconfig: 2345 85 98
+# description: BestCrypt init script
+
+
+# Source function library.
+#. /etc/rc.d/init.d/functions
+
+# See how we were called.
+
+KERNEL_VERSION=`uname -r|sed 's/\(.\..\).*/\1/'`
+
+start() {
+ ebegin "Initializing BestCrypt"
+ declare -i status=0
+ rm -rf /dev/bcrypt?* 2>/dev/null
+ if [ $KERNEL_VERSION = "2.2" ]; then
+ mknod -m 666 /dev/bcrypt0 b 7 128
+ mknod -m 666 /dev/bcrypt1 b 7 129
+ mknod -m 666 /dev/bcrypt2 b 7 130
+ mknod -m 666 /dev/bcrypt3 b 7 131
+ mknod -m 666 /dev/bcrypt4 b 7 132
+ mknod -m 666 /dev/bcrypt5 b 7 133
+ mknod -m 666 /dev/bcrypt6 b 7 134
+ mknod -m 666 /dev/bcrypt7 b 7 135
+ mknod -m 666 /dev/bcrypt8 b 7 136
+ mknod -m 666 /dev/bcrypt9 b 7 137
+ mknod -m 666 /dev/bcrypt10 b 7 138
+ mknod -m 666 /dev/bcrypt11 b 7 139
+ mknod -m 666 /dev/bcrypt12 b 7 140
+ mknod -m 666 /dev/bcrypt13 b 7 141
+ mknod -m 666 /dev/bcrypt14 b 7 142
+ mknod -m 666 /dev/bcrypt15 b 7 143
+ else
+ if [ ! -c /dev/.devfsd ] && [ ! -e /dev/.udev ];
+ then
+ mknod -m 666 /dev/bcrypt0 b 188 0
+ mknod -m 666 /dev/bcrypt1 b 188 1
+ mknod -m 666 /dev/bcrypt2 b 188 2
+ mknod -m 666 /dev/bcrypt3 b 188 3
+ mknod -m 666 /dev/bcrypt4 b 188 4
+ mknod -m 666 /dev/bcrypt5 b 188 5
+ mknod -m 666 /dev/bcrypt6 b 188 6
+ mknod -m 666 /dev/bcrypt7 b 188 7
+ mknod -m 666 /dev/bcrypt8 b 188 8
+ mknod -m 666 /dev/bcrypt9 b 188 9
+ mknod -m 666 /dev/bcrypt10 b 188 10
+ mknod -m 666 /dev/bcrypt11 b 188 11
+ mknod -m 666 /dev/bcrypt12 b 188 12
+ mknod -m 666 /dev/bcrypt13 b 188 13
+ mknod -m 666 /dev/bcrypt14 b 188 14
+ mknod -m 666 /dev/bcrypt15 b 188 15
+ fi
+ fi
+ modprobe bc || status=1
+ modprobe bc_blowfish || status=1
+ modprobe bc_des || status=1
+ modprobe bc_gost || status=1
+ modprobe bc_twofish || status=1
+ modprobe bc_bf448 || status=1
+ modprobe bc_bf128 || status=1
+ modprobe bc_3des || status=1
+ modprobe bc_idea || status=1
+ modprobe bc_rijn || status=1
+ modprobe bc_cast || status=1
+ modprobe bc_rc6 || status=1
+ modprobe bc_serpent || status=1
+ eend ${status}
+}
+
+stop() {
+ ebegin "Unmounting encrypted filesystems"
+
+# The original line causing the "xargs: environment too large for exec error".
+ # grep BestCrypt /etc/mtab |awk '{print $2}'|xargs -r -n 1 bctool umount
+
+# The line for which it work's fine now.
+ for i in $(grep BestCrypt /etc/mtab | awk '{print $2}') ; do bctool umount ${i} ; done
+
+ eend $?
+ ebegin "Shutting down BestCrypt modules"
+ for i in `lsmod |egrep "^bc_.*" |awk '{print $1}' `; do
+ rmmod $i
+ done
+ if [ ! -c /dev/.devfsd ] && [ ! -e /dev/.udev ];
+ then
+ rm -f /dev/bcrypt?* 2>/dev/null
+ fi
+ rmmod bc
+ eend $?
+}
diff --git a/app-crypt/bestcrypt/files/bestcrypt-2.0.0-build.patch b/app-crypt/bestcrypt/files/bestcrypt-2.0.0-build.patch
new file mode 100644
index 000000000000..876f30ba005d
--- /dev/null
+++ b/app-crypt/bestcrypt/files/bestcrypt-2.0.0-build.patch
@@ -0,0 +1,59 @@
+diff --git a/Makefile b/Makefile
+index 63baafb..995d48e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -56,7 +56,8 @@ KGSHA_LIB = $(KGSHA_BUILD_DIR)/lib$(KGSHA_LIB_NAME).a
+ KGGHOST_LIB = $(KGGHOST_BUILD_DIR)/lib$(KGGHOST_LIB_NAME).a
+ SPACEMAP_LIB = $(SPACEMAP_BUILD_DIR)/lib$(SPACEMAP_LIB_NAME).a
+
+-BC_EXTRA_CFLAGS= -D_LARGE_FILES -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
++BC_EXTRA_CFLAGS= $(CFLAGS) -D_LARGE_FILES -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
++BC_EXTRA_LDFLAGS = $(LDFLAGS)
+
+ #
+ # commands
+@@ -86,7 +87,7 @@ BCTOOL_OBJS = container/linux/file.o \
+ src/bctool-rawlink.o
+
+ BCTOOL_CFLAGS = $(BC_EXTRA_CFLAGS) -DBC_LINUX -Wall -I. -Icertificate/
+-BCTOOL_LDFLAGS = -L$(TARGET_DIR) -l$(KERN_LIB_NAME) -l$(KGSHA_LIB_NAME) \
++BCTOOL_LDFLAGS = $(BC_EXTRA_LDFLAGS) -L$(TARGET_DIR) -l$(KERN_LIB_NAME) -l$(KGSHA_LIB_NAME) \
+ -l$(KGGHOST_LIB_NAME) -l$(CERT_LIB_NAME) -l$(SPACEMAP_LIB_NAME) \
+ -ludev -lpthread -l$(FS_LIB_NAME)
+
+@@ -101,7 +102,7 @@ $(shell mkdir -p $(TARGET_DIR)/kernel)
+ #
+
+ # default target builds console tool with modules
+-all: Makefile helpers module bctool-app
++all: Makefile helpers bctool-app
+ true
+
+ # GUI executable with helpers and console tool
+@@ -216,7 +217,7 @@ module-clean: force-look
+ #
+
+ # install for default target
+-install: module-install bctool-app-install helpers-install
++install: bctool-app-install helpers-install
+ true
+
+ # uninstall for default target
+@@ -224,6 +225,7 @@ uninstall: before-uninstall module-uninstall bctool-app-uninstall helpers-uninst
+ true
+
+ helpers-install:
++ install -o root -m 755 -d $(PREFIX)/sbin
+ install -o root -m 4755 -s $(TARGET_DIR)/bcmount_helper $(PREFIX)/sbin
+ install -o root -m 4755 -s $(TARGET_DIR)/bcumount_helper $(PREFIX)/sbin
+ install -o root -m 4755 -s $(TARGET_DIR)/bcrrpart_helper $(PREFIX)/sbin
+@@ -247,7 +249,9 @@ before-uninstall: force-look
+
+ # install for main executable only
+ bctool-app-install: force-look
++ install -o root -m 755 -d $(PREFIX)/usr/bin
+ install -o root -m 0755 -s build/bctool $(PREFIX)/usr/bin/
++ install -o root -m 755 -d $(PREFIX)/$(MAN_PATH)/man8
+ install -m 644 bctool.8 $(PREFIX)/$(MAN_PATH)/man8/
+
+ # uninstall for main executable only
diff --git a/app-crypt/bestcrypt/files/bestcrypt-2.0.4-build.patch b/app-crypt/bestcrypt/files/bestcrypt-2.0.4-build.patch
new file mode 100644
index 000000000000..8154833890ac
--- /dev/null
+++ b/app-crypt/bestcrypt/files/bestcrypt-2.0.4-build.patch
@@ -0,0 +1,108 @@
+From 38ef9fdb4b6690825fe3e54b6b44173e00316a94 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sun, 6 Jul 2014 21:28:11 +0300
+Subject: [PATCH 1/3] build: respect CFLAGS/LDFLAGS
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ Makefile | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 17abf61..e89bb76 100644
+--- a/Makefile
++++ b/Makefile
+@@ -56,7 +56,8 @@ KGSHA_LIB = $(KGSHA_BUILD_DIR)/lib$(KGSHA_LIB_NAME).a
+ KGGHOST_LIB = $(KGGHOST_BUILD_DIR)/lib$(KGGHOST_LIB_NAME).a
+ SPACEMAP_LIB = $(SPACEMAP_BUILD_DIR)/lib$(SPACEMAP_LIB_NAME).a
+
+-BC_EXTRA_CFLAGS= -D_LARGE_FILES -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
++BC_EXTRA_CFLAGS= $(CFLAGS) -D_LARGE_FILES -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
++BC_EXTRA_LDFLAGS = $(LDFLAGS)
+
+ #
+ # commands
+@@ -86,7 +87,7 @@ BCTOOL_OBJS = container/linux/file.o \
+ src/bctool-rawlink.o
+
+ BCTOOL_CFLAGS = $(BC_EXTRA_CFLAGS) -DBC_LINUX -Wall -I. -Icertificate/
+-BCTOOL_LDFLAGS = -L$(TARGET_DIR) -l$(KERN_LIB_NAME) -l$(KGSHA_LIB_NAME) \
++BCTOOL_LDFLAGS = $(BC_EXTRA_LDFLAGS) -L$(TARGET_DIR) -l$(KERN_LIB_NAME) -l$(KGSHA_LIB_NAME) \
+ -l$(KGGHOST_LIB_NAME) -l$(CERT_LIB_NAME) -l$(SPACEMAP_LIB_NAME) \
+ -ludev -lpthread -l$(FS_LIB_NAME)
+
+--
+1.8.5.5
+
+From 632ba530d94675c62213ec9f2bd9a37a411a6050 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sun, 6 Jul 2014 21:30:49 +0300
+Subject: [PATCH 2/3] build: create directories before put file + use install
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ Makefile | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index e89bb76..3cd36fd 100644
+--- a/Makefile
++++ b/Makefile
+@@ -238,6 +238,7 @@ uninstall: before-uninstall module-uninstall console-uninstall helpers-uninstall
+ true
+
+ helpers-install:
++ install -o root -m 0755 -d $(PREFIX)/sbin
+ install -o root -m 4755 -s $(TARGET_DIR)/bcmount_helper $(PREFIX)/sbin
+ install -o root -m 4755 -s $(TARGET_DIR)/bcumount_helper $(PREFIX)/sbin
+ install -o root -m 4755 -s $(TARGET_DIR)/bcrrpart_helper $(PREFIX)/sbin
+@@ -261,9 +262,9 @@ before-uninstall: force-look
+
+ # install for console only
+ console-install: force-look
+- mkdir -p $(PREFIX)/usr/bin
++ install -o root -m 0755 -d $(PREFIX)/usr/bin
+ install -o root -m 0755 -s build/bctool $(PREFIX)/usr/bin/
+- mkdir -p $(PREFIX)/$(MAN_PATH)/man8
++ install -o root -m 0755 -d $(PREFIX)/$(MAN_PATH)/man8
+ install -m 644 bctool.8 $(PREFIX)/$(MAN_PATH)/man8/
+
+ # uninstall for console only
+--
+1.8.5.5
+
+From 4bce59bd9bc5a201caf5f2ff3e2080e7e5a01733 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sun, 6 Jul 2014 21:34:21 +0300
+Subject: [PATCH 3/3] build: do not auto build/install module
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 3cd36fd..a3fd59e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -98,7 +98,7 @@ TESTS_TARGET = $(TARGET_DIR)/tests/bctool-tests
+ #
+
+ # default target builds console tool with modules
+-all: Makefile helpers module console
++all: Makefile helpers console
+ true
+
+ rebuild: clean all
+@@ -226,7 +226,7 @@ module-clean: force-look
+ #
+
+ # install for default target
+-install: module-install console-install helpers-install
++install: console-install helpers-install
+ true
+
+ # used by RPM creation script
+--
+1.8.5.5
+
diff --git a/app-crypt/bestcrypt/files/bestcrypt-2.0.6-build.patch b/app-crypt/bestcrypt/files/bestcrypt-2.0.6-build.patch
new file mode 100644
index 000000000000..966053072d32
--- /dev/null
+++ b/app-crypt/bestcrypt/files/bestcrypt-2.0.6-build.patch
@@ -0,0 +1,341 @@
+From 4bce59bd9bc5a201caf5f2ff3e2080e7e5a01733 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sun, 6 Jul 2014 21:34:21 +0300
+Subject: [PATCH 3/3] build: do not auto build/install module
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 3cd36fd..a3fd59e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -98,5 +98,5 @@ TESTS_TARGET = $(TARGET_DIR)/tests/bctool-tests
+
+ # default target builds console tool with modules
+-all: Makefile helpers module console
++all: Makefile helpers console
+ true
+
+@@ -226,5 +226,5 @@ module-clean: force-look
+
+ # install for default target
+-install: module-install console-install helpers-install
++install: console-install helpers-install
+ true
+
+--
+1.8.5.5
+
+From f7f71ec155385aea3dec495d46d07452943fe729 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Tue, 17 Mar 2015 21:05:22 +0200
+Subject: [PATCH] build: allow override programs
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ Makefile | 11 +++++++----
+ certificate/CertificateLib/Makefile | 4 +++-
+ disk/Makefile | 6 ++++--
+ fslib/Makefile | 16 +++++++++-------
+ kernel/Makefile | 5 +++--
+ keygens/kgghost/Makefile | 7 +++++--
+ keygens/kgsha/Makefile | 7 +++++--
+ mount/Makefile | 9 +++++----
+ spacemap/Makefile | 6 ++++--
+ tests/Makefile | 12 ++++++------
+ 10 files changed, 51 insertions(+), 32 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 6af2319..359d022 100644
+--- a/Makefile
++++ b/Makefile
+@@ -56,6 +56,9 @@ KGSHA_LIB = $(KGSHA_BUILD_DIR)/lib$(KGSHA_LIB_NAME).a
+ KGGHOST_LIB = $(KGGHOST_BUILD_DIR)/lib$(KGGHOST_LIB_NAME).a
+ SPACEMAP_LIB = $(SPACEMAP_BUILD_DIR)/lib$(SPACEMAP_LIB_NAME).a
+
++CC = gcc
++CXX = g++
++
+ BC_EXTRA_CFLAGS= $(CFLAGS) -D_LARGE_FILES -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
+ BC_EXTRA_LDFLAGS = $(LDFLAGS)
+
+@@ -125,7 +128,7 @@ helpers: create-dirs
+ console: spacemap-lib certificate-lib fs-lib kernel-lib keygen-libs $(TARGET)
+ true
+ $(TARGET): $(BCTOOL_OBJS)
+- g++ $(BCTOOL_OBJS) $(BCTOOL_CFLAGS) $(BCTOOL_LDFLAGS) -o $(TARGET)
++ $(CXX) $(BCTOOL_OBJS) $(BCTOOL_CFLAGS) $(BCTOOL_LDFLAGS) -o $(TARGET)
+
+ # GUI executable only (w/o console and helpers)
+ panel: certificate-lib kernel-lib keygen-libs fs-lib
+@@ -339,10 +342,10 @@ module-uninstall:
+ bash ./scripts/remove_mods
+
+ %.o:%.cpp
+- g++ -c $(BCTOOL_CFLAGS) $< -o $@
++ $(CXX) -c $(BCTOOL_CFLAGS) $< -o $@
+
+ %.o:%.cc
+- g++ -c $(BCTOOL_CFLAGS) $< -o $@
++ $(CXX) -c $(BCTOOL_CFLAGS) $< -o $@
+
+ %.o:%.c
+- gcc -c $(BCTOOL_CFLAGS) $< -o $@
++ $(CC) -c $(BCTOOL_CFLAGS) $< -o $@
+diff --git a/certificate/CertificateLib/Makefile b/certificate/CertificateLib/Makefile
+index d28ccc7..810a30a 100644
+--- a/certificate/CertificateLib/Makefile
++++ b/certificate/CertificateLib/Makefile
+@@ -1,5 +1,7 @@
+
+-CP = cp
++CC = gcc
++CXX = g++
++AR = ar
+ CFLAGS += -Wall -fno-strict-aliasing -O3
+ #-Werror
+
+diff --git a/disk/Makefile b/disk/Makefile
+index e3915b0..1a9ff01 100644
+--- a/disk/Makefile
++++ b/disk/Makefile
+@@ -1,14 +1,16 @@
+ DISKMON_OBJS = disk.o diskmon.o
++
++CXX = g++
+ CFLAGS += -Wall -I. -I../ -p -gdwarf-2 #-DBC_DEBUG
+ LDFLAGS += -ludev
+
+ all:diskmon Makefile
+
+ diskmon:$(DISKMON_OBJS)
+- g++ $(DISKMON_OBJS) $(LDFLAGS) -o diskmon
++ $(CXX) $(DISKMON_OBJS) $(LDFLAGS) -o diskmon
+
+ %.o:%.cc
+- g++ $(CFLAGS) -c $< -o $@
++ $(CXX) $(CFLAGS) -c $< -o $@
+
+ clean:
+ rm -rf diskmon *.o
+diff --git a/fslib/Makefile b/fslib/Makefile
+index a6f96f4..bbe6cae 100644
+--- a/fslib/Makefile
++++ b/fslib/Makefile
+@@ -1,3 +1,5 @@
++CC = gcc
++AR = ar
+
+ FSLIB_CFLAGS = $(CFLAGS) -Wall -O0 -DFSLIB_DEBUG -g # -O3
+ FSLIB_CFLAGS += -I. -D_LARGE_FILES -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 #-fvisibility=hidden
+@@ -15,25 +17,25 @@ FSLIB_TOOLS = file_hfs test_hfs test_info test_free_space diskinfo
+ all: Makefile $(FSLIB) $(FSLIB_TOOLS)
+
+ $(FSLIB): $(OBJS)
+- ar rcs $(FSLIB) $(OBJS)
++ $(AR) rcs $(FSLIB) $(OBJS)
+
+ test_hfs: $(FSLIB) test/test_hfs.o
+- gcc test/test_hfs.o $(OBJS) $(FSLIB_LDFLAGS) -o test_hfs
++ $(CC) test/test_hfs.o $(OBJS) $(FSLIB_LDFLAGS) -o test_hfs
+
+ file_hfs: $(FSLIB) test/file_hfs.o
+- gcc test/file_hfs.o $(OBJS) $(FSLIB_LDFLAGS) -o file_hfs
++ $(CC) test/file_hfs.o $(OBJS) $(FSLIB_LDFLAGS) -o file_hfs
+
+ test_info: $(FSLIB) test/test_info.o
+- gcc test/test_info.o $(OBJS) $(FSLIB_LDFLAGS) -o test_info
++ $(CC) test/test_info.o $(OBJS) $(FSLIB_LDFLAGS) -o test_info
+
+ test_free_space: $(FSLIB) test/test_free_space.o
+- gcc test/test_free_space.o $(FSLIB_CFLAGS) $(OBJS) $(FSLIB_LDFLAGS) -o test_free_space
++ $(CC) test/test_free_space.o $(FSLIB_CFLAGS) $(OBJS) $(FSLIB_LDFLAGS) -o test_free_space
+
+ diskinfo: $(FSLIB) test/diskinfo.o
+- gcc test/diskinfo.o $(OBJS) $(FSLIB_LDFLAGS) -g -o diskinfo
++ $(CC) test/diskinfo.o $(OBJS) $(FSLIB_LDFLAGS) -g -o diskinfo
+
+ .c.o:
+- gcc $(FSLIB_CFLAGS) -c $< -o $@
++ $(CC) $(FSLIB_CFLAGS) -c $< -o $@
+
+ clean:
+ rm -rf *~ *.o test/*.o $(OBJS) $(FSLIB) $(FSLIB_TOOLS)
+diff --git a/kernel/Makefile b/kernel/Makefile
+index 1a71617..4f9760d 100644
+--- a/kernel/Makefile
++++ b/kernel/Makefile
+@@ -3,6 +3,7 @@ OBJECTS = $(SOURCES:.cc=.o)
+ TARGET_DIR = ./build/
+ TARGET = $(TARGET_DIR)/libbckernel.a
+ BC_CFLAGS = $(BC_EXTRA_CFLAGS) -fPIC -c -Wall -ludev -L../build/ -lspacemap -I../ -fvisibility=hidden #-fvisibility-inlines-hidden
++CXX = g++
+
+
+ ### Build ###
+@@ -21,12 +22,12 @@ module: create-dirs force_look
+
+ kernel-lib: create-dirs $(TARGET)
+ $(TARGET): $(OBJECTS)
+- ar rcs $(TARGET) $(OBJECTS)
++ $(AR) rcs $(TARGET) $(OBJECTS)
+
+ $(OBJECTS): Makefile $(SOURCES) BCKernel.h
+ set -e; \
+ for i in $(SOURCES); do \
+- g++ -c $(BC_CFLAGS) $$i -o $${i%.cc}.o; \
++ $(CXX) -c $(BC_CFLAGS) $$i -o $${i%.cc}.o; \
+ done
+
+ create-dirs: $(TARGET_DIR)
+diff --git a/keygens/kgghost/Makefile b/keygens/kgghost/Makefile
+index 8f6cc59..fe59ac7 100644
+--- a/keygens/kgghost/Makefile
++++ b/keygens/kgghost/Makefile
+@@ -5,10 +5,13 @@ KGGHOST_OBJS = hash.o pbe.o keyblock.o datablock.o kgghost.o
+ KGGHOST_CFLAGS = -Wall -p -ggdb -I. -I../../ -I../../certificate -DBC_LINUX
+ KGGHOST_CFLAGS += $(BC_EXTRA_CFLAGS)
+
++CXX = g++
++AR = ar
++
+ all: $(KGGHOST) Makefile
+
+ $(KGGHOST):$(KGGHOST_OBJS) $(CERTIFICATE_LIB)
+- ar rcs $(KGGHOST) $(KGGHOST_OBJS)
++ $(AR) rcs $(KGGHOST) $(KGGHOST_OBJS)
+
+ $(CERTIFICATE_LIB):
+ make -C ../../certificate/CertificateLib
+@@ -17,7 +20,7 @@ $(KERNEL_LIB):
+ make -C ../../kernel/build
+
+ %.o:%.cpp
+- g++ $(KGGHOST_CFLAGS) -c -o $@ $<
++ $(CXX) $(KGGHOST_CFLAGS) -c -o $@ $<
+
+ clean:
+ rm -f *.o *.ver *~ $(KGGHOST)
+diff --git a/keygens/kgsha/Makefile b/keygens/kgsha/Makefile
+index f1a89f9..57f55ca 100644
+--- a/keygens/kgsha/Makefile
++++ b/keygens/kgsha/Makefile
+@@ -10,10 +10,13 @@ KGSHA_OBJS = hash.o datablock.o kgsha.o
+ KGSHA_CFLAGS = -Wall -p -gdwarf-2 -I. -I../../ -I../../certificate -DBC_LINUX
+ KGSHA_CFLAGS += $(EXTRA_CFLAGS)
+
++CXX = g++
++AR = ar
++
+ all: $(KGSHA) $(KGSHA_OBJS) Makefile hidden_sector.h defs.h datablock.h
+
+ $(KGSHA): $(KGSHA_OBJS) $(CERTIFICATE_LIB) $(KERN_LIB)
+- ar rcs $(KGSHA) $(KGSHA_OBJS)
++ $(AR) rcs $(KGSHA) $(KGSHA_OBJS)
+
+ $(CERT_LIB):
+ make -C ../../certificate/CertificateLib
+@@ -22,7 +25,7 @@ $(KERN_LIB):
+ make -C ../../kernel/
+
+ %.o:%.cpp
+- g++ $(KGSHA_CFLAGS) -c -o $@ $<
++ $(CXX) $(KGSHA_CFLAGS) -c -o $@ $<
+
+ clean:
+ rm -f *.o *.ver *~ $(KGSHA)
+diff --git a/mount/Makefile b/mount/Makefile
+index 7a3d66b..0e60095 100644
+--- a/mount/Makefile
++++ b/mount/Makefile
+@@ -1,22 +1,23 @@
+
+ HELPERS = bcrrpart_helper bcmount_helper bcumount_helper
+
++CC = gcc
+ OBJS = common.o
+ CFLAGS += -Wall -O3
+
+ all: $(HELPERS) Makefile
+
+ bcrrpart_helper: $(OBJS) rrpart.o
+- gcc $(OBJS) rrpart.o $(LDFLAGS) -o bcrrpart_helper
++ $(CC) $(OBJS) rrpart.o $(LDFLAGS) -o bcrrpart_helper
+
+ bcmount_helper: $(OBJS) mount.o
+- gcc $(OBJS) mount.o $(LDFLAGS) -o bcmount_helper
++ $(CC) $(OBJS) mount.o $(LDFLAGS) -o bcmount_helper
+
+ bcumount_helper: $(OBJS) umount.o
+- gcc $(OBJS) umount.o $(LDFLAGS) -o bcumount_helper
++ $(CC) $(OBJS) umount.o $(LDFLAGS) -o bcumount_helper
+
+ %.o:%.c
+- gcc $(CFLAGS) -c -o $@ $<
++ $(CC) $(CFLAGS) -c -o $@ $<
+
+ clean:
+ rm -f *.o *.ver *~ $(HELPERS)
+diff --git a/spacemap/Makefile b/spacemap/Makefile
+index 6dff240..7dd2ad9 100644
+--- a/spacemap/Makefile
++++ b/spacemap/Makefile
+@@ -5,17 +5,19 @@ LIB_NAME = spacemap
+ STATIC_TARGET = lib$(LIB_NAME).a
+ OBJECT_CFLAGS = -fPIC -g -c -Wall -ludev -fvisibility=hidden #-fvisibility-inlines-hidden
+
++CXX = g++
++AR = ar
+
+ all: static
+ true
+
+ static: $(OBJECTS)
+- ar rcs $(STATIC_TARGET) $(OBJECTS)
++ $(AR) rcs $(STATIC_TARGET) $(OBJECTS)
+
+ $(OBJECTS): $(SOURCES)
+ set -e; \
+ for i in $(SOURCES); do \
+- g++ $(OBJECT_CFLAGS) $$i -o $${i%.c}.o; \
++ $(CXX) $(OBJECT_CFLAGS) $$i -o $${i%.c}.o; \
+ done
+
+ clean:
+diff --git a/tests/Makefile b/tests/Makefile
+index c6d78f0..419020b 100644
+--- a/tests/Makefile
++++ b/tests/Makefile
+@@ -2,8 +2,8 @@ TESTS_PWD = ../build/tests/
+ TESTS_TARGET = $(TESTS_PWD)/bctool-tests
+ TESTS_SOURCES = tests-main.c ../container/cipher.cc ../keygens/kgsha/datablock.cpp ../keygens/kgsha/hash.cpp ../container/linux/file.cpp
+ TESTS_CFLAGS = -I../ -I../certificate/ -L../build/ -L../build/kernel/ -DBC_LINUX -ludev -g
+-CP = gcc
+-CPP = g++
++CC = gcc
++CXX = g++
+ CERT_LIB_NAME = certificate
+ KERN_LIB_NAME = bckernel
+ SPACEMAP_LIB_NAME = spacemap
+@@ -15,11 +15,11 @@ all: $(TESTS_TARGET)
+ cp insert-modules.sh remove-modules.sh bcmod-loaded.sh $(TESTS_PWD)
+
+ $(TESTS_TARGET): $(TESTS_SOURCES) Makefile
+- $(CPP) -o $(TESTS_TARGET) $(TESTS_CFLAGS) $(TESTS_SOURCES) -l$(CERT_LIB_NAME) -l$(KERN_LIB_NAME) -l$(SPACEMAP_LIB_NAME) -lcunit -ludev
++ $(CXX) -o $(TESTS_TARGET) $(TESTS_CFLAGS) $(TESTS_SOURCES) -l$(CERT_LIB_NAME) -l$(KERN_LIB_NAME) -l$(SPACEMAP_LIB_NAME) -lcunit -ludev
+ cp kernel/print-struct-size.c $(TESTS_PWD)
+- $(CP) -o $(TESTS_PWD)test-data-generator kernel/test-data-generator.c $(TESTS_CFLAGS) -l$(KERN_LIB_NAME) -l$(SPACEMAP_LIB_NAME)
+- $(CPP) -o $(TESTS_PWD)kgsha-key-generator kgsha/kgsha-data-generator.cpp ../keygens/kgsha/datablock.cpp ../keygens/kgsha/hash.cpp ../container/cipher.cc $(TESTS_CFLAGS) -l$(KERN_LIB_NAME) -l$(CERT_LIB_NAME) -l$(SPACEMAP_LIB_NAME)
+- $(CP) -o $(TESTS_PWD)/bcdevchecker bcdevchecker.c
++ $(CC) -o $(TESTS_PWD)test-data-generator kernel/test-data-generator.c $(TESTS_CFLAGS) -l$(KERN_LIB_NAME) -l$(SPACEMAP_LIB_NAME)
++ $(CXX) -o $(TESTS_PWD)kgsha-key-generator kgsha/kgsha-data-generator.cpp ../keygens/kgsha/datablock.cpp ../keygens/kgsha/hash.cpp ../container/cipher.cc $(TESTS_CFLAGS) -l$(KERN_LIB_NAME) -l$(CERT_LIB_NAME) -l$(SPACEMAP_LIB_NAME)
++ $(CC) -o $(TESTS_PWD)/bcdevchecker bcdevchecker.c
+
+ clean:
+ rm -rf $(TESTS_PWD)
+--
+2.0.5
+
diff --git a/app-crypt/bestcrypt/metadata.xml b/app-crypt/bestcrypt/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/bestcrypt/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/bsign/Manifest b/app-crypt/bsign/Manifest
new file mode 100644
index 000000000000..f3277e00c2c9
--- /dev/null
+++ b/app-crypt/bsign/Manifest
@@ -0,0 +1 @@
+DIST bsign_0.4.5.tar.gz 77471 SHA256 a80b27286a3b1b1be6df7b93d27457a4a6941a1eaf797070b1044412f47d3106 SHA512 a4dba37d648f683bb5b14bc9aafeb72fb0bd06e21cedb1a4bbd73dfc0a5f7bb22b5b33ef8727b5070d727afb2d97489ed4b9be28bf1025c9e618ccf47f1ef634 WHIRLPOOL 067ff40119578e6208beeba7ebe9ea21fcb0667abe1ca9780f858a250048035705faad5009d5dfa6814cd4778338722c596caab469d3f8b6d7da05794f1fcbd9
diff --git a/app-crypt/bsign/bsign-0.4.5-r1.ebuild b/app-crypt/bsign/bsign-0.4.5-r1.ebuild
new file mode 100644
index 000000000000..c2b4476d4cd2
--- /dev/null
+++ b/app-crypt/bsign/bsign-0.4.5-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools flag-o-matic eutils toolchain-funcs
+
+DESCRIPTION="embed secure hashes (SHA1) and digital signatures (GNU Privacy Guard) into files"
+HOMEPAGE="http://packages.debian.org/sid/bsign"
+SRC_URI="mirror://debian/pool/main/b/${PN}/${PN}_${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc-macos ~x86 ~x86-linux"
+IUSE="static-libs"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-non-gnu.patch # for Darwin, BSD, Solaris, etc.
+ epatch "${FILESDIR}"/${P}-build.patch
+ epatch "${FILESDIR}"/${P}-scripts.patch
+ eautoreconf
+}
+
+src_configure() {
+ use static-libs && append-ldflags -static
+ default
+}
+
+src_install() {
+ dobin bsign_sign bsign_verify bsign_hash bsign_check
+ newbin o/bsign-unstripped bsign
+ doman bsign.1
+ dodoc README
+}
diff --git a/app-crypt/bsign/bsign-0.4.5.ebuild b/app-crypt/bsign/bsign-0.4.5.ebuild
new file mode 100644
index 000000000000..ab50a477b541
--- /dev/null
+++ b/app-crypt/bsign/bsign-0.4.5.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=2
+inherit autotools eutils toolchain-funcs
+
+DESCRIPTION="embed secure hashes (SHA1) and digital signatures (GNU Privacy Guard) into files"
+HOMEPAGE="http://packages.debian.org/sid/bsign"
+SRC_URI="mirror://debian/pool/main/b/${PN}/${PN}_${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ppc ~ppc-macos ~x86 ~x86-linux"
+IUSE="static-libs"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-non-gnu.patch # for Darwin, BSD, Solaris, etc.
+
+ if ! use static-libs || [[ ${CHOST} == *-darwin* ]]; then
+ sed -i -e '/^LFLAGS/s/-static//' Makefile.in
+ fi
+
+ sed -i -e "/^CFLAGS/d" \
+ -e "/^CXXFLAGS/d" configure.in
+ eautoreconf
+ tc-export CC CXX
+}
+
+src_install() {
+ dobin bsign_sign bsign_verify bsign_hash bsign_check || die
+ newbin o/bsign-unstripped bsign || die
+ doman bsign.1 || die
+ dodoc README || die
+}
diff --git a/app-crypt/bsign/files/bsign-0.4.5-build.patch b/app-crypt/bsign/files/bsign-0.4.5-build.patch
new file mode 100644
index 000000000000..c6e40ada4cb2
--- /dev/null
+++ b/app-crypt/bsign/files/bsign-0.4.5-build.patch
@@ -0,0 +1,31 @@
+diff -urNp bsign-0.4.5/configure.in bsign-0.4.5.new/configure.in
+--- bsign-0.4.5/configure.in 2002-01-18 03:16:44.000000000 +0200
++++ bsign-0.4.5.new/configure.in 2013-06-16 00:54:36.470673947 +0300
+@@ -14,12 +14,8 @@ AC_PROG_LN_S
+ AC_PROG_MAKE_SET
+ AC_PROG_INSTALL
+
+-CFLAGS=-g
+-CXXFLAGS=-g
+-
+ if test "${GXX}" = "yes" ; then
+ CFLAGS_W=" -Wall -Wno-parentheses -Wno-unused"
+- CFLAGS="${CFLAGS}"
+ fi
+
+ dnl Checks for header files.
+diff -urNp bsign-0.4.5/Makefile.in bsign-0.4.5.new/Makefile.in
+--- bsign-0.4.5/Makefile.in 2002-01-27 22:56:56.000000000 +0200
++++ bsign-0.4.5.new/Makefile.in 2013-06-16 00:56:30.254676986 +0300
+@@ -56,9 +56,8 @@ CFLAGS=@CFLAGS@ @DEFS@
+ #CFLAGS_O=-O2 -fomit-frame-pointer
+ #CFLAGS_P=$(CFLAGS) -pg
+ CFLAGS_=-g $(CFLAGS_I)@CFLAGS_W@ $(CFLAGS_O) $(CFLAGS_P)
+-CXXFLAGS=$(CFLAGS)
+-CXXFLAGS_=$(CFLAGS_)
+-LFLAGS=-g -static @LDFLAGS@ @LIBS@
++CXXFLAGS=@CXXFLAGS@ @DEFS@
++LFLAGS=-g @LDFLAGS@ @LIBS@
+ #LFLAGS=-g @LDFLAGS@ @LIBS@
+ #LFLAGS=-pg ${LFLAGS}
+ DEPEND=depend.m
diff --git a/app-crypt/bsign/files/bsign-0.4.5-non-gnu.patch b/app-crypt/bsign/files/bsign-0.4.5-non-gnu.patch
new file mode 100644
index 000000000000..b07d78450ee1
--- /dev/null
+++ b/app-crypt/bsign/files/bsign-0.4.5-non-gnu.patch
@@ -0,0 +1,42 @@
+--- Makefile.in
++++ Makefile.in
+@@ -62,7 +62,7 @@
+ #LFLAGS=-g @LDFLAGS@ @LIBS@
+ #LFLAGS=-pg ${LFLAGS}
+ DEPEND=depend.m
+-ECHO=@/bin/echo
++ECHO=@echo
+ INSTALL=@INSTALL@
+ INSTALL_PROGRAM=@INSTALL_PROGRAM@
+ INSTALL_DATA=@INSTALL_DATA@
+@@ -192,11 +192,11 @@
+ #
+
+ .version: .version_major .version_minor .version_patch
+- @/bin/echo -n `cat .version_major`.`cat .version_minor`.`cat \
++ @echo -n `cat .version_major`.`cat .version_minor`.`cat \
+ .version_patch` > .version
+
+ _version.h: .version
+- @/bin/echo -e \#define SZ_VERSION \"`cat .version`\" > _version.h
++ @echo -e \#define SZ_VERSION \"`cat .version`\" > _version.h
+
+ .PHONY: transmit
+ transmit: # distribution-archive
+@@ -209,12 +209,12 @@
+
+ version.sed: _version.h
+ @echo Creating version-specific sed script...
+- @/bin/echo s/\<\<version\>\>/`cat .version`/ > version.sed
+- @/bin/echo s/\<\<date\>\>/`date +"%d%b%y" \
++ @echo s/\<\<version\>\>/`cat .version`/ > version.sed
++ @echo s/\<\<date\>\>/`date +"%d%b%y" \
+ | sed -e y/abceglnoprtuvy/ABCEGLNOPRTUVY/`/ >> version.sed
+- @/bin/echo s/\<\<tar-file\>\>/${PACKAGE}-`cat .version`.tar.gz/ \
++ @echo s/\<\<tar-file\>\>/${PACKAGE}-`cat .version`.tar.gz/ \
+ >> version.sed
+- @/bin/echo s/\<\<lsm-file\>\>/${PACKAGE}-`cat .version`.lsm/ >> version.sed
++ @echo s/\<\<lsm-file\>\>/${PACKAGE}-`cat .version`.lsm/ >> version.sed
+
+ .PHONY: ${PACKAGE}.lsm
+ ${PACKAGE}.lsm: version.sed LSM
diff --git a/app-crypt/bsign/files/bsign-0.4.5-scripts.patch b/app-crypt/bsign/files/bsign-0.4.5-scripts.patch
new file mode 100644
index 000000000000..97f79e68e29c
--- /dev/null
+++ b/app-crypt/bsign/files/bsign-0.4.5-scripts.patch
@@ -0,0 +1,48 @@
+diff -urNp bsign-0.4.5/bsign_check bsign-0.4.5.new2/bsign_check
+--- bsign-0.4.5/bsign_check 2002-01-27 22:49:04.000000000 +0200
++++ bsign-0.4.5.new2/bsign_check 2013-06-16 01:00:55.862655310 +0300
+@@ -9,7 +9,7 @@
+ # LOCATIONS gives the path includes and excludes that guide where
+ # bsign looks for input files.
+
+-LOCATIONS=-i / -e /boot -e /cdrom -e /dev -e /proc -e $BASE_PATH
++LOCATIONS="-i / -e /boot -e /cdrom -e /dev -e /proc -e $BASE_PATH"
+
+ # MAIL_TO is the list of email addresses that will receive email when
+ # this script terminates. The mail will contain the output of
+diff -urNp bsign-0.4.5/bsign_hash bsign-0.4.5.new2/bsign_hash
+--- bsign-0.4.5/bsign_hash 2002-01-27 22:49:04.000000000 +0200
++++ bsign-0.4.5.new2/bsign_hash 2013-06-16 01:00:43.543657092 +0300
+@@ -9,7 +9,7 @@
+ # LOCATIONS gives the path includes and excludes that guide where
+ # bsign looks for input files.
+
+-LOCATIONS=-i / -e /boot -e /cdrom -e /dev -e /proc
++LOCATIONS="-i / -e /boot -e /cdrom -e /dev -e /proc"
+
+ # --- End of customization macros
+
+diff -urNp bsign-0.4.5/bsign_sign bsign-0.4.5.new2/bsign_sign
+--- bsign-0.4.5/bsign_sign 2002-01-27 20:44:09.000000000 +0200
++++ bsign-0.4.5.new2/bsign_sign 2013-06-16 01:00:17.737660680 +0300
+@@ -23,7 +23,7 @@ KEY_PATH=$BASE_PATH
+ # LOCATIONS gives the path includes and excludes that guide where
+ # bsign looks for input files.
+
+-LOCATIONS=-i / -e /boot -e /cdrom -e /dev -e /proc -e $BASE_PATH
++LOCATIONS="-i / -e /boot -e /cdrom -e /dev -e /proc -e $BASE_PATH"
+
+ # --- End of customization macros
+
+diff -urNp bsign-0.4.5/bsign_verify bsign-0.4.5.new2/bsign_verify
+--- bsign-0.4.5/bsign_verify 2002-01-27 20:44:09.000000000 +0200
++++ bsign-0.4.5.new2/bsign_verify 2013-06-16 01:00:28.114659254 +0300
+@@ -23,7 +23,7 @@ KEY_PATH=$BASE_PATH
+ # LOCATIONS gives the path includes and excludes that guide where
+ # bsign looks for input files.
+
+-LOCATIONS=-i / -e /boot -e /cdrom -e /dev -e /proc -e $BASE_PATH
++LOCATIONS="-i / -e /boot -e /cdrom -e /dev -e /proc -e $BASE_PATH"
+ #LOCATIONS=-i /bin -i /sbin -i /usr/bin -i /usr/sbin
+
+ # MAIL_TO is the list of email addresses that will receive email when
diff --git a/app-crypt/bsign/metadata.xml b/app-crypt/bsign/metadata.xml
new file mode 100644
index 000000000000..e2e168b2d9c2
--- /dev/null
+++ b/app-crypt/bsign/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <longdescription>
+ This package embeds secure hashes (SHA1) and digital signatures (GNU
+ Privacy Guard) into files for verification and authentication.
+ Currently, target file types are all ELF format: executables, kernel
+ modules, schared and static link libraries. This program has
+ functionality similar to tripwire and integrit without the need to
+ maintain a database.
+ </longdescription>
+</pkgmetadata>
diff --git a/app-crypt/cardpeek/Manifest b/app-crypt/cardpeek/Manifest
new file mode 100644
index 000000000000..7e2efedb9c29
--- /dev/null
+++ b/app-crypt/cardpeek/Manifest
@@ -0,0 +1,3 @@
+DIST cardpeek-0.7.1.tar.gz 599238 SHA256 fa7f4fcabf211fefb968a5a49099e9a07430995556b7d59e95eeefef59538546 SHA512 8ea7f69e096de37543fec779372355a6f6cad709e43a4a66a072b453f962ebe55d25e432fb426cd88824f7165d724ddc6da55a6106e571608162b8094823be45 WHIRLPOOL 95f41d53840969beb3b98729c22ed8fe1e781ab6fe36ad3387cddf52963c2d56f5bca95955681cea839ce64ab6afddfc4d3cbf403e320d8dfec37ac0bd3a68bd
+DIST cardpeek-0.7.2.tar.gz 1130295 SHA256 9908b38a91b4df80ec5a6d6a89780dd41684dc1f203587c1bcc8e4a13cb24ed2 SHA512 9fd1790794b8d092859670bb36a0cdd235e7d098d563032ccdb8143eac00bb77532f1ab918897c4b753afd184079975de34a6f645e31eadb28b6c5a81d344ecd WHIRLPOOL 777397ca535d820453e4d315be495fc5cf845feea457c666cf935d19b8e2c7556b51e4e23f8d009c6165626c450fe5b92413841d0ee56fd6f1d549716ee05e56
+DIST cardpeek-0.8.2.tar.gz 1361187 SHA256 5c616aca68918ce35c8c8378006afdb524f9eef76a2ccc296f5365d389b46c61 SHA512 184539ef926a6ac63d41926b05160d6b91c0ca041d1b40a3e2f5314f9cb35730fbcb9be7c08d2be6f94bc121021168c45235bfa4ccac0fbd28c47159c7a89602 WHIRLPOOL 88e81a52fa485cd56a6e40f99cd5bcfb0532bb86b4c6ac4a789d0118de1468004ddb8963f778eaf5329a5bccf663a2040dc3c2a32d2c0f9124778239212e783d
diff --git a/app-crypt/cardpeek/cardpeek-0.7.1.ebuild b/app-crypt/cardpeek/cardpeek-0.7.1.ebuild
new file mode 100644
index 000000000000..59e6b7abb37e
--- /dev/null
+++ b/app-crypt/cardpeek/cardpeek-0.7.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="Tool to read the contents of smartcards"
+HOMEPAGE="https://code.google.com/p/cardpeek/"
+SRC_URI="https://${PN}.googlecode.com/files/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+RDEPEND=">=x11-libs/gtk+-2.12:2
+ sys-apps/pcsc-lite
+ =dev-lang/lua-5.1*
+ dev-libs/openssl"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
diff --git a/app-crypt/cardpeek/cardpeek-0.7.2.ebuild b/app-crypt/cardpeek/cardpeek-0.7.2.ebuild
new file mode 100644
index 000000000000..f3ee99d21072
--- /dev/null
+++ b/app-crypt/cardpeek/cardpeek-0.7.2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="Tool to read the contents of smartcards"
+HOMEPAGE="https://code.google.com/p/cardpeek/"
+SRC_URI="https://${PN}.googlecode.com/files/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+RDEPEND=">=x11-libs/gtk+-2.12:2
+ sys-apps/pcsc-lite
+ =dev-lang/lua-5.1*
+ dev-libs/openssl"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
diff --git a/app-crypt/cardpeek/cardpeek-0.8.2.ebuild b/app-crypt/cardpeek/cardpeek-0.8.2.ebuild
new file mode 100644
index 000000000000..8bc01faf957a
--- /dev/null
+++ b/app-crypt/cardpeek/cardpeek-0.8.2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="Tool to read the contents of smartcards"
+HOMEPAGE="http://pannetrat.com/Cardpeek"
+SRC_URI="http://downloads.pannetrat.com/install/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS=""
+IUSE=""
+
+RDEPEND="sys-apps/pcsc-lite
+ =dev-lang/lua-5.2*
+ x11-libs/gtk+:3
+ net-misc/curl
+ dev-libs/openssl"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
diff --git a/app-crypt/cardpeek/metadata.xml b/app-crypt/cardpeek/metadata.xml
new file mode 100644
index 000000000000..e70ecc2e1e74
--- /dev/null
+++ b/app-crypt/cardpeek/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/ccid/Manifest b/app-crypt/ccid/Manifest
new file mode 100644
index 000000000000..e0867cea2f6e
--- /dev/null
+++ b/app-crypt/ccid/Manifest
@@ -0,0 +1,2 @@
+DIST ccid-1.4.15.tar.bz2 487625 SHA256 5436182246f15b3e78b1ad6707022b02dc400e3f50c4cb5e5d340a4e716d990a SHA512 393eb65db0fb31b58d4010c10cae6c7592078b02d0e77b7741330cc3b1e5dd768fa08dbaf75db39c547e3603fa70aa1c8aaf3b536266314f2f04d2ff2b6fb29c WHIRLPOOL 0dd511454cf8e39303318b61f9e2390f2ef27b763e80e9270f55ee15966ced8378f3f3ee5440b6380481f970f03ae37bbb2221da6c3d2d658622ea4cdc3aee3f
+DIST ccid-1.4.18.tar.bz2 492113 SHA256 5fdba97a2d2eb1c652b7dd4aa0bb8cee4814bab0cf61aecb84b32b57272541aa SHA512 ff7e331431909fe9fffd4f7aae0a2395b3b755da9c898aa6a6b629f7f516c240b820669146791deb443c646dc8fc56f9100c9f987b3e7d13c24f24f81f06b1f0 WHIRLPOOL 86107ac379e5523c31aa1499e1ecd5a1f6dab5b7f748800b5a22ff2b6470e9bb590407cb8a98ad65870a832149fe8835aa42dff9a30027f0bce843640439ce1e
diff --git a/app-crypt/ccid/ccid-1.4.15.ebuild b/app-crypt/ccid/ccid-1.4.15.ebuild
new file mode 100644
index 000000000000..f1955a27567d
--- /dev/null
+++ b/app-crypt/ccid/ccid-1.4.15.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+STUPID_NUM="3989"
+
+inherit eutils toolchain-funcs udev autotools-utils
+
+DESCRIPTION="CCID free software driver"
+HOMEPAGE="http://pcsclite.alioth.debian.org/ccid.html"
+SRC_URI="http://alioth.debian.org/frs/download.php/file/${STUPID_NUM}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm hppa ~ia64 ppc ppc64 ~sparc x86"
+IUSE="twinserial +usb"
+
+RDEPEND=">=sys-apps/pcsc-lite-1.8.3
+ usb? ( virtual/libusb:1 )"
+DEPEND="${RDEPEND}
+ kernel_linux? ( virtual/pkgconfig )"
+
+DOCS=( README AUTHORS )
+
+src_configure() {
+ local myeconfargs=(
+ LEX=:
+ $(use_enable twinserial)
+ $(use_enable usb libusb)
+ )
+
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+
+ if use kernel_linux; then
+ # note: for eudev support, rules probably will always need to be
+ # installed to /usr
+
+ # ccid >=1.4.11 version changed the rules drastically in a minor
+ # release to nolonger use the pcscd group. Using the old ones in
+ # the mean time.
+ udev_newrules "${FILESDIR}"/92_pcscd_ccid.rules 92-pcsc-ccid.rules
+ fi
+}
diff --git a/app-crypt/ccid/ccid-1.4.18.ebuild b/app-crypt/ccid/ccid-1.4.18.ebuild
new file mode 100644
index 000000000000..c35b1eabc5f7
--- /dev/null
+++ b/app-crypt/ccid/ccid-1.4.18.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+STUPID_NUM="4111"
+
+inherit eutils toolchain-funcs udev autotools-utils
+
+DESCRIPTION="CCID free software driver"
+HOMEPAGE="http://pcsclite.alioth.debian.org/ccid.html"
+SRC_URI="http://alioth.debian.org/frs/download.php/file/${STUPID_NUM}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ppc ppc64 ~sparc x86"
+IUSE="twinserial +usb"
+
+RDEPEND=">=sys-apps/pcsc-lite-1.8.3
+ usb? ( virtual/libusb:1 )"
+DEPEND="${RDEPEND}
+ kernel_linux? ( virtual/pkgconfig )"
+
+DOCS=( README AUTHORS )
+
+src_configure() {
+ local myeconfargs=(
+ LEX=:
+ $(use_enable twinserial)
+ $(use_enable usb libusb)
+ )
+
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+
+ if use kernel_linux; then
+ # note: for eudev support, rules probably will always need to be
+ # installed to /usr
+
+ # ccid >=1.4.11 version changed the rules drastically in a minor
+ # release to no longer use the pcscd group. Using the old ones in
+ # the mean time.
+ udev_newrules "${FILESDIR}"/92_pcscd_ccid-2.rules 92-pcsc-ccid.rules
+ fi
+}
diff --git a/app-crypt/ccid/files/92_pcscd_ccid-2.rules b/app-crypt/ccid/files/92_pcscd_ccid-2.rules
new file mode 100644
index 000000000000..88e0d8c646ba
--- /dev/null
+++ b/app-crypt/ccid/files/92_pcscd_ccid-2.rules
@@ -0,0 +1,50 @@
+# udev rules to set the access rights of CCID smart card readers
+# so they can be used by pcscd
+
+# $Id$
+
+# Gemplus PCMCIA Card
+#SUBSYSTEMS=="pcmcia", DRIVERS=="serial_cs", ACTION=="add", ATTRS{prod_id1}=="Gemplus", ATTRS{prod_id2}=="SerialPort", ATTRS{prod_id3}=="GemPC Card", RUN+="/usr/sbin/pcscd --hotplug"
+
+# If not adding the device, go away
+ACTION!="add", GOTO="pcscd_ccid_rules_end"
+SUBSYSTEM!="usb", GOTO="pcscd_ccid_rules_end"
+ENV{DEVTYPE}!="usb_device", GOTO="pcscd_ccid_rules_end"
+
+# Kobil mIDentity
+ATTRS{idVendor}=="0d46", ATTRS{idProduct}=="4081", RUN+="/usr/sbin/Kobil_mIDentity_switch"
+
+# generic CCID device (bInterfaceClass = 0x0b)
+# change group from default "root" to "pcscd"
+ENV{ID_USB_INTERFACES}=="*:0b0000:*", ENV{PCSCD}="1"
+
+# set USB power management to auto. "power/level" has been deprecated in
+# Linux 2.6.35 and replaced by "power/control"
+ENV{ID_USB_INTERFACES}==":0b0000:", RUN+="/bin/sh -c 'if test -e /sys/$env{DEVPATH}/power/control; then echo auto > /sys/$env{DEVPATH}/power/control; elif test -e /sys/$env{DEVPATH}/power/level; then echo auto > /sys/$env{DEVPATH}/power/level; fi'"
+
+# non CCID generic (InterfaceClass: 0xFF)
+# CherrySmartTerminalST2XXX.txt
+ATTRS{idVendor}=="046a", ATTRS{idProduct}=="003e", ENV{PCSCD}="1"
+# DellSK-3106.txt
+ATTRS{idVendor}=="413c", ATTRS{idProduct}=="2100", ENV{PCSCD}="1"
+# MySmartPad.txt
+ATTRS{idVendor}=="09be", ATTRS{idProduct}=="0002", ENV{PCSCD}="1"
+# SCR3310-NTTCom USB SmartCard Reader
+ATTRS{idVendor}=="04e6", ATTRS{idProduct}=="511a", ENV{PCSCD}="1"
+# SCR331-DI USB Smart Card Reader
+ATTRS{idVendor}=="04e6", ATTRS{idProduct}=="5120", ENV{PCSCD}="1"
+# SCR331-DI.txt
+ATTRS{idVendor}=="04e6", ATTRS{idProduct}=="5111", ENV{PCSCD}="1"
+# SDI010.txt
+ATTRS{idVendor}=="04e6", ATTRS{idProduct}=="5121", ENV{PCSCD}="1"
+# SPR532.txt
+ATTRS{idVendor}=="04e6", ATTRS{idProduct}=="e003", ENV{PCSCD}="1"
+# Verisign_secure_storage_token.txt
+ATTRS{idVendor}=="08e6", ATTRS{idProduct}=="1359", ENV{PCSCD}="1"
+# Verisign_secure_token.txt
+ATTRS{idVendor}=="08e6", ATTRS{idProduct}=="ace0", ENV{PCSCD}="1"
+# SchlumbergerSema Cyberflex Access e-gate
+ATTRS{idVendor}=="0973", ATTRS{idProduct}=="0003", ENV{PCSCD}="1"
+
+# All done
+LABEL="pcscd_ccid_rules_end"
diff --git a/app-crypt/ccid/files/92_pcscd_ccid.rules b/app-crypt/ccid/files/92_pcscd_ccid.rules
new file mode 100644
index 000000000000..5b26aca3e423
--- /dev/null
+++ b/app-crypt/ccid/files/92_pcscd_ccid.rules
@@ -0,0 +1,50 @@
+# udev rules to set the access rights of CCID smart card readers
+# so they can be used by pcscd
+
+# $Id$
+
+# Gemplus PCMCIA Card
+#SUBSYSTEMS=="pcmcia", DRIVERS=="serial_cs", ACTION=="add", ATTRS{prod_id1}=="Gemplus", ATTRS{prod_id2}=="SerialPort", ATTRS{prod_id3}=="GemPC Card", RUN+="/usr/sbin/pcscd --hotplug"
+
+# If not adding the device, go away
+ACTION!="add", GOTO="pcscd_ccid_rules_end"
+SUBSYSTEM!="usb", GOTO="pcscd_ccid_rules_end"
+ENV{DEVTYPE}!="usb_device", GOTO="pcscd_ccid_rules_end"
+
+# Kobil mIDentity
+ATTRS{idVendor}=="0d46", ATTRS{idProduct}=="4081", RUN+="/usr/sbin/Kobil_mIDentity_switch"
+
+# generic CCID device (bInterfaceClass = 0x0b)
+# change group from default "root" to "pcscd"
+ENV{ID_USB_INTERFACES}=="*:0b0000:*", ENV{PCSCD}="1"
+
+# set USB power management to auto. "power/level" has been deprecated in
+# Linux 2.6.35 and replaced by "power/control"
+ENV{ID_USB_INTERFACES}==":0b0000:", RUN+="/bin/sh -c 'echo auto > /sys/$devpath/power/level ; echo auto > /sys/$devpath/power/control'"
+
+# non CCID generic (InterfaceClass: 0xFF)
+# CherrySmartTerminalST2XXX.txt
+ATTRS{idVendor}=="046a", ATTRS{idProduct}=="003e", ENV{PCSCD}="1"
+# DellSK-3106.txt
+ATTRS{idVendor}=="413c", ATTRS{idProduct}=="2100", ENV{PCSCD}="1"
+# MySmartPad.txt
+ATTRS{idVendor}=="09be", ATTRS{idProduct}=="0002", ENV{PCSCD}="1"
+# SCR3310-NTTCom USB SmartCard Reader
+ATTRS{idVendor}=="04e6", ATTRS{idProduct}=="511a", ENV{PCSCD}="1"
+# SCR331-DI USB Smart Card Reader
+ATTRS{idVendor}=="04e6", ATTRS{idProduct}=="5120", ENV{PCSCD}="1"
+# SCR331-DI.txt
+ATTRS{idVendor}=="04e6", ATTRS{idProduct}=="5111", ENV{PCSCD}="1"
+# SDI010.txt
+ATTRS{idVendor}=="04e6", ATTRS{idProduct}=="5121", ENV{PCSCD}="1"
+# SPR532.txt
+ATTRS{idVendor}=="04e6", ATTRS{idProduct}=="e003", ENV{PCSCD}="1"
+# Verisign_secure_storage_token.txt
+ATTRS{idVendor}=="08e6", ATTRS{idProduct}=="1359", ENV{PCSCD}="1"
+# Verisign_secure_token.txt
+ATTRS{idVendor}=="08e6", ATTRS{idProduct}=="ace0", ENV{PCSCD}="1"
+# SchlumbergerSema Cyberflex Access e-gate
+ATTRS{idVendor}=="0973", ATTRS{idProduct}=="0003", ENV{PCSCD}="1"
+
+# All done
+LABEL="pcscd_ccid_rules_end"
diff --git a/app-crypt/ccid/metadata.xml b/app-crypt/ccid/metadata.xml
new file mode 100644
index 000000000000..77a09421d608
--- /dev/null
+++ b/app-crypt/ccid/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <use>
+ <flag name="twinserial">Enable twinserial reader</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-crypt/ccrypt/Manifest b/app-crypt/ccrypt/Manifest
new file mode 100644
index 000000000000..5604385f95ca
--- /dev/null
+++ b/app-crypt/ccrypt/Manifest
@@ -0,0 +1,2 @@
+DIST ccrypt-1.10.tar.gz 669491 SHA256 87d66da2170facabf6f2fc073586ae2c7320d4689980cfca415c74688e499ba0 SHA512 b0130998f9830f63e8181340b3138260ab3c2014174e74fbcca77299dc9e0f807471fbfb7cc403dec7d0809f136e8afcb4c9bfd4ee5e43a1b3cc7185e14c3188 WHIRLPOOL aa65659fecadfaf1a9323b5a80c00eeda41ff7e3db40151abb678ad1c14de1310ba7954d2042baf6bb230ac2fdc52368a367cf91cb7a9ab5d0fec51d5937872b
+DIST ccrypt-1.9.tar.gz 667059 SHA256 6538cb75f7f45faf20f912c7b0d284831b0afced9fc61984b8d45a990276ebaf SHA512 fb4cbf6787f26303735e0eb3d038952b518c2466ac232a625ea9bd5e99400bb9d88a0cc41a690caa9de942f86365c567a802a1faf735306155aab14ea67464b9 WHIRLPOOL 122dd2687bbbb4496fc330e52ba1570d735541e4e08e8614a33a417a4d7abf1c29604dd11a836a2a3c696643a7b46acb8c126248b9eb6fc61c6d9d0baedb20dd
diff --git a/app-crypt/ccrypt/ccrypt-1.10.ebuild b/app-crypt/ccrypt/ccrypt-1.10.ebuild
new file mode 100644
index 000000000000..8fa89b86a42a
--- /dev/null
+++ b/app-crypt/ccrypt/ccrypt-1.10.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+
+DESCRIPTION="Encryption and decryption"
+HOMEPAGE="http://ccrypt.sourceforge.net"
+SRC_URI="http://ccrypt.sourceforge.net/download/${P}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE=""
+
+src_install () {
+ emake \
+ DESTDIR="${D}" \
+ htmldir="${EPREFIX}/usr/share/doc/${PF}" \
+ install || die "emake install failed"
+ dodoc AUTHORS ChangeLog NEWS README
+}
diff --git a/app-crypt/ccrypt/ccrypt-1.9.ebuild b/app-crypt/ccrypt/ccrypt-1.9.ebuild
new file mode 100644
index 000000000000..ba4865465d17
--- /dev/null
+++ b/app-crypt/ccrypt/ccrypt-1.9.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+
+DESCRIPTION="Encryption and decryption"
+HOMEPAGE="http://ccrypt.sourceforge.net"
+SRC_URI="http://ccrypt.sourceforge.net/download/${P}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE=""
+
+src_install () {
+ emake \
+ DESTDIR="${D}" \
+ htmldir="${EPREFIX}/usr/share/doc/${PF}" \
+ install || die "emake install failed"
+ dodoc AUTHORS ChangeLog NEWS README
+}
diff --git a/app-crypt/ccrypt/metadata.xml b/app-crypt/ccrypt/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/ccrypt/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/chntpw/Manifest b/app-crypt/chntpw/Manifest
new file mode 100644
index 000000000000..477187210275
--- /dev/null
+++ b/app-crypt/chntpw/Manifest
@@ -0,0 +1,2 @@
+DIST chntpw-source-110511.zip 758936 SHA256 593514ca8601adb4091d951499b916dfdac2bd34b325d307237fa52ca572b5b7 SHA512 2a0b3638df40481d0650a5fb524b37896db253db83eb8e12836a3f59f12df59bea89ae92710e28bd08dc01f6fa806789be118397fd097732f7132571d3057d56 WHIRLPOOL d3a9e61109f8cc2721ee734cfd6f5da914fc6397e762de3a4e9192b568c24c9c7088d77630dfb93e709f043a54244c5344a2b6fbfdc1bd36881ee4299b805812
+DIST chntpw-source-140201.zip 1404098 SHA256 96e20905443e24cba2f21e51162df71dd993a1c02bfa12b1be2d0801a4ee2ccc SHA512 a26d747f6e077d1bb3e9b8077781f8c37dd978e07b7426495862f15c9004572b706c34736fc4d1ed8856b1a43335d726b4d87c688f7f9a11fd6cc3a74d71a7fa WHIRLPOOL 87284c123d2ae1965d069d4d97cda23ce757305b3521f84089e43a9f1fa8aaa48f8fbad5bba19b3a439cfb16d270e0f77f528664fdba895c65c100492eb9e42a
diff --git a/app-crypt/chntpw/chntpw-110511.ebuild b/app-crypt/chntpw/chntpw-110511.ebuild
new file mode 100644
index 000000000000..80037eb2b7d1
--- /dev/null
+++ b/app-crypt/chntpw/chntpw-110511.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit toolchain-funcs
+
+DESCRIPTION="Offline Windows NT Password & Registry Editor"
+HOMEPAGE="http://pogostick.net/~pnh/ntpasswd/"
+SRC_URI="http://pogostick.net/~pnh/ntpasswd/${PN}-source-${PV}.zip"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="static"
+
+RDEPEND="dev-libs/openssl"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ static? ( dev-libs/openssl[static-libs] )"
+
+src_prepare() {
+ sed -i -e '/-o/s:$(CC):$(CC) $(LDFLAGS):' Makefile || die
+
+ if ! use static ; then
+ sed -i -e "/^all:/s/ \(chntpw\|reged\).static//g" Makefile || die
+ fi
+
+ emake clean
+}
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS} -DUSEOPENSSL -Wall" \
+ LIBS="-lcrypto"
+}
+
+src_install() {
+ dobin chntpw cpnt reged
+
+ if use static; then
+ dobin {chntpw,reged}.static
+ fi
+
+ dodoc {HISTORY,README,regedit,WinReg}.txt
+}
diff --git a/app-crypt/chntpw/chntpw-140201.ebuild b/app-crypt/chntpw/chntpw-140201.ebuild
new file mode 100644
index 000000000000..97a56ace6e9e
--- /dev/null
+++ b/app-crypt/chntpw/chntpw-140201.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit toolchain-funcs
+
+DESCRIPTION="Offline Windows NT Password & Registry Editor"
+HOMEPAGE="http://pogostick.net/~pnh/ntpasswd/"
+SRC_URI="http://pogostick.net/~pnh/ntpasswd/${PN}-source-${PV}.zip"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="static"
+
+RDEPEND="dev-libs/openssl:0"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ static? ( dev-libs/openssl:0[static-libs] )"
+
+src_prepare() {
+ sed -i -e '/-o/s:$(CC):$(CC) $(LDFLAGS):' Makefile || die
+
+ if ! use static ; then
+ sed -i -e "/^all:/s/ \(chntpw\|reged\).static//g" Makefile || die
+ fi
+
+ emake clean
+}
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS} -DUSEOPENSSL -Wall" \
+ LIBS="-lcrypto"
+}
+
+src_install() {
+ dobin chntpw cpnt reged
+
+ if use static; then
+ dobin {chntpw,reged}.static
+ fi
+
+ dodoc {HISTORY,README,regedit,WinReg}.txt
+}
diff --git a/app-crypt/chntpw/metadata.xml b/app-crypt/chntpw/metadata.xml
new file mode 100644
index 000000000000..b02ffbb5d348
--- /dev/null
+++ b/app-crypt/chntpw/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/ckpass/Manifest b/app-crypt/ckpass/Manifest
new file mode 100644
index 000000000000..977cbf49d767
--- /dev/null
+++ b/app-crypt/ckpass/Manifest
@@ -0,0 +1 @@
+DIST ckpass-0.2.tar.gz 95921 SHA256 4027708b9518e7d320958f186f6b932001a3501c88773a88191fe5c976fe0686 SHA512 aca439caea2e3736539f5ec6bb235e51c59fed627eb9b414e629ad246c301e6f1dc90594826f6d95be9963aa4af0dae64419d08a44beb0a02d16a9fdf42a9a0b WHIRLPOOL 462fa8b7a82176ce01d1801525cf2b06ba6702cc2a7bf6e2d38d15a2879366e22524721f990ae36ba7a1c004eeab103ac23490faea9b6fd20a682dc70cf85afa
diff --git a/app-crypt/ckpass/ckpass-0.2.ebuild b/app-crypt/ckpass/ckpass-0.2.ebuild
new file mode 100644
index 000000000000..ce9bc76539fb
--- /dev/null
+++ b/app-crypt/ckpass/ckpass-0.2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils
+
+DESCRIPTION="An ncurses based password database client that is compatible with KeePass 1.x format databases"
+HOMEPAGE="http://ckpass.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND=">=dev-libs/libkpass-6"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-tinfo.patch
+ eautoreconf
+}
+
+DOCS=( AUTHORS )
diff --git a/app-crypt/ckpass/files/ckpass-0.2-tinfo.patch b/app-crypt/ckpass/files/ckpass-0.2-tinfo.patch
new file mode 100644
index 000000000000..8d99bc93ad8f
--- /dev/null
+++ b/app-crypt/ckpass/files/ckpass-0.2-tinfo.patch
@@ -0,0 +1,10 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -29,6 +29,7 @@
+
+ AC_CHECK_LIB([c], [main], [], AC_MSG_ERROR(requires libc))
+ AC_CHECK_LIB([ncurses], [main], [], AC_MSG_ERROR(requires libncurses))
++AC_SEARCH_LIBS([acs_map],[tinfo], [], AC_MSG_ERROR(requires a library providing acs_map))
+ AC_CHECK_LIB([form], [main], [], AC_MSG_ERROR(requires libform))
+ AC_CHECK_LIB([kpass], [main], [], AC_MSG_ERROR(requires libkpass))
+
diff --git a/app-crypt/ckpass/metadata.xml b/app-crypt/ckpass/metadata.xml
new file mode 100644
index 000000000000..90b0f372afc0
--- /dev/null
+++ b/app-crypt/ckpass/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>
+ <email>joker@gentoo.org</email>
+ <name>Christian Birchinger</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">ckpass</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/codecrypt/Manifest b/app-crypt/codecrypt/Manifest
new file mode 100644
index 000000000000..277b1b9031e4
--- /dev/null
+++ b/app-crypt/codecrypt/Manifest
@@ -0,0 +1,2 @@
+DIST codecrypt-1.4.1.tar.gz 411794 SHA256 a3b26bb4d9488bf0569d69db3de57f5109ce64c7900b568fc6da78c4c3fe920f SHA512 d6c03d5e45346ed5c12350ae04e50eed936d45fce9e08ec2ddba8edb1bbbcfc2a3b7415a3f686af2e05630cab3c4ccfea2fe85c6fc471cface7e9038dd37425f WHIRLPOOL b37a5804a81876347ef690bfd7832c7e2a298313fec52b0517c36701fe5e34a8c701c62bd92d562a7f7d8a02b65e060bfc66acf9419f006a0bf60ae4aae049a1
+DIST codecrypt-1.6.tar.gz 436127 SHA256 8d3ea24228160546f747feff3909f21814c280bbce41bfe71956c0a9069f95a5 SHA512 d4e696956d034e2f3d212697c325bb90e6a998865890700e143572953e76e3b8adf3680a9b1fdf3ff8f24cd1c94125da97b587978b6870791a4307e1a75be08d WHIRLPOOL b8a335219b904b6bde11d4a11e612cc4b13962aa5ebe8ecaa99321f6fba5ac30a6b63d212eb4761279048361f69eb338248643157fd1d413caae436a9ec15070
diff --git a/app-crypt/codecrypt/codecrypt-1.4.1.ebuild b/app-crypt/codecrypt/codecrypt-1.4.1.ebuild
new file mode 100644
index 000000000000..20d2f0053b45
--- /dev/null
+++ b/app-crypt/codecrypt/codecrypt-1.4.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Post-quantum cryptography tool"
+HOMEPAGE="http://e-x-a.org/codecrypt/"
+SRC_URI="http://e-x-a.org/codecrypt/files/${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+cryptopp"
+
+DEPEND="dev-libs/gmp
+ cryptopp? ( dev-libs/crypto++ )"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ econf \
+ $(use_with cryptopp)
+}
diff --git a/app-crypt/codecrypt/codecrypt-1.6.ebuild b/app-crypt/codecrypt/codecrypt-1.6.ebuild
new file mode 100644
index 000000000000..20d2f0053b45
--- /dev/null
+++ b/app-crypt/codecrypt/codecrypt-1.6.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Post-quantum cryptography tool"
+HOMEPAGE="http://e-x-a.org/codecrypt/"
+SRC_URI="http://e-x-a.org/codecrypt/files/${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+cryptopp"
+
+DEPEND="dev-libs/gmp
+ cryptopp? ( dev-libs/crypto++ )"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ econf \
+ $(use_with cryptopp)
+}
diff --git a/app-crypt/codecrypt/metadata.xml b/app-crypt/codecrypt/metadata.xml
new file mode 100644
index 000000000000..6b725ff17ca7
--- /dev/null
+++ b/app-crypt/codecrypt/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>exa.exa@gmail.com</email>
+ <name>Mirek Kratochvil</name>
+ <description>Proxied Maintainer</description>
+ </maintainer>
+ <longdescription lang="en">
+ This is a GnuPG-like unix program for encryption and signing
+ that uses only quantum-computer-resistant algorithms
+ </longdescription>
+ <use>
+ <flag name='cryptopp'>
+ Build algorithms that need Crypto++ support
+ <pkg>dev-libs/crypto++</pkg>
+ </flag>
+ </use>
+</pkgmetadata>
+
diff --git a/app-crypt/codegroup/Manifest b/app-crypt/codegroup/Manifest
new file mode 100644
index 000000000000..60a9d07905ae
--- /dev/null
+++ b/app-crypt/codegroup/Manifest
@@ -0,0 +1 @@
+DIST codegroup-20080907.zip 69123 SHA256 fe0dfb5b320b97afd0b639c76a796426bcad50a33a05399ecddde0189133b45b SHA512 3cf7816fe1c4c3b70cabb6e8518f6057cd04e735bef5569aff4b8753005ab33e5c4ac80bc434a45fef75267964ffe25fbfae9d72cffe6db075b4cafeb2b80e93 WHIRLPOOL 16e2e437bdb7b56e0c0d8990edb5071d24ee2f51920a9239c96a2c04f57be7fc42600baff4a0d9a7f835db957a8000576e1a96f1b51ab3944ef07117faf25cbc
diff --git a/app-crypt/codegroup/codegroup-20080907-r1.ebuild b/app-crypt/codegroup/codegroup-20080907-r1.ebuild
new file mode 100644
index 000000000000..f019f7e1c442
--- /dev/null
+++ b/app-crypt/codegroup/codegroup-20080907-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=2
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="encode / decode binary file as five letter codegroups"
+HOMEPAGE="http://www.fourmilab.ch/codegroup/"
+SRC_URI="http://www.fourmilab.ch/${PN}/${PN}.zip -> ${P}.zip"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~sparc ~x86"
+IUSE=""
+
+DEPEND="app-arch/unzip"
+RDEPEND=""
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-Makefile.patch
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" || die
+}
+
+src_install() {
+ dobin ${PN} || die
+
+ doman ${PN}.1 || die
+ dodoc ${PN}.{html,jpg} || die
+}
diff --git a/app-crypt/codegroup/files/codegroup-20080907-Makefile.patch b/app-crypt/codegroup/files/codegroup-20080907-Makefile.patch
new file mode 100644
index 000000000000..4fabba6cb3c6
--- /dev/null
+++ b/app-crypt/codegroup/files/codegroup-20080907-Makefile.patch
@@ -0,0 +1,20 @@
+--- codegroup-20080907/work/Makefile
++++ codegroup-20080907/work/Makefile
+@@ -1,6 +1,7 @@
+
+ PROGS = codegroup
+-CFLAGS = -O -Wall
++CFLAGS =
++LDFLAGS =
+ PAGER = more
+
+ all: $(PROGS)
+@@ -9,7 +10,7 @@
+ rm -f $(PROGS) *.o *.bak *.zip core code.* *.out
+
+ codegroup: codegroup.o
+- $(CC) codegroup.o -o codegroup $(CFLAGS)
++ $(CC) codegroup.o -o codegroup $(CFLAGS) $(LDFLAGS)
+
+ # Create zipped archive
+
diff --git a/app-crypt/codegroup/metadata.xml b/app-crypt/codegroup/metadata.xml
new file mode 100644
index 000000000000..59acc2cc580e
--- /dev/null
+++ b/app-crypt/codegroup/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>
+<email>xmw@gentoo.org</email>
+<name>Michael Weber</name>
+</maintainer>
+</pkgmetadata>
+
diff --git a/app-crypt/coolkey/Manifest b/app-crypt/coolkey/Manifest
new file mode 100644
index 000000000000..41cc6c66ddf7
--- /dev/null
+++ b/app-crypt/coolkey/Manifest
@@ -0,0 +1,2 @@
+DIST coolkey-1.1.0-patches-002.tar.gz 20574 SHA256 42767673025f7410bc1169231f7759abe4de69d8fa204fc8acfbe228b543129a SHA512 94050979f04f24924331b8a7c38b60de207d32b964caa39714aefd9f616ab7dd4e58b51e2c49fdb63b4dec1acce0c7245ae0a025ef76d457162b7200193dc663 WHIRLPOOL 55fee8ff261b8b3b8e16af05c1a6e7b4acd8eacaa0c73f5dd7bdf4918929097918be0f1ec2feaa5385d991d2a472672c7306dee60f4d61d313b2c47ec691f66a
+DIST coolkey-1.1.0.tar.gz 432808 SHA256 8448e3abb81bffc593c96b577dcfbc05b40e8684188456c31be15fae73d730f7 SHA512 4b61de9b40abcf620fbb519d5e3cf1e93ebdd0470854cb63a597fc91e0182998217353014327f7bc4f255d22515d8ea2b08d36b3a831f5f09134fdcd418bc08b WHIRLPOOL 60408f606a5cf5d9ec1ba3938a96a6f938c8d9f4b7ace2677ff35ce125104995675bf0decae92575e82dfc1a2eeaa26c4197ad174a4d3901250c43d906976c24
diff --git a/app-crypt/coolkey/coolkey-1.1.0-r6.ebuild b/app-crypt/coolkey/coolkey-1.1.0-r6.ebuild
new file mode 100644
index 000000000000..4b3fe498f018
--- /dev/null
+++ b/app-crypt/coolkey/coolkey-1.1.0-r6.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+
+inherit eutils
+
+PATCHVER="002"
+
+DESCRIPTION="Linux Driver support for the CoolKey and CAC products"
+HOMEPAGE="http://directory.fedora.redhat.com/wiki/CoolKey"
+SRC_URI="http://directory.fedora.redhat.com/download/coolkey/${P}.tar.gz
+ mirror://gentoo/${P}-patches-${PATCHVER}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="debug"
+
+RDEPEND=">=sys-apps/pcsc-lite-1.6.4
+ dev-libs/nss[utils]
+ sys-libs/zlib"
+
+DEPEND="${RDEPEND}
+ >=app-crypt/ccid-1.4.0
+ virtual/pkgconfig"
+
+pkg_setup() {
+ pk="pk11install"
+ dbdir="/etc/pki/nssdb"
+ ck_mod_name="CoolKey PKCS #11 Module"
+
+ if ! [[ -x $dbdir ]]; then
+ ewarn "No /etc/pki/nssdb found; check under \$HOME/.pki and"
+ ewarn "follow the suggested commands using the correct path."
+ fi
+}
+
+src_prepare() {
+ epatch "${WORKDIR}/${PN}-patches"/*
+}
+
+src_configure() {
+ econf --enable-pk11install $(use_enable debug) \
+ || die "configure failed"
+}
+
+src_compile() {
+ emake CFLAGS+="-fno-strict-aliasing" -j1 || die "make failed"
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ diropts -m 1777
+ keepdir /var/cache/coolkey
+}
+
+pkg_postinst() {
+ if [[ -x $dbdir ]]; then
+ if ! $(modutil -rawlist -dbdir $dbdir | grep libcoolkeypk11); then
+ elog "You still need to install libcoolkey in your PKCS11 library:"
+ elog "$pk -p $dbdir 'name=$ck_mod_name library=libcoolkeypk11.so'"
+
+ fi
+ else
+ elog ""
+ elog "You still need to setup your PKCS11 library, or at least"
+ elog "find where it is (perhaps \$HOME/.pki/nssdb). Once you"
+ elog "find it, use 'modutil -rawlist -dbdir \$db' to look for"
+ elog "libcoolkeypk11.so, and if not found, add it using:"
+ elog ""
+ elog "$pk -p \$db 'name=$ck_mod_name library=libcoolkeypk11.so'"
+ elog ""
+ elog "where \$db is the full path to your pki/nssdb directory."
+ elog ""
+ fi
+}
+
+pkg_postrm() {
+ if [[ -x $dbdir ]]; then
+ if $(modutil -rawlist -dbdir $dbdir | grep libcoolkeypk11); then
+ elog "You should remove libcoolkey from your PKCS11 library."
+ fi
+ fi
+}
diff --git a/app-crypt/coolkey/metadata.xml b/app-crypt/coolkey/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/coolkey/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/crackpkcs12/Manifest b/app-crypt/crackpkcs12/Manifest
new file mode 100644
index 000000000000..883315c0d607
--- /dev/null
+++ b/app-crypt/crackpkcs12/Manifest
@@ -0,0 +1 @@
+DIST crackpkcs12-0.2.9.tar.gz 93931 SHA256 0c9aa4e643986e71866f185cb0fa09c74cb1f4c95ff48ffd013a5a4677bf49e0 SHA512 6c2463a7a76d2e2ef728b37f46f818ad279e3bd828254f54ac6c0d44e737436d7d026af2a54a54e07910d9b54058b3c5764e4066f7a8e40ca75ae7d8970f9eaa WHIRLPOOL 4886c14768b6b4fdf2ca02adad2e4b2a00486084cb5cfa5f29459254d00c6dac287877ea913a4900036bb3367e3cb5c7ac0f68d931ac0ed02fd7bb760f3dd4f8
diff --git a/app-crypt/crackpkcs12/crackpkcs12-0.2.9.ebuild b/app-crypt/crackpkcs12/crackpkcs12-0.2.9.ebuild
new file mode 100644
index 000000000000..e5d598e2512c
--- /dev/null
+++ b/app-crypt/crackpkcs12/crackpkcs12-0.2.9.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+DESCRIPTION="multithreaded program to crack PKCS#12 files"
+HOMEPAGE="http://crackpkcs12.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl"
+DEPEND="${RDEPEND}"
diff --git a/app-crypt/crackpkcs12/metadata.xml b/app-crypt/crackpkcs12/metadata.xml
new file mode 100644
index 000000000000..33c685bf362c
--- /dev/null
+++ b/app-crypt/crackpkcs12/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>
+ <email>vapier@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">crackpkcs12</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/cryptkeeper/Manifest b/app-crypt/cryptkeeper/Manifest
new file mode 100644
index 000000000000..51017343cf63
--- /dev/null
+++ b/app-crypt/cryptkeeper/Manifest
@@ -0,0 +1 @@
+DIST cryptkeeper-0.9.5.tar.gz 222671 SHA256 1f9805d31562e448bf9bc11fdc2879f908ba42bfef5ad6adfa3877fc3b306984 SHA512 824c8b941d46904dd7f4b12a5f217aba25c848e016473d44ec71739baec78a7782dd00bb5d0c5dafc947235eddf558b8fe01a92e23b88b23352a05d0389cea3d WHIRLPOOL 7cf04ef6626cfc49d773ba67b83ab54f5d47d16a88d1541a9d1d8d3d2add9c744403759904ed2fce1feda0f9a654eeec39e8fd0c169418823b60300917b63ab4
diff --git a/app-crypt/cryptkeeper/cryptkeeper-0.9.5.ebuild b/app-crypt/cryptkeeper/cryptkeeper-0.9.5.ebuild
new file mode 100644
index 000000000000..53e0fff666b0
--- /dev/null
+++ b/app-crypt/cryptkeeper/cryptkeeper-0.9.5.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+
+inherit base eutils gnome2
+
+DESCRIPTION="EncFS system tray applet for GNOME"
+HOMEPAGE="http://tom.noflag.org.uk/cryptkeeper.html"
+SRC_URI="http://tom.noflag.org.uk/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="nls"
+
+RDEPEND="gnome-base/gconf:2
+ >=sys-fs/encfs-1.7.2
+ >=sys-fs/fuse-2.8.0
+ gnome-extra/zenity"
+DEPEND="${RDEPEND}
+ nls? ( sys-devel/gettext )"
+
+RESTRICT="test"
+
+PATCHES=(
+ "${FILESDIR}/${P}-binutils-gold.patch"
+ "${FILESDIR}/${P}-fix_cryptkeeper.desktop.patch"
+ "${FILESDIR}/${P}-fix-ftbfs-gcc-4.7-672010.patch"
+ "${FILESDIR}/${P}-is_mounted_overflow_fix.patch"
+)
+
+DOCS="TODO"
+
+src_prepare() {
+ base_src_prepare
+ gnome2_src_prepare
+}
+
+src_configure() {
+ econf $(use_enable nls)
+}
diff --git a/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-binutils-gold.patch b/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-binutils-gold.patch
new file mode 100644
index 000000000000..875222592505
--- /dev/null
+++ b/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-binutils-gold.patch
@@ -0,0 +1,15 @@
+Description: Fixes a build failure using binutils-gold
+Author: Franceco Namuri <francesco@namuri.it>
+Index: cryptkeeper-0.9.5/configure
+===================================================================
+--- cryptkeeper-0.9.5.orig/configure 2009-10-18 13:58:01.000000000 +0200
++++ cryptkeeper-0.9.5/configure 2011-12-11 12:04:13.045285159 +0100
+@@ -6707,7 +6707,7 @@
+
+ CFLAGS="$CFLAGS $DEP_CFLAGS $GNOME_KEYRING_CFLAGS"
+ CXXFLAGS="$CFLAGS"
+-LIBS="$DEP_LIBS $GNOME_KEYRING_LIBS"
++LIBS="-lX11 $DEP_LIBS $GNOME_KEYRING_LIBS"
+
+ #AC_PROG_LIBTOOL
+
diff --git a/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-fix-ftbfs-gcc-4.7-672010.patch b/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-fix-ftbfs-gcc-4.7-672010.patch
new file mode 100644
index 000000000000..e9f9f018bc25
--- /dev/null
+++ b/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-fix-ftbfs-gcc-4.7-672010.patch
@@ -0,0 +1,18 @@
+Description: add missing include to avoid FTBFS with gcc 4.7
+Origin: vendor
+Bug-Debian: http://bugs.debian.org/672010
+Forwarded: no
+Author: Paul Tagliamonte <tag@pault.ag>
+Reviewed-by: gregor herrmann <gregoa@debian.org>
+Last-Update: 2012-05-15
+
+--- a/src/lsof.cpp 2012-05-09 21:27:01.138367215 -0400
++++ b/src/lsof.cpp 2012-05-09 21:26:52.398367682 -0400
+@@ -21,6 +21,7 @@
+ #include <vector>
+ #include <assert.h>
+ #include <cstring>
++#include <unistd.h>
+ #include "lsof.h"
+
+ fsuser::fsuser(const char *pid, const char *name)
diff --git a/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-fix_cryptkeeper.desktop.patch b/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-fix_cryptkeeper.desktop.patch
new file mode 100644
index 000000000000..464f3ca77953
--- /dev/null
+++ b/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-fix_cryptkeeper.desktop.patch
@@ -0,0 +1,17 @@
+Description: Fixes the category of cryptkeeper menu item
+Author: Francesco Namuri <francesco@namuri.it>
+Index: cryptkeeper-0.9.5/cryptkeeper.desktop
+===================================================================
+--- cryptkeeper-0.9.5.orig/cryptkeeper.desktop 2011-12-11 12:04:59.053286893 +0100
++++ cryptkeeper-0.9.5/cryptkeeper.desktop 2011-12-11 12:05:02.777287034 +0100
+@@ -1,9 +1,8 @@
+ [Desktop Entry]
+-Encoding=UTF-8
+ Name=Cryptkeeper
+ Exec=cryptkeeper
+ Icon=cryptkeeper
+-Categories=Application;System;
++Categories=System;GTK;Security;
+ Terminal=false
+ Type=Application
+ StartupNotify=false
diff --git a/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-is_mounted_overflow_fix.patch b/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-is_mounted_overflow_fix.patch
new file mode 100644
index 000000000000..c2a9a0ca0085
--- /dev/null
+++ b/app-crypt/cryptkeeper/files/cryptkeeper-0.9.5-is_mounted_overflow_fix.patch
@@ -0,0 +1,53 @@
+commit 86b960a528df7118ab43b629bbd906db7459300d
+Author: Jon Dowland <jmtd@debian.org>
+Date: Sun May 22 12:48:39 2011 +0100
+
+ fix is_mounted (memory leaks and NULL access)
+
+ Ensure that the return of realpath is checked for NULL before
+ access. Ensure that the return value is free'd before it falls
+ out of scope. Related tidying up.
+
+diff --git a/src/encfs_wrapper.cpp b/src/encfs_wrapper.cpp
+index 347337b..961818b 100644
+--- a/src/encfs_wrapper.cpp
++++ b/src/encfs_wrapper.cpp
+@@ -33,24 +33,24 @@
+
+ bool is_mounted(const char *mount_dir)
+ {
++ struct mntent *m;
+ FILE *f = setmntent("/etc/mtab", "r");
+- char *mount_dir_expanded = realpath(mount_dir, NULL);
+- if (mount_dir_expanded == NULL) {
+- // no such file or dir, ...
+- // so: not mounted
+- // perror("cryptkeeper, is_mounted");
++ char *mount_dir_expanded, *mnt_dir_expanded;
++
++ if (!(mount_dir_expanded = realpath(mount_dir, NULL)))
+ return false;
+- }
+- for (;;) {
+- char *mnt_dir_expanded;
+- struct mntent *m = getmntent(f);
+- if (!m) break;
+- mnt_dir_expanded = realpath(m->mnt_dir, NULL);
+- if (strcmp(mount_dir_expanded, mnt_dir_expanded)==0) {
++
++ while(m = getmntent(f)) {
++ if(mnt_dir_expanded = realpath(m->mnt_dir, NULL)) {
++ if (strcmp(mount_dir_expanded, mnt_dir_expanded)==0) {
++ free(mnt_dir_expanded);
++ free(mount_dir_expanded);
++ return true;
++ }
+ free(mnt_dir_expanded);
+- return true;
+- }
++ }
+ }
++ free(mount_dir_expanded);
+ return false;
+ }
+
diff --git a/app-crypt/cryptkeeper/metadata.xml b/app-crypt/cryptkeeper/metadata.xml
new file mode 100644
index 000000000000..ad4f9bee6d8f
--- /dev/null
+++ b/app-crypt/cryptkeeper/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>proxy-maintainers</herd>
+<maintainer>
+ <email>phobosk@kbfx.net</email>
+ <name>PhobosK</name>
+ <description>Proxy maintainer. Assign bugs to him.</description>
+</maintainer>
+<longdescription>
+Cryptkeeper is a Linux system tray applet that manages EncFS encrypted folders.
+It allows users to mount and unmount encfs folders, to change the password and
+to create new crypted folders. It integrates with a preferred file manager.
+</longdescription>
+</pkgmetadata>
diff --git a/app-crypt/dieharder/Manifest b/app-crypt/dieharder/Manifest
new file mode 100644
index 000000000000..6957e01efdc3
--- /dev/null
+++ b/app-crypt/dieharder/Manifest
@@ -0,0 +1,2 @@
+DIST dieharder-2.28.1.tgz 766985 SHA256 748ec4716e64de38807e126f10335e45136fa789056e9f647a6bf73698205286 SHA512 35e210fd0fff9ecb3e68494058a9943e6684dd98d3a3ff70776b52a7de7fcbda28f10084f23f3872793da365ed8e16c0a91941266272e6e97575c9b146b17e14 WHIRLPOOL 8f17197f095831cc63601367ab73bac2ac19fda129ee321543883ee69477f9a253abaf3cc9a1e376bb531093bae56119dfd49f29deb29cad1ac411bccfa72a02
+DIST dieharder-3.31.1.tgz 1149780 SHA256 6cff0ff8394c553549ac7433359ccfc955fb26794260314620dfa5e4cd4b727f SHA512 e01ed4266b4fe5d5fadde3c92c30e430d0ca5f7fedd26b26ed2ab98b7602aa9c35bb5c8fd9314ef2f5235b5087645ab13e5e6550156e26643baa5aeb77088dc5 WHIRLPOOL eb10fffbe839b2448b1955841dd4c3dee45f21ab89eb5107e82c3fef8706f7386ee6b6c21aa947c2cbe1f16075c7882975c9eff5fb17876799c15ccce9b5eca1
diff --git a/app-crypt/dieharder/dieharder-2.28.1.ebuild b/app-crypt/dieharder/dieharder-2.28.1.ebuild
new file mode 100644
index 000000000000..943426c5e666
--- /dev/null
+++ b/app-crypt/dieharder/dieharder-2.28.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=2
+
+WANT_AUTOCONF="2.5"
+inherit autotools eutils
+
+DESCRIPTION="An advanced suite for testing the randomness of RNG's"
+HOMEPAGE="http://www.phy.duke.edu/~rgb/General/dieharder.php"
+SRC_URI="http://www.phy.duke.edu/~rgb/General/${PN}/${P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="sci-libs/gsl"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-qafixes.patch
+ eautoreconf
+}
+
+src_compile() {
+ emake all-recursive || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+ dodoc NEWS README* NOTES || die
+ docinto "dieharder"
+ dodoc dieharder/README dieharder/NOTES || die
+ docinto "libdieharder"
+ dodoc libdieharder/README libdieharder/NOTES || die
+}
diff --git a/app-crypt/dieharder/dieharder-3.31.1-r1.ebuild b/app-crypt/dieharder/dieharder-3.31.1-r1.ebuild
new file mode 100644
index 000000000000..49db3e0147f0
--- /dev/null
+++ b/app-crypt/dieharder/dieharder-3.31.1-r1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils
+
+DESCRIPTION="An advanced suite for testing the randomness of RNG's"
+HOMEPAGE="http://www.phy.duke.edu/~rgb/General/dieharder.php"
+SRC_URI="http://www.phy.duke.edu/~rgb/General/${PN}/${P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+RDEPEND="sci-libs/gsl"
+DEPEND="${RDEPEND}
+ doc? ( dev-tex/latex2html )"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-build.patch"
+ eautoreconf
+}
+
+src_compile() {
+ emake -j1
+ use doc && emake -C manual
+}
+
+src_install() {
+ default
+ dodoc NOTES
+ docinto "dieharder"
+ dodoc dieharder/README dieharder/NOTES
+ docinto "libdieharder"
+ dodoc libdieharder/README libdieharder/NOTES
+
+ if use doc ; then
+ dodoc ChangeLog dieharder.html
+ docinto "manual"
+ dodoc manual/dieharder.pdf manual/dieharder.ps
+ fi
+}
diff --git a/app-crypt/dieharder/dieharder-3.31.1.ebuild b/app-crypt/dieharder/dieharder-3.31.1.ebuild
new file mode 100644
index 000000000000..92d7ad4d6817
--- /dev/null
+++ b/app-crypt/dieharder/dieharder-3.31.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="An advanced suite for testing the randomness of RNG's"
+HOMEPAGE="http://www.phy.duke.edu/~rgb/General/dieharder.php"
+SRC_URI="http://www.phy.duke.edu/~rgb/General/${PN}/${P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+RDEPEND="sci-libs/gsl"
+DEPEND="${RDEPEND}
+ doc? ( dev-tex/latex2html )"
+
+src_compile() {
+ emake all-recursive
+ use doc && emake -C manual
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc AUTHORS README NOTES
+ docinto "dieharder"
+ dodoc dieharder/README dieharder/NOTES
+ docinto "libdieharder"
+ dodoc libdieharder/README libdieharder/NOTES
+
+ if use doc ; then
+ dodoc ChangeLog dieharder.html
+ docinto "manual"
+ dodoc manual/dieharder.pdf manual/dieharder.ps
+ fi
+}
diff --git a/app-crypt/dieharder/files/dieharder-2.28.1-qafixes.patch b/app-crypt/dieharder/files/dieharder-2.28.1-qafixes.patch
new file mode 100644
index 000000000000..265d566c801c
--- /dev/null
+++ b/app-crypt/dieharder/files/dieharder-2.28.1-qafixes.patch
@@ -0,0 +1,33 @@
+--- libdieharder/static_get_bits.c 2008-09-08 08:37:18.000000000 -0400
++++ libdieharder/static_get_bits.c.new 2010-12-21 09:39:02.000000000 -0500
+@@ -44,7 +44,7 @@
+ }
+ if(nbits > 32){
+ fprintf(stderr,"Warning! dieharder cannot yet work with\b");
+- fprintf(stderr," %u > 32 bit chunks. Exiting!\n\n");
++ fprintf(stderr," %u > 32 bit chunks. Exiting!\n\n", nbits);
+ exit(0);
+ }
+
+--- libdieharder/bits.c 2008-09-08 08:37:18.000000000 -0400
++++ libdieharder/bits.c.new 2010-12-21 09:45:51.000000000 -0500
+@@ -944,7 +944,7 @@
+ */
+ MYDEBUG(D_BITS) {
+ printf("bu = %d bl = %d\n",bu,bl);
+- printf(" init %2d: |");
++ printf(" init %2d: |",bleft);
+ dumpbits(&bits_rand[0],bu);
+ printf("|");
+ dumpbits(&bits_rand[1],bu);
+--- libdieharder/marsaglia_tsang_gcd.c 2008-09-08 08:37:19.000000000 -0400
++++ libdieharder/marsaglia_tsang_gcd.c.new 2010-12-21 09:47:40.000000000 -0500
+@@ -289,7 +289,7 @@
+ Vtest_destroy(&vtest_u);
+
+ if(verbose == D_USER_TEMPLATE || verbose == D_ALL){
+- printf("# user_marsaglia_tsang_gcd(): ks_pvalue_k[%u] = %10.5f ks_pvalue_w[%u] = %10.5f\n",kspi,ks_pvalue[kspi],ks_pvalue2[kspi]);
++ printf("# user_marsaglia_tsang_gcd(): ks_pvalue_k[%u] = %10.5f ks_pvalue_w[%u] = %10.5f\n",kspi,ks_pvalue[kspi],kspi,ks_pvalue2[kspi]);
+ }
+
+ kspi++;
diff --git a/app-crypt/dieharder/files/dieharder-3.31.1-build.patch b/app-crypt/dieharder/files/dieharder-3.31.1-build.patch
new file mode 100644
index 000000000000..4cbd5021c77c
--- /dev/null
+++ b/app-crypt/dieharder/files/dieharder-3.31.1-build.patch
@@ -0,0 +1,27 @@
+diff --git a/include/dieharder/libdieharder.h b/include/dieharder/libdieharder.h
+index 2138ebf..f6d471b 100644
+--- a/include/dieharder/libdieharder.h
++++ b/include/dieharder/libdieharder.h
+@@ -6,6 +6,8 @@
+
+ #include "copyright.h"
+
++#define _GNU_SOURCE
++
+ /* To enable large file support */
+ #define _FILE_OFFSET_BITS 64
+
+@@ -16,13 +18,11 @@
+ #include <sys/time.h>
+
+ /* This turns on uint macro in c99 */
+-#define __USE_MISC 1
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+
+ /* This turns on M_PI in math.h */
+-#define __USE_BSD 1
+ #include <math.h>
+ #include <limits.h>
+ #include <gsl/gsl_rng.h>
diff --git a/app-crypt/dieharder/metadata.xml b/app-crypt/dieharder/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/dieharder/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/dirmngr/Manifest b/app-crypt/dirmngr/Manifest
new file mode 100644
index 000000000000..6b6bad27ca15
--- /dev/null
+++ b/app-crypt/dirmngr/Manifest
@@ -0,0 +1 @@
+DIST dirmngr-1.1.1.tar.bz2 566929 SHA256 d2280b8c314db80cdaf101211a47826734443436f5c3545cc1b614c50eaae6ff SHA512 922512f22853c49cf291207c81862c68ba51c89646036288592d6b2f57709d35ac53f9f550569986c04daec20403ab8ec85b08893443af417950916b869c8419 WHIRLPOOL 84a174d42418723e346c7af8d9bb9aa12e4602cbba9510f492ef10d29f4900768ede986d2c7c93cee129ce03e5aeca08357490ec050b54e1250e2e4b36150617
diff --git a/app-crypt/dirmngr/dirmngr-1.1.1-r1.ebuild b/app-crypt/dirmngr/dirmngr-1.1.1-r1.ebuild
new file mode 100644
index 000000000000..d9c8bd8d558d
--- /dev/null
+++ b/app-crypt/dirmngr/dirmngr-1.1.1-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils
+
+DESCRIPTION="DirMngr is a daemon to handle CRL and certificate requests for GnuPG"
+HOMEPAGE="http://www.gnupg.org/download/index.en.html#dirmngr"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="alpha amd64 hppa ~ia64 ppc ppc64 sparc x86"
+IUSE="nls"
+
+RDEPEND=">=net-nds/openldap-2.1.26
+ >=dev-libs/libgpg-error-1.4
+ >=dev-libs/libgcrypt-1.4.0:0
+ >=dev-libs/libksba-1.0.2
+ >=dev-libs/pth-1.3.7
+ nls? ( virtual/libintl )"
+
+DEPEND="${RDEPEND}
+ >=dev-libs/libassuan-2
+ nls? ( >=sys-devel/gettext-0.12.1 )"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-pth.patch"
+}
+
+src_configure() {
+ econf --docdir="/usr/share/doc/${PF}" $(use_enable nls) \
+ LDAPLIBS="-lldap -llber"
+}
+
+src_install() {
+ default
+ dodoc AUTHORS ChangeLog NEWS README THANKS TODO
+}
diff --git a/app-crypt/dirmngr/files/dirmngr-1.1.1-pth.patch b/app-crypt/dirmngr/files/dirmngr-1.1.1-pth.patch
new file mode 100644
index 000000000000..862458ed1db6
--- /dev/null
+++ b/app-crypt/dirmngr/files/dirmngr-1.1.1-pth.patch
@@ -0,0 +1,17 @@
+Index: src/dirmngr.c
+===================================================================
+--- src/dirmngr.c (revision 348)
++++ src/dirmngr.c (working copy)
+@@ -665,8 +665,11 @@
+ the option parsing may need services of the libraries. */
+
+ /* Libgcrypt requires us to register the threading model first.
+- Note that this will also do the pth_init. */
++ Note that this will also do the pth_init for libgcrypt < 1.6 */
+
++#if GCRYPT_VERSION_NUMBER >= 0x010600
++ pth_init ();
++#endif
+ /* Init Libgcrypt. */
+ rc = gcry_control (GCRYCTL_SET_THREAD_CBS, &gcry_threads_pth);
+ if (rc)
diff --git a/app-crypt/dirmngr/metadata.xml b/app-crypt/dirmngr/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/dirmngr/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/easy-rsa/Manifest b/app-crypt/easy-rsa/Manifest
new file mode 100644
index 000000000000..f1fa3a85ccdf
--- /dev/null
+++ b/app-crypt/easy-rsa/Manifest
@@ -0,0 +1,2 @@
+DIST EasyRSA-2.2.2.tgz 10492 SHA256 68da869085dde7c6a964e9c6104b86e4af91c4c592f8ec2a2f6cfc9d20808991 SHA512 b09bd1a71c1bfeb3c2ff63f10b7781badf6d2b4888d97d917565436435b85fb90eebf7727db293bdc44039f23c7f3c3c4e762a22bf7d6e9ed7642a2f07e1ffe4 WHIRLPOOL 27b7d761a317d8787526dbdc1878e62326e6ca13730ddf9b50fe918f010c23d1535dfa4f6bfb76bf26bd005942105a0e862359579faf7b6fe803ad7ca53d627e
+DIST easy-rsa-2.2.0_master.tar.gz 80460 SHA256 d23ddc3a764b40d03ada76f387c92ae4dcf4f5266da54c2bae130325b05eebe2 SHA512 81b5d6e805c5d9fcadf6425dbc311b6a151d857cb837ce9b419b653ee546e5742d13864d25e9ab8caffee95e5116d1611323288e80c65c3c88730533919e2fb4 WHIRLPOOL ff65ca8e3b47123aa3765937d508682afe51c9831e8dbc3e57cb5000088cc69ad5e086618e647e90677481c2d5e7d34733fd7ba50a067810e1a42c876d348823
diff --git a/app-crypt/easy-rsa/easy-rsa-2.2.0-r1.ebuild b/app-crypt/easy-rsa/easy-rsa-2.2.0-r1.ebuild
new file mode 100644
index 000000000000..59e09d68bfb5
--- /dev/null
+++ b/app-crypt/easy-rsa/easy-rsa-2.2.0-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils
+
+DESCRIPTION="Small RSA key management package, based on OpenSSL"
+HOMEPAGE="http://openvpn.net/"
+SRC_URI="http://swupdate.openvpn.net/community/releases/${P}_master.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ~ppc64 ~s390 ~sh ~sparc x86"
+IUSE=""
+
+DEPEND=">=dev-libs/openssl-0.9.6:0"
+RDEPEND="${DEPEND}
+ !<net-misc/openvpn-2.3"
+
+S="${WORKDIR}/${P}_master"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-2.0.0-pkcs11.patch \
+ "${FILESDIR}"/no-licenses.patch
+}
+
+src_configure() {
+ econf --docdir="${EPREFIX}/usr/share/doc/${PF}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ doenvd "${FILESDIR}/65easy-rsa" # config-protect easy-rsa
+}
diff --git a/app-crypt/easy-rsa/easy-rsa-2.2.2.ebuild b/app-crypt/easy-rsa/easy-rsa-2.2.2.ebuild
new file mode 100644
index 000000000000..aa37a2706f81
--- /dev/null
+++ b/app-crypt/easy-rsa/easy-rsa-2.2.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+MY_P="EasyRSA-${PV}"
+
+DESCRIPTION="Small RSA key management package, based on OpenSSL"
+HOMEPAGE="http://openvpn.net/"
+SRC_URI="https://github.com/OpenVPN/easy-rsa/releases/download/${PV}/${MY_P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ~ppc64 ~s390 ~sh ~sparc x86"
+IUSE=""
+
+DEPEND=">=dev-libs/openssl-0.9.6:0"
+RDEPEND="${DEPEND}
+ !<net-misc/openvpn-2.3"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PV}-pkcs11.patch"
+}
+
+src_install() {
+ exeinto /usr/share/easy-rsa
+ doexe build-* clean-all inherit-inter list-crl pkitool revoke-full sign-req whichopensslcnf
+ insinto /usr/share/easy-rsa
+ doins vars openssl-*.cnf
+ doenvd "${FILESDIR}/65easy-rsa" # config-protect easy-rsa
+}
diff --git a/app-crypt/easy-rsa/files/2.2.2-pkcs11.patch b/app-crypt/easy-rsa/files/2.2.2-pkcs11.patch
new file mode 100644
index 000000000000..8e026c231246
--- /dev/null
+++ b/app-crypt/easy-rsa/files/2.2.2-pkcs11.patch
@@ -0,0 +1,36 @@
+diff --git a/easy-rsa/2.0/openssl-0.9.8.cnf b/easy-rsa/2.0/openssl-0.9.8.cnf
+index 340b8af..89602a2 100755
+--- a/openssl-0.9.8.cnf
++++ b/openssl-0.9.8.cnf
+@@ -283,8 +283,8 @@ authorityKeyIdentifier=keyid:always,issuer:always
+ #pkcs11 = pkcs11_section
+
+ [ pkcs11_section ]
+-engine_id = pkcs11
+-dynamic_path = /usr/lib/engines/engine_pkcs11.so
+-MODULE_PATH = $ENV::PKCS11_MODULE_PATH
+-PIN = $ENV::PKCS11_PIN
+-init = 0
++#engine_id = pkcs11
++#dynamic_path = /usr/lib/engines/engine_pkcs11.so
++#MODULE_PATH = $ENV::PKCS11_MODULE_PATH
++#PIN = $ENV::PKCS11_PIN
++#init = 0
+diff --git a/easy-rsa/2.0/openssl-1.0.0.cnf b/easy-rsa/2.0/openssl-1.0.0.cnf
+index fa258a5..527919d 100755
+--- a/openssl-1.0.0.cnf
++++ b/openssl-1.0.0.cnf
+@@ -278,8 +278,8 @@ authorityKeyIdentifier=keyid:always,issuer:always
+ #pkcs11 = pkcs11_section
+
+ [ pkcs11_section ]
+-engine_id = pkcs11
+-dynamic_path = /usr/lib/engines/engine_pkcs11.so
+-MODULE_PATH = $ENV::PKCS11_MODULE_PATH
+-PIN = $ENV::PKCS11_PIN
+-init = 0
++#engine_id = pkcs11
++#dynamic_path = /usr/lib/engines/engine_pkcs11.so
++#MODULE_PATH = $ENV::PKCS11_MODULE_PATH
++#PIN = $ENV::PKCS11_PIN
++#init = 0
diff --git a/app-crypt/easy-rsa/files/65easy-rsa b/app-crypt/easy-rsa/files/65easy-rsa
new file mode 100644
index 000000000000..cc8b42e22ea5
--- /dev/null
+++ b/app-crypt/easy-rsa/files/65easy-rsa
@@ -0,0 +1 @@
+CONFIG_PROTECT="/usr/share/easy-rsa"
diff --git a/app-crypt/easy-rsa/files/easy-rsa-2.0.0-pkcs11.patch b/app-crypt/easy-rsa/files/easy-rsa-2.0.0-pkcs11.patch
new file mode 100644
index 000000000000..c7115cc357db
--- /dev/null
+++ b/app-crypt/easy-rsa/files/easy-rsa-2.0.0-pkcs11.patch
@@ -0,0 +1,36 @@
+diff --git a/easy-rsa/2.0/openssl-0.9.8.cnf b/easy-rsa/2.0/openssl-0.9.8.cnf
+index 340b8af..89602a2 100755
+--- a/easy-rsa/2.0/openssl-0.9.8.cnf
++++ b/easy-rsa/2.0/openssl-0.9.8.cnf
+@@ -283,8 +283,8 @@ authorityKeyIdentifier=keyid:always,issuer:always
+ #pkcs11 = pkcs11_section
+
+ [ pkcs11_section ]
+-engine_id = pkcs11
+-dynamic_path = /usr/lib/engines/engine_pkcs11.so
+-MODULE_PATH = $ENV::PKCS11_MODULE_PATH
+-PIN = $ENV::PKCS11_PIN
+-init = 0
++#engine_id = pkcs11
++#dynamic_path = /usr/lib/engines/engine_pkcs11.so
++#MODULE_PATH = $ENV::PKCS11_MODULE_PATH
++#PIN = $ENV::PKCS11_PIN
++#init = 0
+diff --git a/easy-rsa/2.0/openssl-1.0.0.cnf b/easy-rsa/2.0/openssl-1.0.0.cnf
+index fa258a5..527919d 100755
+--- a/easy-rsa/2.0/openssl-1.0.0.cnf
++++ b/easy-rsa/2.0/openssl-1.0.0.cnf
+@@ -278,8 +278,8 @@ authorityKeyIdentifier=keyid:always,issuer:always
+ #pkcs11 = pkcs11_section
+
+ [ pkcs11_section ]
+-engine_id = pkcs11
+-dynamic_path = /usr/lib/engines/engine_pkcs11.so
+-MODULE_PATH = $ENV::PKCS11_MODULE_PATH
+-PIN = $ENV::PKCS11_PIN
+-init = 0
++#engine_id = pkcs11
++#dynamic_path = /usr/lib/engines/engine_pkcs11.so
++#MODULE_PATH = $ENV::PKCS11_MODULE_PATH
++#PIN = $ENV::PKCS11_PIN
++#init = 0
diff --git a/app-crypt/easy-rsa/files/no-licenses.patch b/app-crypt/easy-rsa/files/no-licenses.patch
new file mode 100644
index 000000000000..40290cb6eb14
--- /dev/null
+++ b/app-crypt/easy-rsa/files/no-licenses.patch
@@ -0,0 +1,14 @@
+--- Makefile.in 2013-05-22 12:38:10.685814374 +0200
++++ Makefile.in.new 2013-05-22 12:40:30.484539547 +0200
+@@ -186,10 +186,7 @@
+
+ EXTRA_DIST = easy-rsa
+ SUBDIRS = doc distro
+-dist_doc_DATA = \
+- COPYRIGHT.GPL \
+- COPYING
+-
++dist_doc_DATA =
+ dist_easyrsa_DATA =
+ all: all-recursive
+
diff --git a/app-crypt/easy-rsa/metadata.xml b/app-crypt/easy-rsa/metadata.xml
new file mode 100644
index 000000000000..169b8535ec00
--- /dev/null
+++ b/app-crypt/easy-rsa/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>
+ <email>djc@gentoo.org</email>
+ <name>Dirkjan Ochtman</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">OpenVPN/easy-rsa</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/efitools/Manifest b/app-crypt/efitools/Manifest
new file mode 100644
index 000000000000..464867747785
--- /dev/null
+++ b/app-crypt/efitools/Manifest
@@ -0,0 +1,2 @@
+DIST efitools-1.4.1.tar.gz 91444 SHA256 6946e7894118012ca12503a6e55a4f8f17310d0eb02d8f1ab8947d9012ad8b51 SHA512 0994fdd9f934575691f740631dfbcc67f15e56f873cba10657536389d61b5bb955b0de91261f0486bfa5381e27f42b5dd0b6ea55fe3643f8b0dae2f9b1916ef1 WHIRLPOOL 7eb973fd0239fa41d2ff82ccfda526725032c0da64d0cd5223a7d66abf42c951f4ba2d3613c024c3bceebf6e032af88527f6a35eff76f258f19e12431cbac0bd
+DIST efitools-1.4.2.tar.gz 97303 SHA256 df7b9d7570b2fb85ee060e14b1952233d28e277f5b2f839c225f093890e5d843 SHA512 19433b6ccc95a18649b05376c0090f4325345d1a9ccf2601e9b4818a7a888379ab1bb620022f393498e520073f06e10962f5322632219fc21da390e4e5cd4c9f WHIRLPOOL 43000942f99fdf888bf2d2447eb28ca5eba9440194f5de71fd4532ad61a3735b23a08e4fdef4f89a9fd06e30537e9f6305e5f320e1c27ab60a6c4cb91762d74d
diff --git a/app-crypt/efitools/efitools-1.4.1-r1.ebuild b/app-crypt/efitools/efitools-1.4.1-r1.ebuild
new file mode 100644
index 000000000000..c6dd05a574ac
--- /dev/null
+++ b/app-crypt/efitools/efitools-1.4.1-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+DESCRIPTION="Tools for manipulating UEFI secure boot platforms"
+HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/jejb/efitools.git"
+SRC_URI="https://build.opensuse.org/package/rawsourcefile/home:jejb1:UEFI/efitools/efitools-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl
+ sys-apps/util-linux"
+DEPEND="${RDEPEND}
+ sys-apps/help2man
+ sys-boot/gnu-efi
+ app-editors/vim-core
+ app-crypt/sbsigntool
+ virtual/pkgconfig"
diff --git a/app-crypt/efitools/efitools-1.4.1-r2.ebuild b/app-crypt/efitools/efitools-1.4.1-r2.ebuild
new file mode 100644
index 000000000000..952a8ec9e9bb
--- /dev/null
+++ b/app-crypt/efitools/efitools-1.4.1-r2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+inherit eutils
+
+DESCRIPTION="Tools for manipulating UEFI secure boot platforms"
+HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/jejb/efitools.git"
+SRC_URI="https://build.opensuse.org/package/rawsourcefile/home:jejb1:UEFI/efitools/efitools-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl
+ sys-apps/util-linux"
+DEPEND="${RDEPEND}
+ sys-apps/help2man
+ sys-boot/gnu-efi
+ dev-perl/File-Slurp
+ app-crypt/sbsigntool
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${FILESDIR}"/xxdi.patch
+ chmod 755 "${WORKDIR}/${P}/xxdi.pl"
+}
diff --git a/app-crypt/efitools/efitools-1.4.1.ebuild b/app-crypt/efitools/efitools-1.4.1.ebuild
new file mode 100644
index 000000000000..0e95ec146ea5
--- /dev/null
+++ b/app-crypt/efitools/efitools-1.4.1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+DESCRIPTION="Tools for manipulating UEFI secure boot platforms"
+HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/jejb/efitools.git"
+SRC_URI="https://build.opensuse.org/package/rawsourcefile/home:jejb1:UEFI/efitools/efitools-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl
+ sys-apps/util-linux"
+DEPEND="${RDEPEND}
+ sys-apps/help2man
+ sys-boot/gnu-efi
+ virtual/pkgconfig"
diff --git a/app-crypt/efitools/efitools-1.4.2-r1.ebuild b/app-crypt/efitools/efitools-1.4.2-r1.ebuild
new file mode 100644
index 000000000000..dabedc534abf
--- /dev/null
+++ b/app-crypt/efitools/efitools-1.4.2-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+DESCRIPTION="Tools for manipulating UEFI secure boot platforms"
+HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/jejb/efitools.git"
+SRC_URI="http://blog.hansenpartnership.com/wp-uploads/2013/efitools-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl
+ sys-apps/util-linux"
+DEPEND="${RDEPEND}
+ sys-apps/help2man
+ >=sys-boot/gnu-efi-3.0u
+ app-crypt/sbsigntool
+ virtual/pkgconfig
+ dev-perl/File-Slurp"
diff --git a/app-crypt/efitools/efitools-1.4.2.ebuild b/app-crypt/efitools/efitools-1.4.2.ebuild
new file mode 100644
index 000000000000..9d061cce3e8c
--- /dev/null
+++ b/app-crypt/efitools/efitools-1.4.2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+DESCRIPTION="Tools for manipulating UEFI secure boot platforms"
+HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/jejb/efitools.git"
+SRC_URI="http://blog.hansenpartnership.com/wp-uploads/2013/efitools-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl
+ sys-apps/util-linux"
+DEPEND="${RDEPEND}
+ sys-apps/help2man
+ sys-boot/gnu-efi
+ app-crypt/sbsigntool
+ virtual/pkgconfig"
diff --git a/app-crypt/efitools/files/xxdi.patch b/app-crypt/efitools/files/xxdi.patch
new file mode 100644
index 000000000000..ec62125ea4ad
--- /dev/null
+++ b/app-crypt/efitools/files/xxdi.patch
@@ -0,0 +1,110 @@
+From gregkh@linuxfoundation.org Sun Sep 1 14:55:47 2013
+Date: Sun, 1 Sep 2013 14:58:15 -0700
+From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+To: James Bottomley <James.Bottomley@HansenPartnership.com>
+Cc: JBottomley@Parallels.com, greg@kroah.com
+Subject: [efitools PATCH] Makefile/Make.rules: don't rely on vim-core
+Message-ID: <20130901215815.GA8749@kroah.com>
+
+From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+Subject: Makefile/Make.rules: don't rely on vim-core
+
+This adds the xxdi.pl script to replace the call to 'xxd -i', removing a
+build dependancy on vim-core, which some distros don't really want to
+have (i.e. Gentoo and its build derivatives like ChromeOS and CoreOS.)
+
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ Make.rules | 2 +-
+ Makefile | 2 +-
+ xxdi.pl | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 52 insertions(+), 2 deletions(-)
+ create mode 100755 xxdi.pl
+
+diff --git a/Make.rules b/Make.rules
+index 419b3b9..309b231 100644
+--- a/Make.rules
++++ b/Make.rules
+@@ -38,7 +38,7 @@ endif
+ nm -D $@ | grep ' U ' && exit 1 || exit 0
+
+ %.h: %.auth
+- xxd -i $< > $@
++ ./xxdi.pl $< > $@
+
+ %.hash: %.efi hash-to-efi-sig-list
+ ./hash-to-efi-sig-list $< $@
+diff --git a/Makefile b/Makefile
+index 52f4551..a39cafe 100644
+--- a/Makefile
++++ b/Makefile
+@@ -62,7 +62,7 @@ DB.auth: DB.esl KEK.crt sign-efi-sig-list
+
+ hashlist.h: HashTool.hash
+ cat $^ > /tmp/tmp.hash
+- xxd -i /tmp/tmp.hash > $@
++ ./xxdi.pl /tmp/tmp.hash > $@
+ rm -f /tmp/tmp.hash
+
+
+diff --git a/xxdi.pl b/xxdi.pl
+new file mode 100755
+index 0000000..acc974c
+--- /dev/null
++++ b/xxdi.pl
+@@ -0,0 +1,50 @@
++#!/usr/bin/env perl
++#
++# xxdi.pl - perl implementation of 'xxd -i' mode
++#
++# Copyright 2013 Greg Kroah-Hartman <gregkh@linuxfoundation.org>
++# Copyright 2013 Linux Foundation
++#
++# Released under the GPLv2.
++#
++# Implements the "basic" functionality of 'xxd -i' in perl to keep build
++# systems from having to build/install/rely on vim-core, which not all
++# distros want to do. But everyone has perl, so use it instead.
++#
++
++use strict;
++use warnings;
++use File::Slurp qw(slurp);
++
++my $indata = slurp(@ARGV ? $ARGV[0] : \*STDIN);
++my $len_data = length($indata);
++my $num_digits_per_line = 12;
++my $var_name;
++my $outdata;
++
++# Use the variable name of the file we read from, converting '/' and '.
++# to '_', or, if this is stdin, just use "stdin" as the name.
++if (@ARGV) {
++ $var_name = $ARGV[0];
++ $var_name =~ s/\//_/g;
++ $var_name =~ s/\./_/g;
++} else {
++ $var_name = "stdin";
++}
++
++$outdata .= "unsigned char $var_name\[] = {";
++
++# trailing ',' is acceptable, so instead of duplicating the logic for
++# just the last character, live with the extra ','.
++for (my $key= 0; $key < $len_data; $key++) {
++ if ($key % $num_digits_per_line == 0) {
++ $outdata .= "\n\t";
++ }
++ $outdata .= sprintf("0x%.2x, ", ord(substr($indata, $key, 1)));
++}
++
++$outdata .= "\n};\nunsigned int $var_name\_len = $len_data;\n";
++
++binmode STDOUT;
++print {*STDOUT} $outdata;
++
+--
+1.8.4.6.g82e253f.dirty
+
+
diff --git a/app-crypt/efitools/metadata.xml b/app-crypt/efitools/metadata.xml
new file mode 100644
index 000000000000..6b2229b74c9d
--- /dev/null
+++ b/app-crypt/efitools/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>
+ <email>gregkh@gentoo.org</email>
+ <description>do whatever</description>
+</maintainer>
+</pkgmetadata>
diff --git a/app-crypt/eid-mw/Manifest b/app-crypt/eid-mw/Manifest
new file mode 100644
index 000000000000..b5b1c58bfc28
--- /dev/null
+++ b/app-crypt/eid-mw/Manifest
@@ -0,0 +1,2 @@
+DIST eid-mw-4.0.6-1480.tar.gz 4292450 SHA256 1ff3a7740a30891df2da12fca66cb5324dc286f9490ee839d61d9f1028b9127c SHA512 4b6ba684a43183e11cf29a73bee7bc6ecda24aa15029e55593d6ad3cc9f58726d551089c3c9f95f07d03847df70f2662a0ea9e3db5dd5591cc9b8b0e839d364b WHIRLPOOL cca8b871a2780dae282f5eed12cd79df0bb9d57c3c968ca740b7063ca3c48425be492d3dfcb7bee5c0037b14571df8b76b825540f52025b14afed8f718d56c22
+DIST eid-mw-4.0.6-1620.tar.gz 4335514 SHA256 1ecb30f9f318bdb61a8d774fe76b948eb5841d4de6fee106029ed78daa7efbf2 SHA512 511bf6cf7a9a4d0a2232d95f1a6ba6f4fa8ee174cf919f88e1fa0c71357b9717544a6006ad412d7a0b4090c4c56ca86f8e6f69dabc6912bfd77a2e948cae8104 WHIRLPOOL b89ae4ba659e8dedd93f70368af1e058468cfd3761bec099276fadc017dcf21d245ceb8db001c3e82f30c7e6f670e13ab6c17e221c8c8ee02a45cc5833f39867
diff --git a/app-crypt/eid-mw/eid-mw-4.0.6_p1480.ebuild b/app-crypt/eid-mw/eid-mw-4.0.6_p1480.ebuild
new file mode 100644
index 000000000000..10b99b1172ff
--- /dev/null
+++ b/app-crypt/eid-mw/eid-mw-4.0.6_p1480.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils versionator mozextension multilib
+
+if [[ ${PV} == "9999" ]] ; then
+ ESVN_REPO_URI="http://eid-mw.googlecode.com/svn/trunk/"
+ inherit subversion autotools
+ SRC_URI=""
+else
+ MY_P="${PN}-${PV/_p/-}"
+ SRC_URI="http://eid.belgium.be/en/binaries/${MY_P}.tar_tcm406-250016.gz -> ${MY_P}.tar.gz"
+ KEYWORDS="~x86 ~amd64"
+ S="${WORKDIR}/eid-mw-$(get_version_component_range 1-3)"
+fi
+
+SLOT="0"
+LICENSE="LGPL-3"
+DESCRIPTION="Belgian Electronic Identity Card middleware supplied by the Belgian Federal Government"
+
+HOMEPAGE="http://eid.belgium.be"
+
+IUSE="+gtk +xpi"
+
+RDEPEND="gtk? ( x11-libs/gtk+:2 )
+ >=sys-apps/pcsc-lite-1.2.9
+ xpi? ( || ( >=www-client/firefox-bin-3.6.24
+ >=www-client/firefox-3.6.20 ) )
+ !app-misc/beid-runtime"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+if [[ ${PV} == "9999" ]]; then
+ src_prepare() {
+ eautoreconf
+ }
+else
+ src_prepare() {
+ epatch "${FILESDIR}"/fix-nodialog-bug.patch
+ }
+fi
+
+src_configure() {
+ econf $(use_enable gtk dialogs) --disable-static
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ if use xpi; then
+ declare MOZILLA_FIVE_HOME
+ if has_version '>=www-client/firefox-3.6.20'; then
+ MOZILLA_FIVE_HOME="/usr/$(get_libdir)/firefox"
+ xpi_install "${D}/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/belgiumeid@eid.belgium.be"
+ fi
+ if has_version '>=www-client/firefox-bin-3.6.24'; then
+ MOZILLA_FIVE_HOME="/opt/firefox"
+ xpi_install "${D}/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/belgiumeid@eid.belgium.be"
+ fi
+ fi
+ rm -r "${D}/usr/share" "${D}"/usr/lib*/*.la
+}
diff --git a/app-crypt/eid-mw/eid-mw-4.0.6_p1620.ebuild b/app-crypt/eid-mw/eid-mw-4.0.6_p1620.ebuild
new file mode 100644
index 000000000000..9ef575a906b3
--- /dev/null
+++ b/app-crypt/eid-mw/eid-mw-4.0.6_p1620.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils versionator mozextension multilib
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="git://github.com/Fedict/${PN}.git
+ https://github.com/Fedict/${PN}.git"
+ inherit git-2 autotools
+ SRC_URI=""
+else
+ MY_P="${PN}-${PV/_p/-}"
+ SRC_URI="http://eid.belgium.be/en/binaries/${MY_P}.tar_tcm406-258906.gz -> ${MY_P}.tar.gz"
+ KEYWORDS="~x86 ~amd64"
+ S="${WORKDIR}/eid-mw-$(get_version_component_range 1-3)"
+fi
+
+SLOT="0"
+LICENSE="LGPL-3"
+DESCRIPTION="Belgian Electronic Identity Card middleware supplied by the Belgian Federal Government"
+
+HOMEPAGE="http://eid.belgium.be"
+
+IUSE="+gtk +xpi"
+
+RDEPEND="gtk? ( x11-libs/gtk+:2 )
+ >=sys-apps/pcsc-lite-1.2.9
+ xpi? ( || ( >=www-client/firefox-bin-3.6.24
+ >=www-client/firefox-3.6.20 ) )
+ !app-misc/beid-runtime"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+if [[ ${PV} == "9999" ]]; then
+ src_prepare() {
+ eautoreconf
+ }
+fi
+
+src_configure() {
+ econf $(use_enable gtk dialogs) --disable-static
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ if use xpi; then
+ declare MOZILLA_FIVE_HOME
+ if has_version '>=www-client/firefox-3.6.20'; then
+ MOZILLA_FIVE_HOME="/usr/$(get_libdir)/firefox"
+ xpi_install "${D}/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/belgiumeid@eid.belgium.be"
+ fi
+ if has_version '>=www-client/firefox-bin-3.6.24'; then
+ MOZILLA_FIVE_HOME="/opt/firefox"
+ xpi_install "${D}/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/belgiumeid@eid.belgium.be"
+ fi
+ fi
+ rm -r "${D}/usr/share" "${D}"/usr/lib*/*.la
+}
diff --git a/app-crypt/eid-mw/eid-mw-9999.ebuild b/app-crypt/eid-mw/eid-mw-9999.ebuild
new file mode 100644
index 000000000000..9ef575a906b3
--- /dev/null
+++ b/app-crypt/eid-mw/eid-mw-9999.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils versionator mozextension multilib
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="git://github.com/Fedict/${PN}.git
+ https://github.com/Fedict/${PN}.git"
+ inherit git-2 autotools
+ SRC_URI=""
+else
+ MY_P="${PN}-${PV/_p/-}"
+ SRC_URI="http://eid.belgium.be/en/binaries/${MY_P}.tar_tcm406-258906.gz -> ${MY_P}.tar.gz"
+ KEYWORDS="~x86 ~amd64"
+ S="${WORKDIR}/eid-mw-$(get_version_component_range 1-3)"
+fi
+
+SLOT="0"
+LICENSE="LGPL-3"
+DESCRIPTION="Belgian Electronic Identity Card middleware supplied by the Belgian Federal Government"
+
+HOMEPAGE="http://eid.belgium.be"
+
+IUSE="+gtk +xpi"
+
+RDEPEND="gtk? ( x11-libs/gtk+:2 )
+ >=sys-apps/pcsc-lite-1.2.9
+ xpi? ( || ( >=www-client/firefox-bin-3.6.24
+ >=www-client/firefox-3.6.20 ) )
+ !app-misc/beid-runtime"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+if [[ ${PV} == "9999" ]]; then
+ src_prepare() {
+ eautoreconf
+ }
+fi
+
+src_configure() {
+ econf $(use_enable gtk dialogs) --disable-static
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ if use xpi; then
+ declare MOZILLA_FIVE_HOME
+ if has_version '>=www-client/firefox-3.6.20'; then
+ MOZILLA_FIVE_HOME="/usr/$(get_libdir)/firefox"
+ xpi_install "${D}/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/belgiumeid@eid.belgium.be"
+ fi
+ if has_version '>=www-client/firefox-bin-3.6.24'; then
+ MOZILLA_FIVE_HOME="/opt/firefox"
+ xpi_install "${D}/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/belgiumeid@eid.belgium.be"
+ fi
+ fi
+ rm -r "${D}/usr/share" "${D}"/usr/lib*/*.la
+}
diff --git a/app-crypt/eid-mw/files/eid-mw-4.0.2_p1188+gcc-4.7.patch b/app-crypt/eid-mw/files/eid-mw-4.0.2_p1188+gcc-4.7.patch
new file mode 100644
index 000000000000..1f70c781dd95
--- /dev/null
+++ b/app-crypt/eid-mw/files/eid-mw-4.0.2_p1188+gcc-4.7.patch
@@ -0,0 +1,38 @@
+Index: eid-mw-4.0.2/common/src/socket/socket.cpp
+===================================================================
+--- eid-mw-4.0.2.orig/common/src/socket/socket.cpp
++++ eid-mw-4.0.2/common/src/socket/socket.cpp
+@@ -21,6 +21,8 @@
+ #include "../eiderrors.h"
+ #include <iostream>
+
++#include <unistd.h>
++
+ namespace eIDMW
+ {
+
+Index: eid-mw-4.0.2/common/src/socket/socketserver.cpp
+===================================================================
+--- eid-mw-4.0.2.orig/common/src/socket/socketserver.cpp
++++ eid-mw-4.0.2/common/src/socket/socketserver.cpp
+@@ -26,6 +26,7 @@
+ #include <netinet/in.h>
+ #include <sys/ioctl.h>
+ #include <errno.h>
++#include <unistd.h>
+ #ifndef SOCKET_ERROR
+ #define SOCKET_ERROR -1
+ #endif
+Index: eid-mw-4.0.2/common/src/util.cpp
+===================================================================
+--- eid-mw-4.0.2.orig/common/src/util.cpp
++++ eid-mw-4.0.2/common/src/util.cpp
+@@ -27,6 +27,8 @@
+
+ #include <stdlib.h>
+
++#include <unistd.h>
++
+ #ifdef WIN32
+ #include <windows.h>
+ #endif
diff --git a/app-crypt/eid-mw/files/fix-nodialog-bug.patch b/app-crypt/eid-mw/files/fix-nodialog-bug.patch
new file mode 100644
index 000000000000..5ea003216241
--- /dev/null
+++ b/app-crypt/eid-mw/files/fix-nodialog-bug.patch
@@ -0,0 +1,20 @@
+Index: cardlayer/src/pinpadlib.h
+===================================================================
+--- cardlayer/src/pinpadlib.h (revision 1501)
++++ cardlayer/src/pinpadlib.h (revision 1502)
+@@ -43,13 +43,14 @@
+ #endif
+ #ifndef NO_DIALOGS
+ #include "../dialogs/src/dialogs.h"
++#endif
+ #ifdef __APPLE__
+ typedef void* BEID_DIALOGHANDLE;
+ #else
+ typedef unsigned long BEID_DIALOGHANDLE;
+ #endif
+-#endif
+
++
+ namespace eIDMW
+ {
+ #ifdef EIDMW_PF_EXPORT
diff --git a/app-crypt/eid-mw/metadata.xml b/app-crypt/eid-mw/metadata.xml
new file mode 100644
index 000000000000..964772a1c4bb
--- /dev/null
+++ b/app-crypt/eid-mw/metadata.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>proxy-maintainers</herd>
+<maintainer>
+ <email>vincent.hardy.be@gmail.com</email>
+</maintainer>
+<maintainer>
+ <email>flameeyes@gentoo.org</email>
+</maintainer>
+<longdescription>
+eid-mw is Belgian Electronic Identity Card (eID) middleware supplied by the Belgian Federal Government.
+
+With your eID, you can:
+- identify yourself when necessary. All you have to do is insert the card in the reader. All your details then appear automatically on the PC screen.
+- authenticate yourself. This is a way of checking that you are who you say you are. That can be handy on the internet or to enable your children to chat in safety.
+- place a legally binding electronic signature on electronic documents.
+
+These three functions form the basis of the countless applications for your eID. Go to http://welcome-to-e-belgium.be/en/ and check out what can you do with it? and discover all the things you can use the eID for.
+</longdescription>
+<use>
+ <flag name="gtk">
+ Enable the dialog pages, by using <pkg>x11-libs/gtk+:2</pkg>
+ </flag>
+ <flag name="xpi">
+ Build and install an extension for Mozilla browsers.
+ </flag>
+</use>
+</pkgmetadata>
diff --git a/app-crypt/ekeyd/Manifest b/app-crypt/ekeyd/Manifest
new file mode 100644
index 000000000000..83dd33e97c20
--- /dev/null
+++ b/app-crypt/ekeyd/Manifest
@@ -0,0 +1,2 @@
+DIST ekeyd-1.1.4.tar.gz 100911 SHA256 147ca4ff964ab7b344a08d3cd6f9b1bf03ba18776a1941d603681d8102cce0c8 SHA512 40632722827e07ebc643fa32af9910b28053873329772681dba2b029ad0b3c63d1d6bba3fdd0549b84e23779d2e2ae0323a53e1fdf93eb963570bab2227b63e6 WHIRLPOOL 1dc89c735befeeb8fb2d840d27ddcce0b8b15cffb8be0b9e6fa978f0c14bc9cef8345b8b1f4a3c6140031b1a01d92c26674e011acec3c6605ddf7b5c2e56d248
+DIST ekeyd_1.1.5.orig.tar.gz 101366 SHA256 4aa8abe4bd8bb4517be3f751a75ae270ac2855ba4ba465099a3f29a2c8602ec4 SHA512 c30620d5e54a49929be72ed04448a4f08eb9658dbf7534586c49a3b43bdd5fc95a0659e09cc04b012c339ca20a1e914fa5a4b4d970171c46b64235f284516b9a WHIRLPOOL bfa6cbea82bea8aeed7a86cc5cc0e8e95bd9ceba00d57f78a0bd5bcf6694d4c37db1a43ff01a92493d83a33b41c2a17ddac366c6d2281b848d5f239b4240ea39
diff --git a/app-crypt/ekeyd/ekeyd-1.1.4-r2.ebuild b/app-crypt/ekeyd/ekeyd-1.1.4-r2.ebuild
new file mode 100644
index 000000000000..98fbb92777e3
--- /dev/null
+++ b/app-crypt/ekeyd/ekeyd-1.1.4-r2.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils multilib linux-info toolchain-funcs udev
+
+DESCRIPTION="Entropy Key userspace daemon"
+HOMEPAGE="http://www.entropykey.co.uk/"
+SRC_URI="http://www.entropykey.co.uk/res/download/${P}.tar.gz"
+
+LICENSE="MIT GPL-2" # GPL-2 (only) for init script
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="usb kernel_linux munin minimal"
+REQUIRED_USE="minimal? ( !munin !usb )"
+
+EKEYD_RDEPEND="dev-lang/lua
+ usb? ( virtual/libusb:0 )"
+EKEYD_DEPEND="${EKEYD_RDEPEND}"
+EKEYD_RDEPEND="${EKEYD_RDEPEND}
+ dev-lua/luasocket
+ kernel_linux? ( virtual/udev )
+ usb? ( !kernel_linux? ( sys-apps/usbutils ) )
+ munin? ( net-analyzer/munin )"
+
+RDEPEND="!minimal? ( ${EKEYD_RDEPEND} )
+ !app-crypt/ekey-egd-linux
+ sys-apps/openrc"
+DEPEND="!minimal? ( ${EKEYD_DEPEND} )"
+
+CONFIG_CHECK="~USB_ACM"
+
+pkg_setup() {
+ if ! use minimal && use kernel_linux && ! use usb && linux_config_exists; then
+ check_extra_config
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gentoo.patch
+}
+
+src_compile() {
+ local osname
+
+ # Override automatic detection: upstream provides this with uname,
+ # we don't like using uname.
+ case ${CHOST} in
+ *-linux-*)
+ osname=linux;;
+ *-freebsd*)
+ osname=freebsd;;
+ *-kfrebsd-gnu)
+ osname=gnukfreebsd;;
+ *-openbsd*)
+ osname=openbsd;;
+ *)
+ die "Unsupported operating system!"
+ ;;
+ esac
+
+ # We don't slot LUA so we don't really need to have the variables
+ # set at all.
+ emake -C host \
+ CC="$(tc-getCC)" \
+ LUA_V= LUA_INC= \
+ OSNAME=${osname} \
+ OPT="${CFLAGS}" \
+ BUILD_ULUSBD=$(use usb && echo yes || echo no) \
+ $(use minimal && echo egd-linux)
+}
+
+src_install() {
+ exeinto /usr/libexec
+ newexe host/egd-linux ekey-egd-linux
+ newman host/egd-linux.8 ekey-egd-linux.8
+
+ newconfd "${FILESDIR}"/ekey-egd-linux.conf.2 ekey-egd-linux
+ newinitd "${FILESDIR}"/ekey-egd-linux.init.2 ekey-egd-linux
+
+ dodoc doc/* AUTHORS ChangeLog THANKS
+
+ use minimal && return
+ # from here on, install everything that is not part of the minimal
+ # support.
+
+ emake -C host \
+ DESTDIR="${D}" \
+ MANZCMD=cat MANZEXT= \
+ install-ekeyd $(use usb && echo install-ekey-ulusbd)
+
+ # We move the daemons around to avoid polluting the available
+ # commands.
+ dodir /usr/libexec
+ mv "${D}"/usr/sbin/ekey*d "${D}"/usr/libexec
+
+ newinitd "${FILESDIR}"/${PN}.init.2 ${PN}
+
+ if use usb && ! use kernel_linux; then
+ newinitd "${FILESDIR}"/ekey-ulusbd.init.2 ekey-ulusbd
+ newconfd "${FILESDIR}"/ekey-ulusbd.conf.2 ekey-ulusbd
+ fi
+
+ if use kernel_linux; then
+ local rules=udev/fedora15/60-entropykey.rules
+ use usb && rules=udev/fedora15/60-entropykey-uds.rules
+
+ udev_newrules ${rules} 70-${PN}.rules
+
+ exeinto "$(get_udevdir)"
+ doexe udev/entropykey.sh
+ fi
+
+ if use munin; then
+ exeinto /usr/libexec/munin/plugins
+ doexe munin/ekeyd_stat_
+
+ insinto /etc/munin/plugin-conf.d
+ newins munin/plugin-conf.d_ekeyd ekeyd
+ fi
+}
+
+pkg_postinst() {
+ elog "${CATEGORY}/${PN} now install also the EGD client service ekey-egd-linux."
+ elog "To use this service, you need enable EGDTCPSocket for the ekeyd service"
+ elog "managing the key(s)."
+ elog ""
+ elog "The daemon will send more entropy to the kernel once the available pool"
+ elog "falls below the value set in the kernel.random.write_wakeup_threshold"
+ elog "sysctl entry."
+ elog ""
+ ewarn "Since version 1.1.4-r1, ekey-egd-linux will *not* set the watermark for"
+ ewarn "you, instead you'll have to configure the sysctl in /etc/sysctl.conf"
+
+ use minimal && return
+ # from here on, document everything that is not part of the minimal
+ # support.
+
+ elog ""
+ elog "To make use of your EntropyKey, make sure to execute ekey-rekey"
+ elog "the first time, and then start the ekeyd service."
+ elog ""
+ elog "By default ekeyd will feed the entropy directly to the kernel's pool;"
+ elog "if your system has jumps in load average, you might prefer using the"
+ elog "EGD compatibility mode, by enabling EGDTCPSocket for ekeyd and then"
+ elog "starting the ekey-egd-linux service."
+ elog ""
+ elog "The same applies if you intend to provide entropy for multiple hosts"
+ elog "over the network. If you want to have the ekey-egd-linux service on"
+ elog "other hosts, you can enable the 'minimal' USE flag."
+ elog ""
+ elog "The service supports multiplexing if you wish to use multiple"
+ elog "keys, just symlink /etc/init.d/ekeyd → /etc/init.d/ekeyd.identifier"
+ elog "and it'll be looking for /etc/entropykey/identifier.conf"
+ elog ""
+
+ if use usb; then
+ if use kernel_linux; then
+ elog "You're going to use the userland USB daemon, the udev rules"
+ elog "will be used accordingly. If you want to use the CDC driver"
+ elog "please disable the usb USE flag."
+ else
+ elog "You're going to use the userland USB daemon, since your OS"
+ elog "does not support udev, you should start the ekey-ulusbd"
+ elog "service before ekeyd."
+ fi
+
+ ewarn "The userland USB daemon has multiple known issues. If you can,"
+ ewarn "please consider disabling the 'usb' USE flag and instead use the"
+ ewarn "CDC-ACM access method."
+ else
+ if use kernel_linux; then
+ elog "Some versions of Linux have a faulty CDC ACM driver that stops"
+ elog "EntropyKey from working properly; please check the compatibility"
+ elog "table at http://www.entropykey.co.uk/download/"
+ else
+ elog "Make sure your operating system supports the CDC ACM driver"
+ elog "or otherwise you won't be able to use the EntropyKey."
+ fi
+ elog ""
+ elog "If you're unsure about the working state of the CDC ACM driver"
+ elog "enable the usb USE flag and use the userland USB daemon"
+ fi
+}
diff --git a/app-crypt/ekeyd/ekeyd-1.1.5.ebuild b/app-crypt/ekeyd/ekeyd-1.1.5.ebuild
new file mode 100644
index 000000000000..241b2f756baf
--- /dev/null
+++ b/app-crypt/ekeyd/ekeyd-1.1.5.ebuild
@@ -0,0 +1,165 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils multilib linux-info toolchain-funcs udev systemd
+
+DESCRIPTION="Entropy Key userspace daemon"
+HOMEPAGE="http://www.entropykey.co.uk/"
+SRC_URI="mirror://ubuntu/pool/universe/e/ekeyd/ekeyd_${PV}.orig.tar.gz"
+
+LICENSE="MIT GPL-2" # GPL-2 (only) for init script
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="kernel_linux munin minimal"
+REQUIRED_USE="minimal? ( !munin )"
+
+EKEYD_RDEPEND="dev-lang/lua"
+EKEYD_DEPEND="${EKEYD_RDEPEND}"
+EKEYD_RDEPEND="${EKEYD_RDEPEND}
+ dev-lua/luasocket
+ kernel_linux? ( virtual/udev )
+ munin? ( net-analyzer/munin )"
+
+RDEPEND="!minimal? ( ${EKEYD_RDEPEND} )
+ !app-crypt/ekey-egd-linux
+ sys-apps/openrc"
+DEPEND="!minimal? ( ${EKEYD_DEPEND} )"
+
+CONFIG_CHECK="~USB_ACM"
+
+pkg_setup() {
+ if ! use minimal && use kernel_linux && ! use usb && linux_config_exists; then
+ check_extra_config
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-const_char_usage.patch";
+ epatch "${FILESDIR}/${P}-enoent.patch";
+ epatch "${FILESDIR}/${P}-path-fixes.patch";
+ epatch "${FILESDIR}/${P}-udev-rule.patch";
+ epatch "${FILESDIR}/${P}-remove-werror.patch";
+ epatch "${FILESDIR}/${P}-misc.patch";
+}
+
+src_compile() {
+ local osname
+
+ # Override automatic detection: upstream provides this with uname,
+ # we don't like using uname.
+ case ${CHOST} in
+ *-linux-*)
+ osname=linux;;
+ *-freebsd*)
+ osname=freebsd;;
+ *-kfrebsd-gnu)
+ osname=gnukfreebsd;;
+ *-openbsd*)
+ osname=openbsd;;
+ *)
+ die "Unsupported operating system!"
+ ;;
+ esac
+
+ # We don't slot LUA so we don't really need to have the variables
+ # set at all.
+ emake -C host \
+ CC="$(tc-getCC)" \
+ LUA_V= LUA_INC= \
+ OSNAME=${osname} \
+ OPT="${CFLAGS}" \
+ BUILD_ULUSBD=no \
+ $(use minimal && echo egd-linux)
+}
+
+src_install() {
+ exeinto /usr/libexec
+ newexe host/egd-linux ekey-egd-linux
+ newman host/egd-linux.8 ekey-egd-linux.8
+
+ newconfd "${FILESDIR}"/ekey-egd-linux.conf.2 ekey-egd-linux
+ newinitd "${FILESDIR}"/ekey-egd-linux.init.2 ekey-egd-linux
+
+ dodoc doc/* AUTHORS ChangeLog THANKS
+
+ use minimal && return
+ # from here on, install everything that is not part of the minimal
+ # support.
+
+ emake -C host \
+ DESTDIR="${D}" \
+ MANZCMD=cat MANZEXT= \
+ install-ekeyd
+
+ # We move the daemons around to avoid polluting the available
+ # commands.
+ dodir /usr/libexec
+ mv "${D}"/usr/sbin/ekey*d "${D}"/usr/libexec
+
+ systemd_dounit "${FILESDIR}/ekeyd.service"
+
+ newinitd "${FILESDIR}"/${PN}.init.2 ${PN}
+
+ if use kernel_linux; then
+ local rules="${FILESDIR}/90-ekeyd.rules"
+ udev_newrules ${rules} 90-${PN}.rules
+ fi
+
+ if use munin; then
+ exeinto /usr/libexec/munin/plugins
+ doexe munin/ekeyd_stat_
+
+ insinto /etc/munin/plugin-conf.d
+ newins munin/plugin-conf.d_ekeyd ekeyd
+ fi
+}
+
+pkg_postinst() {
+ elog "${CATEGORY}/${PN} now install also the EGD client service ekey-egd-linux."
+ elog "To use this service, you need enable EGDTCPSocket for the ekeyd service"
+ elog "managing the key(s)."
+ elog ""
+ elog "The daemon will send more entropy to the kernel once the available pool"
+ elog "falls below the value set in the kernel.random.write_wakeup_threshold"
+ elog "sysctl entry."
+ elog ""
+ ewarn "Since version 1.1.4-r1, ekey-egd-linux will *not* set the watermark for"
+ ewarn "you, instead you'll have to configure the sysctl in /etc/sysctl.conf"
+
+ use minimal && return
+ # from here on, document everything that is not part of the minimal
+ # support.
+
+ elog ""
+ elog "To make use of your EntropyKey, make sure to execute ekey-rekey"
+ elog "the first time, and then start the ekeyd service."
+ elog ""
+ elog "By default ekeyd will feed the entropy directly to the kernel's pool;"
+ elog "if your system has jumps in load average, you might prefer using the"
+ elog "EGD compatibility mode, by enabling EGDTCPSocket for ekeyd and then"
+ elog "starting the ekey-egd-linux service."
+ elog ""
+ elog "The same applies if you intend to provide entropy for multiple hosts"
+ elog "over the network. If you want to have the ekey-egd-linux service on"
+ elog "other hosts, you can enable the 'minimal' USE flag."
+ elog ""
+ elog "The service supports multiplexing if you wish to use multiple"
+ elog "keys, just symlink /etc/init.d/ekeyd → /etc/init.d/ekeyd.identifier"
+ elog "and it'll be looking for /etc/entropykey/identifier.conf"
+ elog ""
+
+ if use kernel_linux; then
+ elog "Some versions of Linux have a faulty CDC ACM driver that stops"
+ elog "EntropyKey from working properly; please check the compatibility"
+ elog "table at http://www.entropykey.co.uk/download/"
+ else
+ elog "Make sure your operating system supports the CDC ACM driver"
+ elog "or otherwise you won't be able to use the EntropyKey."
+ fi
+ elog ""
+ elog "If you're unsure about the working state of the CDC ACM driver"
+ elog "enable the usb USE flag and use the userland USB daemon"
+}
diff --git a/app-crypt/ekeyd/files/90-ekeyd.rules b/app-crypt/ekeyd/files/90-ekeyd.rules
new file mode 100644
index 000000000000..2532ba852efc
--- /dev/null
+++ b/app-crypt/ekeyd/files/90-ekeyd.rules
@@ -0,0 +1,16 @@
+# Entropy key udev rules
+#
+# Centos/RHEL 6 rules for udev version 147
+#
+# These rules create devices under /dev/entropykey/<serialnumber>
+#
+# Copyright 2011-2014 Simtec Electronics
+#
+# For licence terms refer to the COPYING file distributed with the source.
+
+ACTION=="add", SUBSYSTEM=="tty", ENV{ID_VENDOR_ID}=="20df", ENV{ID_MODEL_ID}=="0001", SYMLINK+="entropykey/$env{ID_SERIAL_SHORT}"
+
+ACTION=="add", SUBSYSTEM=="tty", ENV{ID_VENDOR_ID}=="20df", ENV{ID_MODEL_ID}=="0001", RUN+="/usr/sbin/ekeydctl add /dev/entropykey/$env{ID_SERIAL_SHORT}"
+
+ACTION=="remove", SUBSYSTEM=="tty", ENV{ID_VENDOR_ID}=="20df", ENV{ID_MODEL_ID}=="0001", RUN+="/usr/sbin/ekeydctl remove $env{ID_SERIAL_SHORT}"
+
diff --git a/app-crypt/ekeyd/files/ekey-egd-linux.conf.2 b/app-crypt/ekeyd/files/ekey-egd-linux.conf.2
new file mode 100644
index 000000000000..8c0b089d94b5
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekey-egd-linux.conf.2
@@ -0,0 +1,10 @@
+# Configuration file for ekey-egd-linux
+
+# Hostname or IP address to connect to.
+#HOST="localhost"
+# Port number to connect to.
+#PORT="8888"
+# Time between reconnect attempts.
+#RECONNECTINTERVAL=10
+# Set the number of 1024 bit blocks to request each time
+#BLOCKS=2
diff --git a/app-crypt/ekeyd/files/ekey-egd-linux.init.2 b/app-crypt/ekeyd/files/ekey-egd-linux.init.2
new file mode 100644
index 000000000000..c843d19e1171
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekey-egd-linux.init.2
@@ -0,0 +1,23 @@
+#!/sbin/runscript
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+: ${HOST:=localhost}
+: ${PORT:=8888}
+: ${RECONNECTINTERVAL:=10}
+: ${BLOCKS:=2}
+
+description="EntropyKey EGD client"
+
+pidfile=/var/run/$SVCNAME.pid
+
+command=/usr/libexec/ekey-egd-linux
+command_args="-H ${HOST} -p ${PORT} -r ${RECONNECTINTERVAL} -b ${BLOCKS} -D ${pidfile}"
+
+depend() {
+ use net
+ after ekeyd
+
+ provide entropy
+}
diff --git a/app-crypt/ekeyd/files/ekey-ulusbd.conf.2 b/app-crypt/ekeyd/files/ekey-ulusbd.conf.2
new file mode 100644
index 000000000000..eb12afc36a14
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekey-ulusbd.conf.2
@@ -0,0 +1,17 @@
+# Copyright 2009-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# The userland USB daemon has to know the USB path of the EntopyKey to
+# work properly; in alternative to providing these statically, they
+# can be found by giving the serial of the key.
+#
+# The serial will also be used to set the default path to open the
+# socket to.
+
+EKEY_SERIAL=""
+#USB_BUS=""
+#USB_DEV=""
+
+# this is set by default
+# SOCKET_PATH="/var/run/ekey-ulusbd-${EKEY_SERIAL}"
diff --git a/app-crypt/ekeyd/files/ekey-ulusbd.init.2 b/app-crypt/ekeyd/files/ekey-ulusbd.init.2
new file mode 100644
index 000000000000..c448e8974de6
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekey-ulusbd.init.2
@@ -0,0 +1,41 @@
+#!/sbin/runscript
+# Copyright 2009-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+INSTANCE="${SVCNAME#*.}"
+if [ -z "${INSTANCE}" -o "${SVCNAME}" = "ekey-ulusbd" ]; then
+ INSTANCE="ekey-ulusbd"
+fi
+
+: ${SOCKET_PATH:=/var/run/ekey-ulusbd-${EKEY_SERIAL}}
+
+description="EntropyKey Userland USB Daemon"
+
+pidfile=/var/run/$SVCNAME.pid
+command=/usr/libexec/ekey-ulusbd
+command_args="-P ${pidfile} -p ${SOCKET_PATH}"
+
+depend() {
+ need localmount
+}
+
+start() {
+ if [ -z ${USB_BUS} ]; then
+ set -- $(lsusb -v -d 20df:0001 | \
+ egrep '(^Bus|iSerial)' | \
+ grep -B1 "${EKEY_SERIAL}" | \
+ head -n 1 | \
+ cut -c 5-7,15-18)
+ USB_BUS=$1
+ USB_DEV=$2
+ fi
+
+ ebegin "Starting ${description}"
+ start-stop-daemon \
+ --start --pidfile ${pidfile} \
+ --exec ${command} -- \
+ ${command_args} \
+ -b $(printf %03d ${USB_BUS}) -d $(printf %03d ${USB_DEV}) -D
+ eend $?
+}
diff --git a/app-crypt/ekeyd/files/ekeyd-1.1.4-gentoo.patch b/app-crypt/ekeyd/files/ekeyd-1.1.4-gentoo.patch
new file mode 100644
index 000000000000..f1491362e83f
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekeyd-1.1.4-gentoo.patch
@@ -0,0 +1,133 @@
+Index: ekeyd-1.1.4/host/ekeyd.c
+===================================================================
+--- ekeyd-1.1.4.orig/host/ekeyd.c
++++ ekeyd-1.1.4/host/ekeyd.c
+@@ -209,7 +209,7 @@ open_foldback_output(void)
+ return (output_stream != NULL);
+ }
+
+-static const char *usage=
++static const char usage[]=
+ "Usage: %s [-f <configfile>] [-p <pidfile>] [-v] [-h]\n"
+ "Entropy Key Daemon\n\n"
+ "\t-f Read configuration from configfile\n"
+Index: ekeyd-1.1.4/host/ekey-setkey.c
+===================================================================
+--- ekeyd-1.1.4.orig/host/ekey-setkey.c
++++ ekeyd-1.1.4/host/ekey-setkey.c
+@@ -79,7 +79,7 @@ calc_mac(uint8_t *snum, uint8_t *mkey, u
+ return mac;
+ }
+
+-static const char *usage =
++static const char usage[] =
+ "Usage: %s [-d] [-h] [-n] [-f <keyring>] [-m <master>]\n"
+ " [-s <serial>] <path>\n"
+ "Entropy key device long term session key tool\n\n"
+Index: ekeyd-1.1.4/host/ekey-ulusbd.c
+===================================================================
+--- ekeyd-1.1.4.orig/host/ekey-ulusbd.c
++++ ekeyd-1.1.4/host/ekey-ulusbd.c
+@@ -100,7 +100,8 @@ find_usb_device(char *busmatch, char *de
+
+ #if LIBUSB_HAS_DETACH_KERNEL_DRIVER_NP
+ if ((r = usb_detach_kernel_driver_np(devh, EKEY_IFACE)) != 0) {
+- if (r != -ENODATA) {
++ /* libusb_compat-0.1.3 mistakenly translate ENODATA to ENOENT */
++ if (r != -ENODATA && r != -ENOENT) {
+ fprintf(stderr,
+ "Unable to detach Entropy Key at %s/%s from kernel\n",
+ busmatch, devmatch);
+Index: ekeyd-1.1.4/udev/entropykey.sh
+===================================================================
+--- ekeyd-1.1.4.orig/udev/entropykey.sh
++++ ekeyd-1.1.4/udev/entropykey.sh
+@@ -19,9 +19,9 @@ wait_for_usb () {
+ COUNTER=$(( ${COUNTER} + 1 ))
+ test ${COUNTER} -ge 10 && exit 1
+ done
+- $BINPATH/ekey-ulusbd -b${BUSNUM} -d${DEVNUM} -P/var/run/ekey-ulusbd-${ENTROPY_KEY_SERIAL}.pid -p/var/run/entropykeys/${ENTROPY_KEY_SERIAL} -D
++ /usr/libexec/ekey-ulusbd -b${BUSNUM} -d${DEVNUM} -P/dev/.ekey-ulusbd/${ENTROPY_KEY_SERIAL}.pid -p/dev/entropykey/${ENTROPY_KEY_SERIAL} -D
+ sleep 1
+- $BINPATH/ekeydctl ${ACTION} /var/run/entropykeys/${ENTROPY_KEY_SERIAL}
++ $BINPATH/ekeydctl ${ACTION} /dev/entropykey/${ENTROPY_KEY_SERIAL}
+ exit 0
+ }
+
+@@ -34,18 +34,18 @@ else
+ if test "x${BUSNUM}" = "x" -o "x${DEVNUM}" = "x"; then
+ exit 0
+ fi
+- if test -r "/var/run/ekey-ulusbd-${ENTROPY_KEY_SERIAL}.pid"; then
+- kill $(cat "/var/run/ekey-ulusbd-${ENTROPY_KEY_SERIAL}.pid") || true
++ if test -r "/dev/.ekey-ulusbd/${ENTROPY_KEY_SERIAL}.pid"; then
++ kill $(< "/dev/.ekey-ulusbd/${ENTROPY_KEY_SERIAL}.pid") || true
+ fi
+- mkdir -p /var/run/entropykeys
++ mkdir -p /dev/entropykey /dev/.ekeyd-ulusb
+ wait_for_usb &
+ exit 0
+ fi
+ # Update ekeyd with device operation
+- $BINPATH/ekeydctl ${ACTION} /var/run/entropykeys/${ENTROPY_KEY_SERIAL}
++ $BINPATH/ekeydctl ${ACTION} /dev/entropykey/${ENTROPY_KEY_SERIAL}
+ if test "x$ACTION" = "xremove"; then
+- rm "/var/run/ekey-ulusbd-${ENTROPYKEY_KEY_SERIAL}.pid"
+- rm "/var/run/entropykeys/${ENTROPYKEY_KEY_SERIAL}"
++ rm "/dev/.ekey-ulusbd/${ENTROPYKEY_KEY_SERIAL}.pid"
++ rm "/dev/entropykey/${ENTROPYKEY_KEY_SERIAL}"
+ fi
+ fi
+
+Index: ekeyd-1.1.4/udev/fedora15/60-entropykey.rules
+===================================================================
+--- ekeyd-1.1.4.orig/udev/fedora15/60-entropykey.rules
++++ ekeyd-1.1.4/udev/fedora15/60-entropykey.rules
+@@ -9,10 +9,10 @@
+ # For licence terms refer to the COPYING file distributed with the source.
+
+ # Detect an Entropy Key being inserted and add info values to environment
+-ACTION=="add|change|remove", SUBSYSTEM=="tty", KERNEL=="ttyACM[0-9]*", BUS=="usb", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{program}="usb_id --export %p"
++ACTION=="add|change|remove", SUBSYSTEM=="tty", KERNEL=="ttyACM[0-9]*", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{program}="usb_id --export %p"
+
+ # Detect an Entropy Key being inserted and extract serial number
+-ACTION=="add|change|remove", SUBSYSTEM=="tty", KERNEL=="ttyACM[0-9]*", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{program}="/bin/echo ENTROPY_KEY_SERIAL=$env{ID_SERIAL_SHORT}"
++ACTION=="add|change|remove", SUBSYSTEM=="tty", KERNEL=="ttyACM[0-9]*", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{program}="/bin/sh -c '/bin/echo ENTROPY_KEY_SERIAL=$env{ID_SERIAL_SHORT} | /bin/sed -e s:/:_:g'"
+
+ # Add the /dev/entropykey/<serialnumber> symbolic link
+ ENV{ENTROPY_KEY_SERIAL}!="", SYMLINK+="entropykey/$env{ENTROPY_KEY_SERIAL}"
+Index: ekeyd-1.1.4/udev/fedora15/60-entropykey-uds.rules
+===================================================================
+--- ekeyd-1.1.4.orig/udev/fedora15/60-entropykey-uds.rules
++++ ekeyd-1.1.4/udev/fedora15/60-entropykey-uds.rules
+@@ -9,7 +9,7 @@
+ # For licence terms refer to the COPYING file.
+
+ # Detect an Entropy Key being inserted and extract serial number
+-ACTION=="add|change|remove", SUBSYSTEM=="usb", BUS=="usb", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{program}="/bin/echo ENTROPY_KEY_SERIAL=$attr{serial}"
++ACTION=="add|change|remove", SUBSYSTEM=="usb", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{program}="/bin/sh -c '/bin/echo ENTROPY_KEY_SERIAL=$env{ID_SERIAL_SHORT} | /bin/sed -e s:/:_:g'"
+
+ # And tell the ekeyd about the device action.
+ ENV{ENTROPY_KEY_SERIAL}!="", RUN+="/lib/udev/entropykey.sh"
+Index: ekeyd-1.1.4/host/Makefile
+===================================================================
+--- ekeyd-1.1.4.orig/host/Makefile
++++ ekeyd-1.1.4/host/Makefile
+@@ -107,7 +107,7 @@ OPT ?= -O2
+ CFLAGS += $(INCLUDES)
+ CFLAGS += -g -Wall $(OPT)
+ CFLAGS += -fno-strict-aliasing
+-CFLAGS += -std=c99 -Wall -pedantic -Wshadow -Werror -D_GNU_SOURCE
++CFLAGS += -std=c99 -Wall -pedantic -Wshadow -D_GNU_SOURCE
+ CFLAGS += '-DCONFIGFILE="$(SYSCONFPREFIX)/ekeyd.conf"'
+ CFLAGS += '-DPIDFILE="$(RUNTIMEPREFIX)/ekeyd.pid"'
+ CFLAGS += '-DKEYRINGFILE="$(SYSCONFPREFIX)/keyring"'
+@@ -148,7 +148,7 @@ daemonise_ulusbd.o: daemonise.c
+ $(COMPILE.c) $(OUTPUT_OPTION) $(PTHFLAGS) $^
+
+ egd-linux: egd-linux.o daemonise.o
+- $(CC) $(CFLAGS) -o $@ $^
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
+
+ ekeyd: ekeyd.o daemonise.o lstate.o connection.o stream.o frame.o packet.o keydb.o util.o fds.o krnlop.o foldback.o stats.o nonce.o ../device/frames/pem.o ../device/skeinwrap.o ../device/skein/skein.o ../device/skein/skein_block.o
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
diff --git a/app-crypt/ekeyd/files/ekeyd-1.1.5-const_char_usage.patch b/app-crypt/ekeyd/files/ekeyd-1.1.5-const_char_usage.patch
new file mode 100644
index 000000000000..81ad8e6a5337
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekeyd-1.1.5-const_char_usage.patch
@@ -0,0 +1,32 @@
+# HG changeset patch
+# User kristianf
+# Date 1382916823 -3600
+# Mon Oct 28 00:33:43 2013 +0100
+# Node ID 0d99149615ec5ec70a6d03c685291ddc55babff6
+# Parent fd192324ff9ae4c4c92cdb9c27f5ae100da136a6
+Rewrite static const char *usage
+
+diff -r fd192324ff9a -r 0d99149615ec host/ekey-setkey.c
+--- a/host/ekey-setkey.c Mon Oct 28 00:31:59 2013 +0100
++++ b/host/ekey-setkey.c Mon Oct 28 00:33:43 2013 +0100
+@@ -79,7 +79,7 @@
+ return mac;
+ }
+
+-static const char *usage =
++static const char usage[] =
+ "This is a low level tool. You probably wanted to use ekey-rekey instead.\n\n"
+ "Usage: %s [-d] [-h] [-n] [-f <keyring>] [-m <master>]\n"
+ " [-s <serial>] <path>\n"
+diff -r fd192324ff9a -r 0d99149615ec host/ekeyd.c
+--- a/host/ekeyd.c Mon Oct 28 00:31:59 2013 +0100
++++ b/host/ekeyd.c Mon Oct 28 00:33:43 2013 +0100
+@@ -209,7 +209,7 @@
+ return (output_stream != NULL);
+ }
+
+-static const char *usage=
++static const char usage[] =
+ "Usage: %s [-f <configfile>] [-p <pidfile>] [-v] [-h]\n"
+ "Entropy Key Daemon\n\n"
+ "\t-f Read configuration from configfile\n"
diff --git a/app-crypt/ekeyd/files/ekeyd-1.1.5-enoent.patch b/app-crypt/ekeyd/files/ekeyd-1.1.5-enoent.patch
new file mode 100644
index 000000000000..2d4cccbafafa
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekeyd-1.1.5-enoent.patch
@@ -0,0 +1,23 @@
+# HG changeset patch
+# User kristianf
+# Date 1382916946 -3600
+# Mon Oct 28 00:35:46 2013 +0100
+# Node ID 0a9e41a05aafb98cc8c21562931cb1cbb5e30c1f
+# Parent 0d99149615ec5ec70a6d03c685291ddc55babff6
+libusb_compat
+
+diff -r 0d99149615ec -r 0a9e41a05aaf host/ekey-ulusbd.c
+--- a/host/ekey-ulusbd.c Mon Oct 28 00:33:43 2013 +0100
++++ b/host/ekey-ulusbd.c Mon Oct 28 00:35:46 2013 +0100
+@@ -100,8 +100,9 @@
+
+ #if LIBUSB_HAS_DETACH_KERNEL_DRIVER_NP
+ if ((r = usb_detach_kernel_driver_np(devh, EKEY_IFACE)) != 0) {
+- if (r != -ENODATA) {
+- fprintf(stderr,
++ /* libusb_compat-0.1.3 mistakenly translate ENODATA to ENOENT */
++ if (r != -ENODATA && r != -ENOENT) {
++ fprintf(stderr,
+ "Unable to detach Entropy Key at %s/%s from kernel\n",
+ busmatch, devmatch);
+ usb_close(devh);
diff --git a/app-crypt/ekeyd/files/ekeyd-1.1.5-misc.patch b/app-crypt/ekeyd/files/ekeyd-1.1.5-misc.patch
new file mode 100644
index 000000000000..660f0bacf0ac
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekeyd-1.1.5-misc.patch
@@ -0,0 +1,50 @@
+diff -r 724cf5abf164 host/Makefile
+--- a/host/Makefile Mon Oct 28 00:43:49 2013 +0100
++++ b/host/Makefile Mon Oct 28 00:54:01 2013 +0100
+@@ -19,7 +19,7 @@
+ RM ?= rm -f
+ LUA_V ?= 5.1
+ EXTRA_INC ?=
+-LUA_INC ?= -I/usr/include/lua5.1
++LUA_INC ?= -I/usr/include
+ LIBDL ?= -ldl
+ PTHFLAGS ?=
+ PTHLIBS ?= -lpthread
+@@ -31,7 +31,7 @@
+ MANZEXT := .gz
+
+ # Current tool version as returned from tools
+-EKEYD_VERSION_S="1.1.4"
++EKEYD_VERSION_S="1.1.5"
+
+ # Attempt to detect an OS and set build options as appropriate
+ OSNAME=$(shell uname -s | tr A-Z a-z | tr -d /)
+@@ -91,10 +91,7 @@
+ override MANZCMD:=cat
+ override MANZEXT:=
+ endif
+-override LUA_INC:=-I/usr/local/include/lua51
+ override LIBDL:=
+-LIBDIRS += -L/usr/local/lib
+-INCLUDES += -I/usr/local/include
+ endif
+ endif
+ endif
+@@ -114,7 +111,7 @@
+ CFLAGS += '-DEKEYD_VERSION_S=""$(EKEYD_VERSION_S)""'
+ CFLAGS += $(EXTRA_CFLAGS)
+
+-LIBS += -llua$(LUA_V) -lm $(LIBDL)
++LIBS += -llua -lm $(LIBDL)
+ LDFLAGS += $(LIBDIRS)
+
+
+@@ -157,7 +154,7 @@
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
+
+ control.inc: bin2c.lua control.lua
+- lua$(LUA_V) bin2c.lua +control.lua result > control.inc.new
++ lua bin2c.lua +control.lua result > control.inc.new
+ mv control.inc.new control.inc
+
+ lstate.o: lstate.c control.inc
diff --git a/app-crypt/ekeyd/files/ekeyd-1.1.5-path-fixes.patch b/app-crypt/ekeyd/files/ekeyd-1.1.5-path-fixes.patch
new file mode 100644
index 000000000000..0a9a59186d1d
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekeyd-1.1.5-path-fixes.patch
@@ -0,0 +1,49 @@
+# HG changeset patch
+# User kristianf
+# Date 1382917171 -3600
+# Mon Oct 28 00:39:31 2013 +0100
+# Node ID d96c42b36cb125e6e52cff623b7bdad1910284b4
+# Parent 0a9e41a05aafb98cc8c21562931cb1cbb5e30c1f
+entropykey.sh
+
+diff -r 0a9e41a05aaf -r d96c42b36cb1 udev/entropykey.sh
+--- a/udev/entropykey.sh Mon Oct 28 00:35:46 2013 +0100
++++ b/udev/entropykey.sh Mon Oct 28 00:39:31 2013 +0100
+@@ -19,9 +19,10 @@
+ COUNTER=$(( ${COUNTER} + 1 ))
+ test ${COUNTER} -ge 10 && exit 1
+ done
+- $BINPATH/ekey-ulusbd -b${BUSNUM} -d${DEVNUM} -P/var/run/ekey-ulusbd-${ENTROPY_KEY_SERIAL}.pid -p/var/run/entropykeys/${ENTROPY_KEY_SERIAL} -D
++ /usr/libexec/ekey-ulusbd -b${BUSNUM} -d${DEVNUM} -P/dev/.ekey-ulusbd/${ENTROPY_KEY_SERIAL}.pid -p/dev/entropykey/${ENTROPY_KEY_SERIAL} -D
++
+ sleep 1
+- $BINPATH/ekeydctl ${ACTION} /var/run/entropykeys/${ENTROPY_KEY_SERIAL}
++ $BINPATH/ekeydctl ${ACTION} /dev/entropykey/${ENTROPY_KEY_SERIAL}
+ exit 0
+ }
+
+@@ -34,18 +35,18 @@
+ if test "x${BUSNUM}" = "x" -o "x${DEVNUM}" = "x"; then
+ exit 0
+ fi
+- if test -r "/var/run/ekey-ulusbd-${ENTROPY_KEY_SERIAL}.pid"; then
+- kill $(cat "/var/run/ekey-ulusbd-${ENTROPY_KEY_SERIAL}.pid") || true
++ if test -r "/dev/.ekey-ulusbd/${ENTROPY_KEY_SERIAL}.pid"; then
++ kill $(< "/dev/.ekey-ulusbd/${ENTROPY_KEY_SERIAL}.pid") || true
+ fi
+- mkdir -p /var/run/entropykeys
++ mkdir -p /dev/entropykey /dev/.ekeyd-ulusb
+ wait_for_usb &
+ exit 0
+ fi
+ # Update ekeyd with device operation
+- $BINPATH/ekeydctl ${ACTION} /var/run/entropykeys/${ENTROPY_KEY_SERIAL}
++ $BINPATH/ekeydctl ${ACTION} /dev/entropykey/${ENTROPY_KEY_SERIAL}
+ if test "x$ACTION" = "xremove"; then
+- rm "/var/run/ekey-ulusbd-${ENTROPYKEY_KEY_SERIAL}.pid"
+- rm "/var/run/entropykeys/${ENTROPYKEY_KEY_SERIAL}"
++ rm "/dev/.ekey-ulusbd/${ENTROPYKEY_KEY_SERIAL}.pid"
++ rm "/dev/entropykey/${ENTROPYKEY_KEY_SERIAL}"
+ fi
+ fi
+
diff --git a/app-crypt/ekeyd/files/ekeyd-1.1.5-remove-werror.patch b/app-crypt/ekeyd/files/ekeyd-1.1.5-remove-werror.patch
new file mode 100644
index 000000000000..bb5862dee986
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekeyd-1.1.5-remove-werror.patch
@@ -0,0 +1,29 @@
+# HG changeset patch
+# User kristianf
+# Date 1382917429 -3600
+# Mon Oct 28 00:43:49 2013 +0100
+# Node ID 724cf5abf164dd5889a7c72916aa524c3822b8bd
+# Parent 902b9c6908618864319835d69981f9ea902be324
+Makefile
+
+diff -r 902b9c690861 -r 724cf5abf164 host/Makefile
+--- a/host/Makefile Mon Oct 28 00:41:59 2013 +0100
++++ b/host/Makefile Mon Oct 28 00:43:49 2013 +0100
+@@ -107,7 +107,7 @@
+ CFLAGS += $(INCLUDES)
+ CFLAGS += -g -Wall $(OPT)
+ CFLAGS += -fno-strict-aliasing
+-CFLAGS += -std=c99 -Wall -pedantic -Wshadow -Werror -D_GNU_SOURCE
++CFLAGS += -std=c99 -Wall -pedantic -Wshadow -D_GNU_SOURCE
+ CFLAGS += '-DCONFIGFILE="$(SYSCONFPREFIX)/ekeyd.conf"'
+ CFLAGS += '-DPIDFILE="$(RUNTIMEPREFIX)/ekeyd.pid"'
+ CFLAGS += '-DKEYRINGFILE="$(SYSCONFPREFIX)/keyring"'
+@@ -148,7 +148,7 @@
+ $(COMPILE.c) $(OUTPUT_OPTION) $(PTHFLAGS) $^
+
+ egd-linux: egd-linux.o daemonise.o
+- $(CC) $(CFLAGS) -o $@ $^
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
+
+ ekeyd: ekeyd.o daemonise.o lstate.o connection.o stream.o frame.o packet.o keydb.o util.o fds.o krnlop.o foldback.o stats.o nonce.o ../device/frames/pem.o ../device/skeinwrap.o ../device/skein/skein.o ../device/skein/skein_block.o
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
diff --git a/app-crypt/ekeyd/files/ekeyd-1.1.5-udev-rule.patch b/app-crypt/ekeyd/files/ekeyd-1.1.5-udev-rule.patch
new file mode 100644
index 000000000000..c4b53a802bf6
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekeyd-1.1.5-udev-rule.patch
@@ -0,0 +1,36 @@
+# HG changeset patch
+# User kristianf
+# Date 1382917319 -3600
+# Mon Oct 28 00:41:59 2013 +0100
+# Node ID 902b9c6908618864319835d69981f9ea902be324
+# Parent d96c42b36cb125e6e52cff623b7bdad1910284b4
+udev rule
+
+diff -r d96c42b36cb1 -r 902b9c690861 udev/fedora15/60-entropykey-uds.rules
+--- a/udev/fedora15/60-entropykey-uds.rules Mon Oct 28 00:39:31 2013 +0100
++++ b/udev/fedora15/60-entropykey-uds.rules Mon Oct 28 00:41:59 2013 +0100
+@@ -9,7 +9,7 @@
+ # For licence terms refer to the COPYING file.
+
+ # Detect an Entropy Key being inserted and extract serial number
+-ACTION=="add|change|remove", SUBSYSTEM=="usb", BUS=="usb", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{program}="/bin/echo ENTROPY_KEY_SERIAL=$attr{serial}"
++ACTION=="add|change|remove", SUBSYSTEM=="usb", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{program}="/bin/sh -c /bin/echo ENTROPY_KEY_SERIAL=$attr{serial}"
+
+ # And tell the ekeyd about the device action.
+ ENV{ENTROPY_KEY_SERIAL}!="", RUN+="/lib/udev/entropykey.sh"
+diff -r d96c42b36cb1 -r 902b9c690861 udev/fedora15/60-entropykey.rules
+--- a/udev/fedora15/60-entropykey.rules Mon Oct 28 00:39:31 2013 +0100
++++ b/udev/fedora15/60-entropykey.rules Mon Oct 28 00:41:59 2013 +0100
+@@ -9,10 +9,10 @@
+ # For licence terms refer to the COPYING file distributed with the source.
+
+ # Detect an Entropy Key being inserted and add info values to environment
+-ACTION=="add|change|remove", SUBSYSTEM=="tty", KERNEL=="ttyACM[0-9]*", BUS=="usb", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{program}="usb_id --export %p"
++ACTION=="add|change|remove", SUBSYSTEM=="tty", KERNEL=="ttyACM[0-9]*", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{builtin}="usb_id"
+
+ # Detect an Entropy Key being inserted and extract serial number
+-ACTION=="add|change|remove", SUBSYSTEM=="tty", KERNEL=="ttyACM[0-9]*", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{program}="/bin/echo ENTROPY_KEY_SERIAL=$env{ID_SERIAL_SHORT}"
++ACTION=="add|change|remove", SUBSYSTEM=="tty", KERNEL=="ttyACM[0-9]*", ATTRS{idVendor}=="20df", ATTRS{idProduct}=="0001", IMPORT{program}="/bin/sh -c /bin/echo ENTROPY_KEY_SERIAL=$env{ID_SERIAL_SHORT}"
+
+ # Add the /dev/entropykey/<serialnumber> symbolic link
+ ENV{ENTROPY_KEY_SERIAL}!="", SYMLINK+="entropykey/$env{ENTROPY_KEY_SERIAL}"
diff --git a/app-crypt/ekeyd/files/ekeyd.init.2 b/app-crypt/ekeyd/files/ekeyd.init.2
new file mode 100644
index 000000000000..27ef7a11e46b
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekeyd.init.2
@@ -0,0 +1,30 @@
+#!/sbin/runscript
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+INSTANCE="${SVCNAME#*.}"
+if [ -z "${INSTANCE}" -o "${SVCNAME}" = "ekeyd" ]; then
+ INSTANCE="ekeyd"
+fi
+
+description="EntropyKey daemon"
+
+pidfile=/var/run/$SVCNAME.pid
+cfgfile=/etc/entropykey/${INSTANCE}.conf
+
+command=/usr/libexec/ekeyd
+command_args="-f ${cfgfile} -p ${pidfile}"
+
+depend() {
+ config $cfgfile
+
+ use udev ekey-ulusbd
+ need localmount
+
+ # quickly parse the configuration file; we only provide entropy
+ # if we're not using the egd server/client split method.
+ if sed -e 's:--.*::' "${cfgfile}" | grep -q SetOutputToKernel; then
+ provide entropy
+ fi
+}
diff --git a/app-crypt/ekeyd/files/ekeyd.service b/app-crypt/ekeyd/files/ekeyd.service
new file mode 100644
index 000000000000..637b424b703d
--- /dev/null
+++ b/app-crypt/ekeyd/files/ekeyd.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Entropy key daemon
+
+[Service]
+ExecStart=/usr/libexec/ekeyd
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-crypt/ekeyd/metadata.xml b/app-crypt/ekeyd/metadata.xml
new file mode 100644
index 000000000000..11e009a9ee5d
--- /dev/null
+++ b/app-crypt/ekeyd/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>
+ <email>k_f@gentoo.org</email>
+ <name>Kristian Fiskerstrand</name>
+ </maintainer>
+ <use>
+ <flag name='usb'>
+ Build the libusb-based userland daemon for accessing the
+ EntropyKey (alternative to the CDC USB driver). It is suggested
+ to use this option by default, as the CDC driver in the kernel
+ often seems to be fragile (or the gadget implementation on the
+ EntropyKey is too buggy), and can cause various problems.
+ </flag>
+
+ <flag name='munin'>
+ Install a plugin for <pkg>net-analyzer/munin</pkg> to graph
+ statistical data from ekeyd.
+ </flag>
+
+ <flag name='minimal'>
+ Only install the ekey-egd-linux service rather than the full
+ ekeyd package.
+ </flag>
+ </use>
+</pkgmetadata>
diff --git a/app-crypt/elettra/Manifest b/app-crypt/elettra/Manifest
new file mode 100644
index 000000000000..6a69e18915bd
--- /dev/null
+++ b/app-crypt/elettra/Manifest
@@ -0,0 +1 @@
+DIST elettra-src-1.0.tar.gz 16102 SHA256 fb0c4e3f624c02a613e34abbf7bc03d8fc0d43b4967c2b51b202d7201d95e05b SHA512 341a83436d9c163391eabbc06600b29e8ee837bb805f2f9ea922ffa8d8dcb9ec53e50ae475e13e2810ac69419b86072cd7e6c44d13c80e43ee67071e6864d5b3 WHIRLPOOL a5aff8c548c71181686b8724c4b2080b3b42b151747573c89cbd82579e8ad5a527204ceb24f04c39fd6f53387702410b9e6edf59968d2f563e94c2f4ead09827
diff --git a/app-crypt/elettra/elettra-1.0.ebuild b/app-crypt/elettra/elettra-1.0.ebuild
new file mode 100644
index 000000000000..456371a5c468
--- /dev/null
+++ b/app-crypt/elettra/elettra-1.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit toolchain-funcs
+
+MY_P="${PN}-src-${PV}"
+
+DESCRIPTION="Plausible deniable file cryptography"
+HOMEPAGE="http://www.winstonsmith.info/julia/elettra/"
+SRC_URI="http://www.winstonsmith.info/julia/elettra/${MY_P}.tar.gz"
+
+LICENSE="WTFPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+RDEPEND="sys-libs/zlib
+ app-crypt/mhash
+ dev-libs/libmcrypt"
+
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${PN}"
+
+src_compile() {
+ $(tc-getCC) ${CFLAGS} ${LDFLAGS} -I. src/*.c \
+ -lz `libmcrypt-config --cflags --libs` -lmhash \
+ -o elettra || die "compilation failed"
+}
+
+src_install() {
+ dobin elettra || die "dobin failed"
+ dodoc README || die "dodoc failed"
+}
diff --git a/app-crypt/elettra/metadata.xml b/app-crypt/elettra/metadata.xml
new file mode 100644
index 000000000000..6eb35690d41d
--- /dev/null
+++ b/app-crypt/elettra/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>
+ <email>lu_zero@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-crypt/etcd-ca/Manifest b/app-crypt/etcd-ca/Manifest
new file mode 100644
index 000000000000..ba22e275652e
--- /dev/null
+++ b/app-crypt/etcd-ca/Manifest
@@ -0,0 +1,2 @@
+DIST etcd-ca-0_p20140903.zip 1178338 SHA256 5da9f7afad6dd373d96c5d36dd30e9f43cfc8fc2359bbf2d0c6a864fff139f81 SHA512 f421be2c835e7ed701f698d8a48cf25fe011ba3a831ff8fa3a80f5f074f6b70fed7f71d64c488cce5e12af8b8ae29685a1b19f8f2cd487954019d483d90f5e1c WHIRLPOOL 8f1db212877eb522818a96b45e21946e27fac716acfe924ea45c0b8f20b253905eccfeffa1fdf47c582f6cc8866da812462cd71e2ddc6c5abc969f71737cf749
+DIST etcd-ca-0_p20150423.tar.gz 55031 SHA256 53e5083db3bee32a991a118be0386bfeadafc3173a707941c3a12284a7f97abc SHA512 8c7ecb80e056da77997283ff2defb6df9a9acef250b0fac8e18c2bca71cccfedf6d782b7c9bf6491574d88ac5fa358f9bc5f540aa718a2470655d75f2f54fff4 WHIRLPOOL 3f7b5a77787f6ed6474fb01bfcf02d394616d609d8cb815086b730499eb7293c9125c09abfa4a10a2c6ca375176a82d75fb3fe304fc1f9f53385f9b552ebff12
diff --git a/app-crypt/etcd-ca/etcd-ca-0_p20140903.ebuild b/app-crypt/etcd-ca/etcd-ca-0_p20140903.ebuild
new file mode 100644
index 000000000000..4c2eed67060f
--- /dev/null
+++ b/app-crypt/etcd-ca/etcd-ca-0_p20140903.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+KEYWORDS="~amd64"
+DESCRIPTION="A simple certificate manager written in Go. Easy to use with limited capability"
+HOMEPAGE="https://github.com/coreos/etcd-ca"
+EGIT_COMMIT="812f3626796be16d9db052720ce9c54f5a40bb26"
+SRC_URI="${HOMEPAGE}/archive/${EGIT_COMMIT}.zip -> ${P}.zip"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="doc"
+DEPEND=">=dev-lang/go-1.2"
+RDEPEND=""
+S=${WORKDIR}/${PN}-${EGIT_COMMIT}
+
+src_prepare() {
+ sed -e "s:^\(go install\)\(.*\)$:\\1 -x -ldflags=\"-v -linkmode=external -extldflags '${LDFLAGS}'\" \\2:" \
+ -i build || die
+}
+
+src_compile() {
+ CGO_CFLAGS="${CFLAGS}" ./build || die
+}
+
+# go tool: no such tool "cover"; to install:
+# go get code.google.com/p/go.tools/cmd/cover
+#src_test() {
+# ./test || die
+#}
+
+src_install() {
+ dobin "${S}"/bin/${PN}
+ dodoc README.md
+ use doc && dodoc -r Documentation
+}
diff --git a/app-crypt/etcd-ca/etcd-ca-0_p20150423-r1.ebuild b/app-crypt/etcd-ca/etcd-ca-0_p20150423-r1.ebuild
new file mode 100644
index 000000000000..3209ff0718fd
--- /dev/null
+++ b/app-crypt/etcd-ca/etcd-ca-0_p20150423-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+KEYWORDS="~amd64"
+DESCRIPTION="A simple certificate manager written in Go. Easy to use with limited capability"
+HOMEPAGE="https://github.com/coreos/etcd-ca"
+EGIT_COMMIT="31fef42f75294cf8bf1e7facf82648de0c2d87a3"
+SRC_URI="${HOMEPAGE}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="doc"
+DEPEND=">=dev-lang/go-1.2:="
+RDEPEND=""
+S=${WORKDIR}/${PN}-${EGIT_COMMIT}
+
+src_prepare() {
+ sed -e "s:^\(go install\)\(.*\)$:\\1 -x -ldflags=\"-v -linkmode=external -extldflags '${LDFLAGS}'\" \\2:" \
+ -i build || die
+}
+
+src_compile() {
+ CGO_CFLAGS="${CFLAGS}" ./build || die
+}
+
+# go tool: no such tool "cover"; to install:
+# go get code.google.com/p/go.tools/cmd/cover
+#src_test() {
+# ./test || die
+#}
+
+src_install() {
+ dobin "${S}"/bin/${PN}
+ dodoc README.md
+ use doc && dodoc -r Documentation
+}
diff --git a/app-crypt/etcd-ca/etcd-ca-0_p20150423.ebuild b/app-crypt/etcd-ca/etcd-ca-0_p20150423.ebuild
new file mode 100644
index 000000000000..78d825dc4f87
--- /dev/null
+++ b/app-crypt/etcd-ca/etcd-ca-0_p20150423.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+KEYWORDS="~amd64"
+DESCRIPTION="A simple certificate manager written in Go. Easy to use with limited capability"
+HOMEPAGE="https://github.com/coreos/etcd-ca"
+EGIT_COMMIT="31fef42f75294cf8bf1e7facf82648de0c2d87a3"
+SRC_URI="${HOMEPAGE}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="doc"
+DEPEND=">=dev-lang/go-1.2"
+RDEPEND=""
+S=${WORKDIR}/${PN}-${EGIT_COMMIT}
+
+src_prepare() {
+ sed -e "s:^\(go install\)\(.*\)$:\\1 -x -ldflags=\"-v -linkmode=external -extldflags '${LDFLAGS}'\" \\2:" \
+ -i build || die
+}
+
+src_compile() {
+ CGO_CFLAGS="${CFLAGS}" ./build || die
+}
+
+# go tool: no such tool "cover"; to install:
+# go get code.google.com/p/go.tools/cmd/cover
+#src_test() {
+# ./test || die
+#}
+
+src_install() {
+ dobin "${S}"/bin/${PN}
+ dodoc README.md
+ use doc && dodoc -r Documentation
+}
diff --git a/app-crypt/etcd-ca/metadata.xml b/app-crypt/etcd-ca/metadata.xml
new file mode 100644
index 000000000000..6a37ab4bc329
--- /dev/null
+++ b/app-crypt/etcd-ca/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <bugs-to>https://github.com/coreos/etcd-ca/issues</bugs-to>
+ <changelog>https://github.com/coreos/etcd-ca/commits/master</changelog>
+ <doc>https://github.com/coreos/etcd-ca/blob/master/README.md</doc>
+ <remote-id type="github">coreos/etcd-ca</remote-id>
+ </upstream>
+ <maintainer>
+ <email>zmedico@gentoo.org</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/fcrackzip/Manifest b/app-crypt/fcrackzip/Manifest
new file mode 100644
index 000000000000..8c30c1ae42bb
--- /dev/null
+++ b/app-crypt/fcrackzip/Manifest
@@ -0,0 +1 @@
+DIST fcrackzip-1.0.tar.gz 114786 SHA256 4a58c8cb98177514ba17ee30d28d4927918bf0bdc3c94d260adfee44d2d43850 SHA512 c18d45b5a4ec46411d455a0c10cb9faa7a1060a48936a820fff9b1f8af7f7158ac09da44d39673e4bdfaf0f370ee425e8df0a0dbe98a2a930049ecc2a1419048 WHIRLPOOL fa86ec55174bd04aebca3bb5cfc6b70482ed4b9fef4fd9f4fb80ecaf7a16b8bbd99bb39501e587dc9477999b5db695620dc0b365566eade8bf7756a943a2a623
diff --git a/app-crypt/fcrackzip/fcrackzip-1.0.ebuild b/app-crypt/fcrackzip/fcrackzip-1.0.ebuild
new file mode 100644
index 000000000000..daf6b31422c1
--- /dev/null
+++ b/app-crypt/fcrackzip/fcrackzip-1.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+
+DESCRIPTION="a zip password cracker"
+HOMEPAGE="http://oldhome.schmorp.de/marc/fcrackzip.html"
+SRC_URI="http://oldhome.schmorp.de/marc/data/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="app-arch/unzip"
+DEPEND=""
+
+src_prepare() {
+ sed -i -e '/funroll/d' configure || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+ mv -vf "${D}"/usr/bin/{zipinfo,fcrack-zipinfo} || die
+ dodoc AUTHORS ChangeLog NEWS README
+}
diff --git a/app-crypt/fcrackzip/metadata.xml b/app-crypt/fcrackzip/metadata.xml
new file mode 100644
index 000000000000..2381b9de7c87
--- /dev/null
+++ b/app-crypt/fcrackzip/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <maintainer>
+ <email>ssuominen@gentoo.org</email>
+ <name>Samuli Suominen</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/gcr/Manifest b/app-crypt/gcr/Manifest
new file mode 100644
index 000000000000..21d53ace7647
--- /dev/null
+++ b/app-crypt/gcr/Manifest
@@ -0,0 +1,3 @@
+DIST gcr-3.12.2.tar.xz 1331884 SHA256 456e20615ab178aa92eeabdea64dcce535c10d5af189171d9375291a2447d21c SHA512 7c74302a4485e6909e39721b0beeeeb5920d218c4e8ab5a1878be33457f2b6d59df165bf2e6b606efc8275b8e45dffe8d28ac202cf835f7f2483237258a4d6b2 WHIRLPOOL 9655f1997ececce77f1b179f89798b5b9363ea94e0f2024772575ca05d88dd3b15432c1e0d69095b020726bc0fab1df023dfd6cc975488360f90e43fd9069a8c
+DIST gcr-3.14.0.tar.xz 1340764 SHA256 2a2231147a01e2061f57fa9ca77557ff97bc6ceab028cee5528079f4b2fca63d SHA512 2538b2575c0d325587f8b5423ac6f9c522a69b415977398dc5c4330ce1de896c966e541eb6e536e87e81013bb2dedea4d0ae8baabdab9318db5b97e0977671b8 WHIRLPOOL 755842ad30608162bb81ed58a027a26be6d12ecb12e037b826841612c2481ea564f727e2bc4e03f13f8100257b2d2ee3dae213b56b5f04319718ff30c5eee2a9
+DIST gcr-3.16.0.tar.xz 1335348 SHA256 ecfe8df41cc88158364bb15addc670b11e539fe844742983629ba2323888d075 SHA512 1db6e2532d2d0ceb6f339551b009baae5815fcf8a12b76b0eb9e13f301d1205c2e2c9b8f555ae011a84521e55fe9cccb703c3dd539d638b476e0474c34672be4 WHIRLPOOL 88a0d5936b6dd54923fd476f3af0acac9c068268416cb30c65670ae8bf8bec3940cdee84e72e6218c3cf9e59a023508e5961357b2e80a297428e573cddc6bd7b
diff --git a/app-crypt/gcr/files/gcr-3.14.0-race-building.patch b/app-crypt/gcr/files/gcr-3.14.0-race-building.patch
new file mode 100644
index 000000000000..b387f34cfdad
--- /dev/null
+++ b/app-crypt/gcr/files/gcr-3.14.0-race-building.patch
@@ -0,0 +1,29 @@
+From 58de2d787a31175b26687b9a228da0fb1cea5809 Mon Sep 17 00:00:00 2001
+From: Andreas Henriksson <andreas@fatal.se>
+Date: Mon, 29 Sep 2014 20:28:00 +0000
+Subject: gcr: Fix race building gdbus-codegen header and source
+
+https://bugzilla.gnome.org/show_bug.cgi?id=737622
+
+diff --git a/gcr/Makefile.am b/gcr/Makefile.am
+index 0834c67..59f32b7 100644
+--- a/gcr/Makefile.am
++++ b/gcr/Makefile.am
+@@ -161,12 +161,12 @@ gcr/gcr-dbus-generated.c: $(DBUS_XML_DEFINITIONS)
+ $(AM_V_GEN) sed -e 's/gcr_dbus/_gcr_dbus/g' \
+ gcr/gcr-dbus-generated.c > gcr/gcr-dbus-generated.c.tmp && \
+ mv gcr/gcr-dbus-generated.c.tmp gcr/gcr-dbus-generated.c
+-
+-gcr/gcr-dbus-generated.h: gcr/gcr-dbus-generated.c
+ $(AM_V_GEN) sed -e 's/gcr_dbus/_gcr_dbus/g' \
+ gcr/gcr-dbus-generated.h > gcr/gcr-dbus-generated.h.tmp && \
+ mv gcr/gcr-dbus-generated.h.tmp gcr/gcr-dbus-generated.h
+
++gcr/gcr-dbus-generated.h: gcr/gcr-dbus-generated.c
++
+ pkgconfig_DATA += \
+ gcr-base-$(GCR_MAJOR).pc
+
+--
+cgit v0.10.1
+
diff --git a/app-crypt/gcr/gcr-3.12.2.ebuild b/app-crypt/gcr/gcr-3.12.2.ebuild
new file mode 100644
index 000000000000..798cc5f846b7
--- /dev/null
+++ b/app-crypt/gcr/gcr-3.12.2.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+VALA_MIN_API_VERSION="0.20"
+VALA_USE_DEPEND="vapigen"
+PYTHON_COMPAT=( python2_7 )
+
+inherit gnome2 python-any-r1 vala virtualx
+
+DESCRIPTION="Libraries for cryptographic UIs and accessing PKCS#11 modules"
+HOMEPAGE="https://developer.gnome.org/gcr/"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0/1" # subslot = suffix of libgcr-3
+IUSE="debug gtk +introspection vala"
+REQUIRED_USE="vala? ( introspection )"
+KEYWORDS="alpha amd64 arm ia64 ~mips ppc ppc64 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+
+COMMON_DEPEND="
+ >=app-crypt/gnupg-2
+ >=app-crypt/p11-kit-0.19
+ >=dev-libs/glib-2.34:2
+ >=dev-libs/libgcrypt-1.2.2:0=
+ >=dev-libs/libtasn1-1:=
+ >=sys-apps/dbus-1
+ gtk? ( >=x11-libs/gtk+-3:3[X,introspection?] )
+ introspection? ( >=dev-libs/gobject-introspection-1.34 )
+"
+RDEPEND="${COMMON_DEPEND}
+ !<gnome-base/gnome-keyring-3.3
+"
+# gcr was part of gnome-keyring until 3.3
+DEPEND="${COMMON_DEPEND}
+ ${PYTHON_DEPS}
+ dev-libs/gobject-introspection-common
+ dev-libs/libxslt
+ dev-util/gdbus-codegen
+ >=dev-util/gtk-doc-am-1.9
+ >=dev-util/intltool-0.35
+ sys-devel/gettext
+ virtual/pkgconfig
+ vala? ( $(vala_depend) )
+"
+# eautoreconf needs:
+# dev-libs/gobject-introspection-common
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ # Disable stupid flag changes
+ sed -e 's/CFLAGS="$CFLAGS -g"//' \
+ -e 's/CFLAGS="$CFLAGS -O0"//' \
+ -i configure.ac configure || die
+
+ use vala && vala_src_prepare
+ gnome2_src_prepare
+}
+
+src_configure() {
+ DOCS="AUTHORS ChangeLog HACKING NEWS README"
+ gnome2_src_configure \
+ $(use_with gtk) \
+ $(use_enable introspection) \
+ $(use_enable vala) \
+ $(usex debug --enable-debug=yes --enable-debug=default) \
+ --disable-update-icon-cache \
+ --disable-update-mime
+}
+
+src_test() {
+ unset DBUS_SESSION_BUS_ADDRESS
+ Xemake check
+}
diff --git a/app-crypt/gcr/gcr-3.14.0.ebuild b/app-crypt/gcr/gcr-3.14.0.ebuild
new file mode 100644
index 000000000000..917387172780
--- /dev/null
+++ b/app-crypt/gcr/gcr-3.14.0.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+VALA_USE_DEPEND="vapigen"
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools eutils gnome2 python-any-r1 vala virtualx
+
+DESCRIPTION="Libraries for cryptographic UIs and accessing PKCS#11 modules"
+HOMEPAGE="https://developer.gnome.org/gcr/"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0/1" # subslot = suffix of libgcr-3
+IUSE="debug gtk +introspection vala"
+REQUIRED_USE="vala? ( introspection )"
+KEYWORDS="alpha amd64 arm ~arm64 ia64 ~mips ppc ppc64 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+
+COMMON_DEPEND="
+ >=app-crypt/gnupg-2
+ >=app-crypt/p11-kit-0.19
+ >=dev-libs/glib-2.38:2
+ >=dev-libs/libgcrypt-1.2.2:0=
+ >=dev-libs/libtasn1-1:=
+ >=sys-apps/dbus-1
+ gtk? ( >=x11-libs/gtk+-3.12:3[X,introspection?] )
+ introspection? ( >=dev-libs/gobject-introspection-1.34 )
+"
+RDEPEND="${COMMON_DEPEND}
+ !<gnome-base/gnome-keyring-3.3
+"
+# gcr was part of gnome-keyring until 3.3
+DEPEND="${COMMON_DEPEND}
+ ${PYTHON_DEPS}
+ dev-libs/gobject-introspection-common
+ dev-libs/libxslt
+ dev-libs/vala-common
+ dev-util/gdbus-codegen
+ >=dev-util/gtk-doc-am-1.9
+ >=dev-util/intltool-0.35
+ sys-devel/gettext
+ virtual/pkgconfig
+ vala? ( $(vala_depend) )
+"
+# eautoreconf needs:
+# dev-libs/gobject-introspection-common
+# dev-libs/vala-common
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ # Fix race building gdbus-codegen header and source (from '3.14')
+ epatch "${FILESDIR}"/${P}-race-building.patch
+
+ # Disable stupid flag changes
+ sed -e 's/CFLAGS="$CFLAGS -g"//' \
+ -e 's/CFLAGS="$CFLAGS -O0"//' \
+ -i configure.ac configure || die
+
+ eautoreconf
+ use vala && vala_src_prepare
+ gnome2_src_prepare
+}
+
+src_configure() {
+ DOCS="AUTHORS ChangeLog HACKING NEWS README"
+ gnome2_src_configure \
+ $(use_with gtk) \
+ $(use_enable introspection) \
+ $(use_enable vala) \
+ $(usex debug --enable-debug=yes --enable-debug=default) \
+ --disable-update-icon-cache \
+ --disable-update-mime
+}
+
+src_test() {
+ unset DBUS_SESSION_BUS_ADDRESS
+ Xemake check
+}
diff --git a/app-crypt/gcr/gcr-3.16.0.ebuild b/app-crypt/gcr/gcr-3.16.0.ebuild
new file mode 100644
index 000000000000..7c01df8b349c
--- /dev/null
+++ b/app-crypt/gcr/gcr-3.16.0.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+VALA_USE_DEPEND="vapigen"
+PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
+
+inherit gnome2 python-any-r1 vala virtualx
+
+DESCRIPTION="Libraries for cryptographic UIs and accessing PKCS#11 modules"
+HOMEPAGE="https://developer.gnome.org/gcr/"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0/1" # subslot = suffix of libgcr-3
+IUSE="debug gtk +introspection vala"
+REQUIRED_USE="vala? ( introspection )"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+
+COMMON_DEPEND="
+ >=app-crypt/gnupg-2
+ >=app-crypt/p11-kit-0.19
+ >=dev-libs/glib-2.38:2
+ >=dev-libs/libgcrypt-1.2.2:0=
+ >=dev-libs/libtasn1-1:=
+ >=sys-apps/dbus-1
+ gtk? ( >=x11-libs/gtk+-3.12:3[X,introspection?] )
+ introspection? ( >=dev-libs/gobject-introspection-1.34 )
+"
+RDEPEND="${COMMON_DEPEND}
+ !<gnome-base/gnome-keyring-3.3
+"
+# gcr was part of gnome-keyring until 3.3
+DEPEND="${COMMON_DEPEND}
+ ${PYTHON_DEPS}
+ dev-libs/gobject-introspection-common
+ dev-libs/libxslt
+ dev-libs/vala-common
+ dev-util/gdbus-codegen
+ >=dev-util/gtk-doc-am-1.9
+ >=dev-util/intltool-0.35
+ sys-devel/gettext
+ virtual/pkgconfig
+ vala? ( $(vala_depend) )
+"
+# eautoreconf needs:
+# dev-libs/gobject-introspection-common
+# dev-libs/vala-common
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ # Disable stupid flag changes
+ sed -e 's/CFLAGS="$CFLAGS -g"//' \
+ -e 's/CFLAGS="$CFLAGS -O0"//' \
+ -i configure.ac configure || die
+
+ use vala && vala_src_prepare
+ gnome2_src_prepare
+}
+
+src_configure() {
+ DOCS="AUTHORS ChangeLog HACKING NEWS README"
+ gnome2_src_configure \
+ $(use_with gtk) \
+ $(use_enable introspection) \
+ $(use_enable vala) \
+ $(usex debug --enable-debug=yes --enable-debug=default) \
+ --disable-update-icon-cache \
+ --disable-update-mime
+}
+
+src_test() {
+ unset DBUS_SESSION_BUS_ADDRESS
+ Xemake check
+}
diff --git a/app-crypt/gcr/metadata.xml b/app-crypt/gcr/metadata.xml
new file mode 100644
index 000000000000..da6fd63d0085
--- /dev/null
+++ b/app-crypt/gcr/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>gnome</herd>
+</pkgmetadata>
diff --git a/app-crypt/gentoo-keys/Manifest b/app-crypt/gentoo-keys/Manifest
new file mode 100644
index 000000000000..2d6f48019889
--- /dev/null
+++ b/app-crypt/gentoo-keys/Manifest
@@ -0,0 +1 @@
+DIST gentoo-keys-201501052117.tar.xz 28936 SHA256 168e430e9cbc2d720a53b2ba04fe1dd54ee667f12b75d8b51d60b8cb11a474f1 SHA512 7e48e4a13f3e431b0f2f48fc4ed4fdca4b8078b725b1a9d9ca30a551178cc229c5e4b6b9018cea5686c310c065091073c7f04ab8eb61a20be1ccd9956c1d8cee WHIRLPOOL bc4d1f71cc9517ba3741bae4727e10480641c81701cb2f91412e30fa055e6ee38ee46e0afed927214370be89308af2516bee311585b5aec8a690ccf3eac3c6e8
diff --git a/app-crypt/gentoo-keys/gentoo-keys-201501052117.ebuild b/app-crypt/gentoo-keys/gentoo-keys-201501052117.ebuild
new file mode 100644
index 000000000000..7a80e90784d4
--- /dev/null
+++ b/app-crypt/gentoo-keys/gentoo-keys-201501052117.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2014-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+DESCRIPTION="A Openpgp/gpg keyring of official Gentoo release media gpg keys"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Gentoo-keys"
+SRC_URI="http://dev.gentoo.org/~dolsen/releases/keyrings/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+KEYWORDS="alpha amd64 arm hppa ia64 ppc64 ppc sparc x86 ~arm64 ~x86-fbsd ~amd64-fbsd ~m68k ~mips ~s390 ~sh"
+
+DEPEND=""
+RDEPEND=""
+
+S="${WORKDIR}"
+
+src_prepare(){ true; }
+
+src_install(){
+ insinto /var/lib/gentoo/gkeys/keyrings
+ doins -r gentoo
+}
diff --git a/app-crypt/gentoo-keys/metadata.xml b/app-crypt/gentoo-keys/metadata.xml
new file mode 100644
index 000000000000..cdb5f20cd868
--- /dev/null
+++ b/app-crypt/gentoo-keys/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>
+ <email>gkeys@gentoo.org</email>
+ <name>Gentoo-keys Project Team</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/gifshuffle/Manifest b/app-crypt/gifshuffle/Manifest
new file mode 100644
index 000000000000..d097d6f2f1c2
--- /dev/null
+++ b/app-crypt/gifshuffle/Manifest
@@ -0,0 +1 @@
+DIST gifshuffle.tar.gz 21509 SHA256 5341ccbe850cb687213fa664ba3a791f5b304278fad8a9b09df172c53a829342 SHA512 0a0521f924c508c80c11309203e64cbd948945ddd557f01008a39987602320be780c1710dfcaa8ec9886fff4e9745465f2f242919ede4cedb2af9f73e5cc54be WHIRLPOOL 8e6dbfd50013a8bcfb72d2d71567e4d1ea918f3ed500fe1ca2aa6ce79312b686e00c0b95300a22629282a5b21382b173ab817d4bfea88d567180324e459cc82b
diff --git a/app-crypt/gifshuffle/gifshuffle-2.0.ebuild b/app-crypt/gifshuffle/gifshuffle-2.0.ebuild
new file mode 100644
index 000000000000..18530c8658b2
--- /dev/null
+++ b/app-crypt/gifshuffle/gifshuffle-2.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit toolchain-funcs
+
+DESCRIPTION="GIF colourmap steganography"
+HOMEPAGE="http://www.darkside.com.au/gifshuffle/"
+SRC_URI="http://www.darkside.com.au/gifshuffle/${PN}.tar.gz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND=""
+
+S="${WORKDIR}"/${PN}
+
+src_compile() {
+ echo $(tc-getCC) -o ${PN} ${CFLAGS} ${LDFLAGS} *.c
+ $(tc-getCC) -o ${PN} ${CFLAGS} ${LDFLAGS} *.c || die "Cannot compile ${PN}"
+}
+
+src_install() {
+ dobin ${PN} || die "Cannot install ${PN}"
+ dodoc gshuf.txt
+}
diff --git a/app-crypt/gifshuffle/metadata.xml b/app-crypt/gifshuffle/metadata.xml
new file mode 100644
index 000000000000..d9cd2cad66c2
--- /dev/null
+++ b/app-crypt/gifshuffle/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>
+<email>maintainer-needed@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-crypt/gkeys-gen/Manifest b/app-crypt/gkeys-gen/Manifest
new file mode 100644
index 000000000000..41a87f4eb367
--- /dev/null
+++ b/app-crypt/gkeys-gen/Manifest
@@ -0,0 +1 @@
+DIST gkeys-gen-0.1.tar.bz2 18480 SHA256 c6ef23e3b1cc9f62cb094ee94067e7d01d43099c4d9941efc9ce3017698430a6 SHA512 3f9c7ba977912ce23f12a1a08421c4fd0d461444b17fa5d2d6e6980c550f19064c489921bac108fa6fe5af4064e1dd21e88426251008c5c019ee2a117dc4725a WHIRLPOOL 586e31d071ac5ba9edf159d472657eebe82f442fefa35ed5af08cfcfa477818b06f80cfbb67be9c472841ee97293bbff6bfff8ec6c30e6385e1db02391bc7f6d
diff --git a/app-crypt/gkeys-gen/gkeys-gen-0.1-r1.ebuild b/app-crypt/gkeys-gen/gkeys-gen-0.1-r1.ebuild
new file mode 100644
index 000000000000..df987ec9c0f4
--- /dev/null
+++ b/app-crypt/gkeys-gen/gkeys-gen-0.1-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=(python{2_7,3_3,3_4})
+
+inherit distutils-r1
+
+DESCRIPTION="Tool for generating OpenPGP/GPG keys using a specifications file"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Gentoo-keys"
+SRC_URI="http://dev.gentoo.org/~dolsen/releases/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+KEYWORDS="~amd64 ~x86"
+
+DEPEND=""
+RDEPEND="${DEPEND}
+ app-crypt/gnupg
+ dev-python/snakeoil[${PYTHON_USEDEP}]
+ dev-python/pygpgme[${PYTHON_USEDEP}]
+ =app-crypt/gkeys-0.1*[${PYTHON_USEDEP}]
+ "
+
+pkg_postinst() {
+ einfo "This is experimental software."
+ einfo "The API's it installs should be considered unstable"
+ einfo "and are subject to change."
+ einfo
+ einfo "Please file any enhancement requests, or bugs"
+ einfo "at https://bugs.gentoo.org"
+ einfo "We are also on IRC @ #gentoo-keys of the Freenode network"
+ einfo
+ ewarn "There may be some Python 3 compatibility issues still."
+ ewarn "Please help us debug, fix and report them in Bugzilla."
+}
diff --git a/app-crypt/gkeys-gen/gkeys-gen-9999.ebuild b/app-crypt/gkeys-gen/gkeys-gen-9999.ebuild
new file mode 100644
index 000000000000..8efca2fe03d0
--- /dev/null
+++ b/app-crypt/gkeys-gen/gkeys-gen-9999.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=(python{2_7,3_3,3_4})
+
+EGIT_BRANCH="master"
+#EGIT_BRANCH="gen-update"
+
+inherit distutils-r1 git-r3
+
+EGIT_REPO_URI="git://anongit.gentoo.org/proj/gentoo-keys.git"
+#EGIT_REPO_URI="https://github.com/gentoo/gentoo-keys.git"
+
+DESCRIPTION="Tool for generating OpenPGP/GPG keys using a specifications file"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Gentoo-keys"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+KEYWORDS=""
+
+DEPEND=""
+RDEPEND="${DEPEND}
+ app-crypt/gnupg
+ dev-python/snakeoil[${PYTHON_USEDEP}]
+ dev-python/pygpgme[${PYTHON_USEDEP}]
+ =app-crypt/gkeys-9999[${PYTHON_USEDEP}]
+ "
+
+S="${WORKDIR}/$P/gkeys-gen"
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+ # copy these 2 into our subdir from the master level
+ cp ../LICENSE ./ || die "cp LICENSE failed"
+ cp ../README.md ./ || die "cp README.me failed"
+ cp -R ../py2man ./ || die "cp-R py2man failed"
+}
+
+pkg_postinst() {
+ einfo
+ einfo "This is experimental software."
+ einfo "The API's it installs should be considered unstable"
+ einfo "and are subject to change."
+ einfo
+ einfo "Please file any enhancement requests, or bugs"
+ einfo "at https://bugs.gentoo.org"
+ einfo "We are also on IRC @ #gentoo-keys of the freenode network"
+ einfo
+ ewarn "There may be some python 3 compatibility issues still."
+ ewarn "Please help debug/fix/report them in bugzilla."
+}
diff --git a/app-crypt/gkeys-gen/metadata.xml b/app-crypt/gkeys-gen/metadata.xml
new file mode 100644
index 000000000000..cdb5f20cd868
--- /dev/null
+++ b/app-crypt/gkeys-gen/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>
+ <email>gkeys@gentoo.org</email>
+ <name>Gentoo-keys Project Team</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/gkeys/Manifest b/app-crypt/gkeys/Manifest
new file mode 100644
index 000000000000..9d9030f31546
--- /dev/null
+++ b/app-crypt/gkeys/Manifest
@@ -0,0 +1 @@
+DIST gkeys-0.1.tar.bz2 40987 SHA256 b1e99873d1f966837eeb83b82d9289f6a6414de5a8467586b88d466800528524 SHA512 7da21ffc652ae95b308c8e8cd57754ad45b9414626b95d38b69867704df5def0a18cdb25934962e4a6109feeddbd1bbd8ac47f445b2977a869993b00771e79c5 WHIRLPOOL adc258dbc7955bf05f31106d16d1d4bd247517bd16d5562f1757e14a274d69c05b6749d83a94029caadd3704003f18cf8ca0e5985d6fbd498204ef36c91c4950
diff --git a/app-crypt/gkeys/gkeys-0.1-r1.ebuild b/app-crypt/gkeys/gkeys-0.1-r1.ebuild
new file mode 100644
index 000000000000..6dde42badd63
--- /dev/null
+++ b/app-crypt/gkeys/gkeys-0.1-r1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=(python{2_7,3_3,3_4})
+
+inherit distutils-r1
+
+DESCRIPTION="An OpenPGP/GPG key management tool for seed files and keyrings"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Gentoo-keys"
+SRC_URI="http://dev.gentoo.org/~dolsen/releases/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+KEYWORDS="~amd64 ~arm ~x86"
+
+DEPEND=""
+RDEPEND="${DEPEND}
+ app-crypt/gnupg
+ >=dev-python/pyGPG-0.1[${PYTHON_USEDEP}]
+ >=dev-python/ssl-fetch-0.3[${PYTHON_USEDEP}]
+ dev-python/snakeoil[${PYTHON_USEDEP}]
+ >=app-crypt/gentoo-keys-201501052117
+ "
+
+python_install_all() {
+ distutils-r1_python_install_all
+ keepdir /var/log/gkeys
+ fperms g+w /var/log/gkeys
+}
+
+pkg_preinst() {
+ chgrp users "${D}"/var/log/gkeys
+}
+
+pkg_postinst() {
+ einfo "Fetching Gentoo Developer seed file..."
+ gkeys fetch-seed -C gentoo-devs || die "Unable to fetch seeds"
+ einfo "This is experimental software."
+ einfo "The API's it installs should be considered unstable"
+ einfo "and are subject to change."
+ einfo
+ einfo "Please file any enhancement requests, or bugs"
+ einfo "at https://bugs.gentoo.org"
+ einfo "We are also on IRC @ #gentoo-keys of the Freenode network"
+ einfo
+ ewarn "There may be some Python 3 compatibility issues still."
+ ewarn "Please help us debug, fix and report them in Bugzilla."
+}
diff --git a/app-crypt/gkeys/gkeys-9999.ebuild b/app-crypt/gkeys/gkeys-9999.ebuild
new file mode 100644
index 000000000000..0f149c9ef0f0
--- /dev/null
+++ b/app-crypt/gkeys/gkeys-9999.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=(python{2_7,3_3,3_4})
+
+#EGIT_PROJECT="gentoo-keys.git"
+EGIT_BRANCH="master"
+
+inherit distutils-r1 git-r3
+
+EGIT_REPO_URI="git://anongit.gentoo.org/proj/gentoo-keys.git"
+
+DESCRIPTION="An OpenPGP/GPG key management tool and python libs"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Gentoo-keys"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+KEYWORDS=""
+
+DEPEND=""
+RDEPEND="${DEPEND}
+ app-crypt/gnupg
+ =dev-python/pyGPG-9999[${PYTHON_USEDEP}]
+ =dev-python/ssl-fetch-9999[${PYTHON_USEDEP}]
+ dev-python/snakeoil[${PYTHON_USEDEP}]
+ >=app-crypt/gentoo-keys-201501052117
+ "
+
+S="${WORKDIR}/$P/gkeys"
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+ # copy these 2 into our subdir from the master level
+ cp ../LICENSE ./ || die "cp LICENSE failed"
+ cp ../README.md ./ || die "cp README.me failed"
+ cp -R ../py2man ./ || die "cp-R py2man failed"
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ keepdir /var/log/gkeys
+ fperms g+w /var/log/gkeys
+}
+
+pkg_preinst() {
+ chgrp users "${D}"/var/log/gkeys
+}
+
+pkg_postinst() {
+ einfo
+ einfo "This is experimental software."
+ einfo "The API's it installs should be considered unstable"
+ einfo "and are subject to change."
+ einfo
+ einfo "Please file any enhancement requests, or bugs"
+ einfo "at https://bugs.gentoo.org"
+ einfo "We are also on IRC @ #gentoo-keys of the freenode network"
+ einfo
+ ewarn "There may be some python 3 compatibility issues still."
+ ewarn "Please help debug/fix/report them in bugzilla."
+}
diff --git a/app-crypt/gkeys/metadata.xml b/app-crypt/gkeys/metadata.xml
new file mode 100644
index 000000000000..cdb5f20cd868
--- /dev/null
+++ b/app-crypt/gkeys/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>
+ <email>gkeys@gentoo.org</email>
+ <name>Gentoo-keys Project Team</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/gnupg-pkcs11-scd/Manifest b/app-crypt/gnupg-pkcs11-scd/Manifest
new file mode 100644
index 000000000000..f6430552e1a1
--- /dev/null
+++ b/app-crypt/gnupg-pkcs11-scd/Manifest
@@ -0,0 +1 @@
+DIST gnupg-pkcs11-scd-0.7.3.tar.bz2 121593 SHA256 2406f05d996a56d0d53bf66a56fe155790037a63e919053b218ba17e2e7c860a SHA512 b87622394565b5adb2d3a8b10a7fd79820b1bd56c54263f18e151ac07ae79cd836ea3d010fdc47813bf7e1a4e4659a37e7b23f8d6815a6c7ab50629e8952c0d4 WHIRLPOOL 114c4ffe45f9a482a0657c65926535dc5a02525210d49c28270de9a733c9bc437ef217a490e4a7760527722eb763a4c85960ab366cc6744a0323ccec982c2fb3
diff --git a/app-crypt/gnupg-pkcs11-scd/gnupg-pkcs11-scd-0.7.3.ebuild b/app-crypt/gnupg-pkcs11-scd/gnupg-pkcs11-scd-0.7.3.ebuild
new file mode 100644
index 000000000000..4c4093e2b1f8
--- /dev/null
+++ b/app-crypt/gnupg-pkcs11-scd/gnupg-pkcs11-scd-0.7.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+DESCRIPTION="PKCS#11 support for GnuPG"
+HOMEPAGE="http://gnupg-pkcs11.sourceforge.net"
+SRC_URI="mirror://sourceforge/gnupg-pkcs11/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="=dev-libs/libassuan-2*
+ >=dev-libs/libgcrypt-1.2.2:0
+ >=dev-libs/libgpg-error-1.3
+ >=dev-libs/openssl-0.9.7
+ >=dev-libs/pkcs11-helper-1.02"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_configure() {
+ econf --docdir="/usr/share/doc/${PF}"
+}
diff --git a/app-crypt/gnupg-pkcs11-scd/metadata.xml b/app-crypt/gnupg-pkcs11-scd/metadata.xml
new file mode 100644
index 000000000000..7e1350d65107
--- /dev/null
+++ b/app-crypt/gnupg-pkcs11-scd/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <longdescription>
+ GnuPG scd replacement that enables the use of PKCS#11 tokens.
+ </longdescription>
+ <upstream>
+ <remote-id type="sourceforge">gnupg-pkcs11</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/gnupg/Manifest b/app-crypt/gnupg/Manifest
new file mode 100644
index 000000000000..b9858aeb6788
--- /dev/null
+++ b/app-crypt/gnupg/Manifest
@@ -0,0 +1,5 @@
+DIST gnupg-1.4.19.tar.bz2 3713811 SHA256 7f09319d044b0f6ee71fe3587bb873be701723ac0952cff5069046a78de8fd86 SHA512 cce2a83efb05f963ad0f8afd04999cc852889d46b4cad4cf399a37fd6e69f0911a5ccaa0192cb891a941cfa93125349b481efa789a127e3c0aa2c5ba53672741 WHIRLPOOL 14eaddca0981f05757aa0751b9563837efd3f5943a422d5f29e0de94eb6233b85b8848a1f4816ab7e897d6e656c7c08705115d53ed89f554604ffd2009c3c39f
+DIST gnupg-2.0.26.tar.bz2 4303384 SHA256 7758e30dc382ae7a7167ed41b7f936aa50af5ea2d6fccdef663b5b750b65b8e0 SHA512 5dd23baaac764fd48abd235ed52a85a2c7fd68b98fcde45c0f294ddb3b5629e8b1bd894585fbed4e6a6cb2bc4a5552c098c3cf1a849fffa469424fd0a4fee726 WHIRLPOOL 8d9b30337957f6bfeddea29116d862ef0c0ddd06d59bc2799db236b91b2c6767aad6f37f2166fc431c5d9454eb41f49f3e261bc38d0e89361f0c467f4591cd5a
+DIST gnupg-2.0.27.tar.bz2 4424679 SHA256 57646d3e4b919fa1e5c8f1c0cf5fe1215333041c493a5ebc4b8f2978dbe930f2 SHA512 b05e75f5ef9881df9472818743c175cfe3254088086f36dc0fcf3d34e61f648f1775d90d404f6c622561df5066d972aadbf99ea8ec1290e5d7f7310f4ef2989e WHIRLPOOL abb353b20655002a0957e38d2b889fb5e6a47ba7b7546e1c70fc1f97cf42deeca8f2b061678983f3a160210f4eaf7529441246df1f9f1d875f5cc090456fdfb7
+DIST gnupg-2.0.28.tar.bz2 4435779 SHA256 ce092ee4ab58fd19b9fb34a460c07b06c348f4360dd5dd4886d041eb521a534c SHA512 7e786fe0648d5ea453f9c7524fec4bd7d5eec26d28f723acf3cb2f7ec9c400c339f0926a179411876c3f8e08b06942dcec643dc930caf58239bbd4932f4bd3c1 WHIRLPOOL ccf7427e54a545914e89677618055a114b4c9dc4db48669a2fc726fced98475df4ed27c93bd180f1250d147111ee663c736cdf4e1d8afdc40ed967cdffd0eb66
+DIST gnupg-2.1.6.tar.bz2 4917722 SHA256 5e599ad542199f3bd733eed2b88a539d1b4c3beda2dbab0ff69f1896f52e92fd SHA512 ae8aafe770336c83badf5610fe37f4ddc488786e3604780627893b636161d8407f3fd782538799e2b2a02e31c97468464372017fa52b5d9ed1bd31c85d9b3763 WHIRLPOOL 2136c526242a4e741c0cbc9aec102ba634234efd679d62db9aae3b2ab8fe9f8ad9b8fdb7d1f2d43982e6a072d5f5072d0744d8bb434d61f49ff24e868c902f80
diff --git a/app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch b/app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch
new file mode 100644
index 000000000000..9506f814378d
--- /dev/null
+++ b/app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch
@@ -0,0 +1,34 @@
+From c34486a64c223bcbfbb57d9abcf107d684b815b6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Diego=20Elio=20Petten=C3=B2?= <flameeyes@gmail.com>
+Date: Sun, 17 Apr 2011 01:34:39 +0200
+Subject: [PATCH] gpgsm-gencert.sh: make sure not to abort after creating temp
+ file.
+
+https://bugs.g10code.com/gnupg/issue1466
+
+---
+ tools/gpgsm-gencert.sh | 8 ++++----
+ 1 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/tools/gpgsm-gencert.sh b/tools/gpgsm-gencert.sh
+index b209c8e..e7c812f 100755
+--- a/tools/gpgsm-gencert.sh
++++ b/tools/gpgsm-gencert.sh
+@@ -178,10 +178,10 @@ Key-Length: $KEY_LENGTH
+ Key-Usage: $KEY_USAGE
+ Name-DN: $NAME
+ EOF
+-[ -n "$KEY_GRIP" ] && echo "Key-Grip: $KEY_GRIP"
+-[ -n "$EMAIL_ADDRESSES" ] && echo "$EMAIL_ADDRESSES"
+-[ -n "$DNS_ADDRESSES" ] && echo "$DNS_ADDRESSES"
+-[ -n "$URI_ADDRESSES" ] && echo "$URI_ADDRESSES"
++[ -n "$KEY_GRIP" ] && echo "Key-Grip: $KEY_GRIP" || true
++[ -n "$EMAIL_ADDRESSES" ] && echo "$EMAIL_ADDRESSES" || true
++[ -n "$DNS_ADDRESSES" ] && echo "$DNS_ADDRESSES" || true
++[ -n "$URI_ADDRESSES" ] && echo "$URI_ADDRESSES" || true
+ ) > "$file_parameter"
+
+
+--
+1.7.5.rc1
+
diff --git a/app-crypt/gnupg/files/gnupg-2.0.26-Need-to-init-the-trustdb-for-import.patch b/app-crypt/gnupg/files/gnupg-2.0.26-Need-to-init-the-trustdb-for-import.patch
new file mode 100644
index 000000000000..4c9eff26fd58
--- /dev/null
+++ b/app-crypt/gnupg/files/gnupg-2.0.26-Need-to-init-the-trustdb-for-import.patch
@@ -0,0 +1,35 @@
+From a2dcc5cc49c3e79d64bd1a2ad7a5bc4df5b073ee Mon Sep 17 00:00:00 2001
+From: Kristian Fiskerstrand <kf@sumptuouscapital.com>
+Date: Wed, 13 Aug 2014 11:13:34 +0200
+Subject: [PATCH] gpg: Need to init the trustdb for import.
+
+* g10/trustdb.c (clear_ownertrusts): Init trustdb.
+
+--
+
+This was fixed in 1.4 branch in commit
+23191d7851eae2217ecdac6484349849a24fd94a but was not applied to the
+2.0 branch that exhibits the same problem. This is actually a hack
+to fix a bug introduced with commit 2528178.
+
+GnuPG-bug-id: 1622
+---
+ g10/trustdb.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/g10/trustdb.c b/g10/trustdb.c
+index f96701a..7bfef25 100644
+--- a/g10/trustdb.c
++++ b/g10/trustdb.c
+@@ -923,6 +923,8 @@ clear_ownertrusts (PKT_public_key *pk)
+ TRUSTREC rec;
+ int rc;
+
++ init_trustdb();
++
+ if (trustdb_args.no_trustdb && opt.trust_model == TM_ALWAYS)
+ return 0;
+
+--
+1.8.5.5
+
diff --git a/app-crypt/gnupg/files/gnupg-2.0.26-misc-cve.patch b/app-crypt/gnupg/files/gnupg-2.0.26-misc-cve.patch
new file mode 100644
index 000000000000..734a04abd553
--- /dev/null
+++ b/app-crypt/gnupg/files/gnupg-2.0.26-misc-cve.patch
@@ -0,0 +1,118 @@
+From ed8383c618e124cfa708c9ee87563fcdf2f4649c Mon Sep 17 00:00:00 2001
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Fri, 19 Dec 2014 18:53:34 -0500
+Subject: [PATCH] sm: Avoid double-free on iconv failure
+
+* sm/minip12.c: (p12_build) if jnlib_iconv_open fails, avoid
+double-free of pwbuf.
+
+--
+
+Observed by Joshua Rogers <honey@internot.info>, who proposed a
+slightly different fix.
+
+Debian-Bug-Id: 773472
+
+Added fix at a second place - wk.
+---
+ sm/minip12.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/agent/minip12.c b/agent/minip12.c
+index 01b91b7..ca4d248 100644
+--- a/agent/minip12.c
++++ b/agent/minip12.c
+@@ -2422,6 +2422,7 @@ p12_build (gcry_mpi_t *kparms, const void *cert, size_t certlen,
+ " requested charset '%s': %s\n",
+ charset, strerror (errno));
+ gcry_free (pwbuf);
++ pwbuf = NULL;
+ goto failure;
+ }
+
+@@ -2436,6 +2437,7 @@ p12_build (gcry_mpi_t *kparms, const void *cert, size_t certlen,
+ " requested charset '%s': %s\n",
+ charset, strerror (errno));
+ gcry_free (pwbuf);
++ pwbuf = NULL;
+ jnlib_iconv_close (cd);
+ goto failure;
+ }
+--
+1.7.10.4
+
+From b0b3803e8c2959dd67ca96debc54b5c6464f0d41 Mon Sep 17 00:00:00 2001
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Fri, 19 Dec 2014 18:07:55 -0500
+Subject: [PATCH] scd: Avoid double-free on error condition in scd
+
+* scd/command.c (cmd_readkey): avoid double-free of cert
+
+--
+
+When ksba_cert_new() fails, cert will be double-freed.
+
+Debian-Bug-Id: 773471
+
+Original patch changed by wk to do the free only at leave.
+---
+ scd/command.c | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/scd/command.c b/scd/command.c
+index dd4191f..1cc580a 100644
+--- a/scd/command.c
++++ b/scd/command.c
+@@ -804,10 +804,8 @@ cmd_readkey (assuan_context_t ctx, char *line)
+
+ rc = ksba_cert_new (&kc);
+ if (rc)
+- {
+- xfree (cert);
+- goto leave;
+- }
++ goto leave;
++
+ rc = ksba_cert_init_from_mem (kc, cert, ncert);
+ if (rc)
+ {
+--
+1.7.10.4
+
+From abd5f6752d693b7f313c19604f0723ecec4d39a6 Mon Sep 17 00:00:00 2001
+From: Werner Koch <wk@gnupg.org>
+Date: Mon, 22 Dec 2014 12:16:46 +0100
+Subject: [PATCH] dirmngr,gpgsm: Return NULL on fail
+
+* dirmngr/ldapserver.c (ldapserver_parse_one): Set SERVER to NULL.
+* sm/gpgsm.c (parse_keyserver_line): Ditto.
+--
+
+Reported-by: Joshua Rogers <git@internot.info>
+
+ "If something inside the ldapserver_parse_one function failed,
+ 'server' would be freed, then returned, leading to a
+ use-after-free. This code is likely copied from sm/gpgsm.c, which
+ was also susceptible to this bug."
+
+Signed-off-by: Werner Koch <wk@gnupg.org>
+---
+ dirmngr/ldapserver.c | 1 +
+ sm/gpgsm.c | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/sm/gpgsm.c b/sm/gpgsm.c
+index 3398d17..72bceb4 100644
+--- a/sm/gpgsm.c
++++ b/sm/gpgsm.c
+@@ -862,6 +862,7 @@ parse_keyserver_line (char *line,
+ {
+ log_info (_("%s:%u: skipping this line\n"), filename, lineno);
+ keyserver_list_free (server);
++ server = NULL;
+ }
+
+ return server;
+--
+1.7.10.4
+
diff --git a/app-crypt/gnupg/gnupg-1.4.19.ebuild b/app-crypt/gnupg/gnupg-1.4.19.ebuild
new file mode 100644
index 000000000000..b31f8a443d5a
--- /dev/null
+++ b/app-crypt/gnupg/gnupg-1.4.19.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+ECCVER="0.2.0"
+ECCVER_GNUPG="1.4.9"
+ECC_PATCH="${PN}-${ECCVER_GNUPG}-ecc${ECCVER}.diff"
+MY_P=${P/_/}
+
+DESCRIPTION="The GNU Privacy Guard, a GPL pgp replacement"
+HOMEPAGE="http://www.gnupg.org/"
+SRC_URI="mirror://gnupg/gnupg/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~x86-macos"
+IUSE="bzip2 curl ldap mta nls readline selinux smartcard static usb zlib"
+
+COMMON_DEPEND="
+ ldap? ( net-nds/openldap )
+ bzip2? ( app-arch/bzip2 )
+ zlib? ( sys-libs/zlib )
+ curl? ( net-misc/curl )
+ mta? ( virtual/mta )
+ readline? ( sys-libs/readline )
+ smartcard? ( =virtual/libusb-0* )
+ usb? ( =virtual/libusb-0* )"
+
+RDEPEND="!static? ( ${COMMON_DEPEND} )
+ selinux? ( sec-policy/selinux-gpg )
+ nls? ( virtual/libintl )"
+
+DEPEND="${COMMON_DEPEND}
+ dev-lang/perl
+ nls? ( sys-devel/gettext )"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ # bug#469388
+ sed -i -e 's/--batch --dearmor/--homedir . --batch --dearmor/' checks/Makefile.in
+
+ # Fix PIC definitions
+ sed -i -e 's:PIC:__PIC__:' mpi/i386/mpih-{add,sub}1.S intl/relocatable.c \
+ || die "sed PIC failed"
+ sed -i -e 's:if PIC:ifdef __PIC__:' mpi/sparc32v8/mpih-mul{1,2}.S || \
+ die "sed PIC failed"
+}
+
+src_configure() {
+ # Certain sparc32 machines seem to have trouble building correctly with
+ # -mcpu enabled. While this is not a gnupg problem, it is a temporary
+ # fix until the gcc problem can be tracked down.
+ if [ "${ARCH}" == "sparc" ] && [ "${PROFILE_ARCH}" == "sparc" ]; then
+ filter-flags -mcpu=supersparc -mcpu=v8 -mcpu=v7
+ fi
+
+ # 'USE=static' support was requested in #29299
+ use static && append-ldflags -static
+
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ $(use_enable ldap) \
+ $(use_enable mta mailto) \
+ --enable-hkp \
+ --enable-finger \
+ $(use_with !zlib included-zlib) \
+ $(use_with curl libcurl /usr) \
+ $(use_enable nls) \
+ $(use_enable bzip2) \
+ $(use_enable smartcard card-support) \
+ $(use_enable selinux selinux-support) \
+ --without-capabilities \
+ $(use_with readline) \
+ $(use_with usb libusb /usr) \
+ --enable-static-rnd=linux \
+ --libexecdir="${EPREFIX}/usr/libexec" \
+ --enable-noexecstack \
+ CC_FOR_BUILD=$(tc-getBUILD_CC) \
+ ${myconf}
+}
+
+src_install() {
+ default
+
+ # keep the documentation in /usr/share/doc/...
+ rm -rf "${ED}usr/share/gnupg/FAQ" "${ED}usr/share/gnupg/faq.html" || die
+
+ dodoc AUTHORS BUGS ChangeLog NEWS PROJECTS README THANKS \
+ TODO VERSION doc/{FAQ,HACKING,DETAILS,OpenPGP}
+
+ exeinto /usr/libexec/gnupg
+ doexe tools/make-dns-cert
+}
+
+pkg_postinst() {
+ ewarn "If you are using a non-Linux system, or a kernel older than 2.6.9,"
+ ewarn "you MUST make the gpg binary setuid."
+ echo
+# if use !bindist && use ecc; then
+# ewarn
+# ewarn "The elliptical curves patch is experimental"
+# ewarn "Further info available at http://alumnes.eps.udl.es/%7Ed4372211/index.en.html"
+# fi
+ elog
+ elog "See http://www.gentoo.org/doc/en/gnupg-user.xml for documentation on gnupg"
+ elog
+ elog "If you wish to view images emerge:"
+ elog "media-gfx/xloadimage, media-gfx/xli or any other viewer"
+ elog "Remember to use photo-viewer option in configuration file to activate the right viewer"
+}
diff --git a/app-crypt/gnupg/gnupg-2.0.26-r3.ebuild b/app-crypt/gnupg/gnupg-2.0.26-r3.ebuild
new file mode 100644
index 000000000000..055584d032f5
--- /dev/null
+++ b/app-crypt/gnupg/gnupg-2.0.26-r3.ebuild
@@ -0,0 +1,165 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="The GNU Privacy Guard, a GPL pgp replacement"
+HOMEPAGE="http://www.gnupg.org/"
+SRC_URI="mirror://gnupg/gnupg/${P}.tar.bz2"
+# SRC_URI="ftp://ftp.gnupg.org/gcrypt/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bzip2 doc ldap nls mta readline static selinux smartcard tools usb"
+
+COMMON_DEPEND_LIBS="
+ >=dev-libs/libassuan-2
+ >=dev-libs/libgcrypt-1.4:0=
+ >=dev-libs/libgpg-error-1.11
+ >=dev-libs/libksba-1.0.7
+ >=dev-libs/pth-1.3.7
+ >=net-misc/curl-7.10
+ sys-libs/zlib
+ bzip2? ( app-arch/bzip2 )
+ readline? ( sys-libs/readline )
+ smartcard? ( usb? ( virtual/libusb:0 ) )
+ ldap? ( net-nds/openldap )"
+COMMON_DEPEND_BINS="app-crypt/pinentry"
+
+# Existence of executables is checked during configuration.
+DEPEND="${COMMON_DEPEND_LIBS}
+ ${COMMON_DEPEND_BINS}
+ static? (
+ >=dev-libs/libassuan-2[static-libs]
+ >=dev-libs/libgcrypt-1.4:0=[static-libs]
+ >=dev-libs/libgpg-error-1.11[static-libs]
+ >=dev-libs/libksba-1.0.7[static-libs]
+ >=dev-libs/pth-1.3.7[static-libs]
+ >=net-misc/curl-7.10[static-libs]
+ sys-libs/zlib[static-libs]
+ bzip2? ( app-arch/bzip2[static-libs] )
+ )
+ nls? ( sys-devel/gettext )
+ doc? ( sys-apps/texinfo )"
+
+RDEPEND="!static? ( ${COMMON_DEPEND_LIBS} )
+ ${COMMON_DEPEND_BINS}
+ mta? ( virtual/mta )
+ !<=app-crypt/gnupg-2.0.1
+ selinux? ( sec-policy/selinux-gpg )
+ nls? ( virtual/libintl )"
+
+REQUIRED_USE="smartcard? ( !static )"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-2.0.17-gpgsm-gencert.patch"
+ epatch "${FILESDIR}/${P}-Need-to-init-the-trustdb-for-import.patch"
+ epatch "${FILESDIR}/${P}-misc-cve.patch"
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # 'USE=static' support was requested:
+ # gnupg1: bug #29299
+ # gnupg2: bug #159623
+ use static && append-ldflags -static
+
+ if use smartcard; then
+ myconf+=(
+ --enable-scdaemon
+ $(use_enable usb ccid-driver)
+ )
+ else
+ myconf+=( --disable-scdaemon )
+ fi
+
+ if use elibc_SunOS || use elibc_AIX; then
+ myconf+=( --disable-symcryptrun )
+ else
+ myconf+=( --enable-symcryptrun )
+ fi
+
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --enable-gpg \
+ --enable-gpgsm \
+ --enable-agent \
+ --without-adns \
+ "${myconf[@]}" \
+ $(use_enable bzip2) \
+ $(use_enable nls) \
+ $(use_enable mta mailto) \
+ $(use_enable ldap) \
+ $(use_with readline) \
+ CC_FOR_BUILD="$(tc-getBUILD_CC)"
+}
+
+src_compile() {
+ default
+
+ if use doc; then
+ cd doc
+ emake html
+ fi
+}
+
+src_install() {
+ default
+
+ use tools && dobin tools/{convert-from-106,gpg-check-pattern} \
+ tools/{gpg-zip,gpgconf,gpgsplit,lspgpot,mail-signed-keys,make-dns-cert}
+
+ emake DESTDIR="${D}" -f doc/Makefile uninstall-nobase_dist_docDATA
+ rm "${ED}"/usr/share/gnupg/help* || die
+
+ dodoc ChangeLog NEWS README THANKS TODO VERSION doc/FAQ doc/DETAILS \
+ doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER doc/help*
+
+ dosym gpg2 /usr/bin/gpg
+ dosym gpgv2 /usr/bin/gpgv
+ dosym gpg2keys_hkp /usr/libexec/gpgkeys_hkp
+ dosym gpg2keys_finger /usr/libexec/gpgkeys_finger
+ dosym gpg2keys_curl /usr/libexec/gpgkeys_curl
+ if use ldap; then
+ dosym gpg2keys_ldap /usr/libexec/gpgkeys_ldap
+ fi
+ echo ".so man1/gpg2.1" > "${ED}"/usr/share/man/man1/gpg.1
+ echo ".so man1/gpgv2.1" > "${ED}"/usr/share/man/man1/gpgv.1
+
+ dodir /etc/env.d
+ echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >> "${ED}"/etc/env.d/30gnupg
+
+ if use doc; then
+ dohtml doc/gnupg.html/* doc/*.png
+ fi
+}
+
+pkg_postinst() {
+ elog "If you wish to view images emerge:"
+ elog "media-gfx/xloadimage, media-gfx/xli or any other viewer"
+ elog "Remember to use photo-viewer option in configuration file to activate"
+ elog "the right viewer."
+ elog
+
+ if use smartcard; then
+ elog "To use your OpenPGP smartcard (or token) with GnuPG you need one of"
+ use usb && elog " - a CCID-compatible reader, used directly through libusb;"
+ elog " - sys-apps/pcsc-lite and a compatible reader device;"
+ elog " - dev-libs/openct and a compatible reader device;"
+ elog " - a reader device and drivers exporting either PC/SC or CT-API interfaces."
+ elog ""
+ elog "General hint: you probably want to try installing sys-apps/pcsc-lite and"
+ elog "app-crypt/ccid first."
+ fi
+
+ ewarn "Please remember to restart gpg-agent if a different version"
+ ewarn "of the agent is currently used. If you are unsure of the gpg"
+ ewarn "agent you are using please run 'killall gpg-agent',"
+ ewarn "and to start a fresh daemon just run 'gpg-agent --daemon'."
+}
diff --git a/app-crypt/gnupg/gnupg-2.0.27-r1.ebuild b/app-crypt/gnupg/gnupg-2.0.27-r1.ebuild
new file mode 100644
index 000000000000..4e5e91e25b3d
--- /dev/null
+++ b/app-crypt/gnupg/gnupg-2.0.27-r1.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="The GNU Privacy Guard, a GPL pgp replacement"
+HOMEPAGE="http://www.gnupg.org/"
+SRC_URI="mirror://gnupg/gnupg/${P}.tar.bz2"
+# SRC_URI="ftp://ftp.gnupg.org/gcrypt/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bzip2 doc ldap nls mta readline static selinux smartcard tools usb"
+
+COMMON_DEPEND_LIBS="
+ >=dev-libs/libassuan-2
+ >=dev-libs/libgcrypt-1.4:0=
+ >=dev-libs/libgpg-error-1.11
+ >=dev-libs/libksba-1.0.7
+ >=dev-libs/pth-1.3.7
+ >=net-misc/curl-7.10
+ sys-libs/zlib
+ bzip2? ( app-arch/bzip2 )
+ readline? ( sys-libs/readline )
+ smartcard? ( usb? ( virtual/libusb:0 ) )
+ ldap? ( net-nds/openldap )"
+COMMON_DEPEND_BINS="app-crypt/pinentry"
+
+# Existence of executables is checked during configuration.
+DEPEND="${COMMON_DEPEND_LIBS}
+ ${COMMON_DEPEND_BINS}
+ static? (
+ >=dev-libs/libassuan-2[static-libs]
+ >=dev-libs/libgcrypt-1.4:0=[static-libs]
+ >=dev-libs/libgpg-error-1.11[static-libs]
+ >=dev-libs/libksba-1.0.7[static-libs]
+ >=dev-libs/pth-1.3.7[static-libs]
+ >=net-misc/curl-7.10[static-libs]
+ sys-libs/zlib[static-libs]
+ bzip2? ( app-arch/bzip2[static-libs] )
+ )
+ nls? ( sys-devel/gettext )
+ doc? ( sys-apps/texinfo )"
+
+RDEPEND="!static? ( ${COMMON_DEPEND_LIBS} )
+ ${COMMON_DEPEND_BINS}
+ mta? ( virtual/mta )
+ !<=app-crypt/gnupg-2.0.1
+ selinux? ( sec-policy/selinux-gpg )
+ nls? ( virtual/libintl )"
+
+REQUIRED_USE="smartcard? ( !static )"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-2.0.17-gpgsm-gencert.patch"
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # 'USE=static' support was requested:
+ # gnupg1: bug #29299
+ # gnupg2: bug #159623
+ use static && append-ldflags -static
+
+ if use smartcard; then
+ myconf+=(
+ --enable-scdaemon
+ $(use_enable usb ccid-driver)
+ )
+ else
+ myconf+=( --disable-scdaemon )
+ fi
+
+ if use elibc_SunOS || use elibc_AIX; then
+ myconf+=( --disable-symcryptrun )
+ else
+ myconf+=( --enable-symcryptrun )
+ fi
+
+ # glib fails and picks up clang's internal stdint.h causing weird errors
+ [[ ${CC} == clang ]] && export gl_cv_absolute_stdint_h=/usr/include/stdint.h
+
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --enable-gpg \
+ --enable-gpgsm \
+ --enable-agent \
+ --enable-large-secmem \
+ --without-adns \
+ "${myconf[@]}" \
+ $(use_enable bzip2) \
+ $(use_enable nls) \
+ $(use_enable mta mailto) \
+ $(use_enable ldap) \
+ $(use_with readline) \
+ CC_FOR_BUILD="$(tc-getBUILD_CC)"
+}
+
+src_compile() {
+ default
+
+ if use doc; then
+ cd doc
+ emake html
+ fi
+}
+
+src_install() {
+ default
+
+ use tools && dobin tools/{convert-from-106,gpg-check-pattern} \
+ tools/{gpg-zip,gpgconf,gpgsplit,lspgpot,mail-signed-keys,make-dns-cert}
+
+ emake DESTDIR="${D}" -f doc/Makefile uninstall-nobase_dist_docDATA
+ rm "${ED}"/usr/share/gnupg/help* || die
+
+ dodoc ChangeLog NEWS README THANKS TODO VERSION doc/FAQ doc/DETAILS \
+ doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER doc/help*
+
+ dosym gpg2 /usr/bin/gpg
+ dosym gpgv2 /usr/bin/gpgv
+ dosym gpg2keys_hkp /usr/libexec/gpgkeys_hkp
+ dosym gpg2keys_finger /usr/libexec/gpgkeys_finger
+ dosym gpg2keys_curl /usr/libexec/gpgkeys_curl
+ if use ldap; then
+ dosym gpg2keys_ldap /usr/libexec/gpgkeys_ldap
+ fi
+ echo ".so man1/gpg2.1" > "${ED}"/usr/share/man/man1/gpg.1
+ echo ".so man1/gpgv2.1" > "${ED}"/usr/share/man/man1/gpgv.1
+
+ dodir /etc/env.d
+ echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >> "${ED}"/etc/env.d/30gnupg
+
+ if use doc; then
+ dohtml doc/gnupg.html/* doc/*.png
+ fi
+}
+
+pkg_postinst() {
+ elog "If you wish to view images emerge:"
+ elog "media-gfx/xloadimage, media-gfx/xli or any other viewer"
+ elog "Remember to use photo-viewer option in configuration file to activate"
+ elog "the right viewer."
+ elog
+
+ if use smartcard; then
+ elog "To use your OpenPGP smartcard (or token) with GnuPG you need one of"
+ use usb && elog " - a CCID-compatible reader, used directly through libusb;"
+ elog " - sys-apps/pcsc-lite and a compatible reader device;"
+ elog " - dev-libs/openct and a compatible reader device;"
+ elog " - a reader device and drivers exporting either PC/SC or CT-API interfaces."
+ elog ""
+ elog "General hint: you probably want to try installing sys-apps/pcsc-lite and"
+ elog "app-crypt/ccid first."
+ fi
+
+ ewarn "Please remember to restart gpg-agent if a different version"
+ ewarn "of the agent is currently used. If you are unsure of the gpg"
+ ewarn "agent you are using please run 'killall gpg-agent',"
+ ewarn "and to start a fresh daemon just run 'gpg-agent --daemon'."
+}
diff --git a/app-crypt/gnupg/gnupg-2.0.27.ebuild b/app-crypt/gnupg/gnupg-2.0.27.ebuild
new file mode 100644
index 000000000000..ffb48b43721d
--- /dev/null
+++ b/app-crypt/gnupg/gnupg-2.0.27.ebuild
@@ -0,0 +1,163 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="The GNU Privacy Guard, a GPL pgp replacement"
+HOMEPAGE="http://www.gnupg.org/"
+SRC_URI="mirror://gnupg/gnupg/${P}.tar.bz2"
+# SRC_URI="ftp://ftp.gnupg.org/gcrypt/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bzip2 doc ldap nls mta readline static selinux smartcard tools usb"
+
+COMMON_DEPEND_LIBS="
+ >=dev-libs/libassuan-2
+ >=dev-libs/libgcrypt-1.4:0=
+ >=dev-libs/libgpg-error-1.11
+ >=dev-libs/libksba-1.0.7
+ >=dev-libs/pth-1.3.7
+ >=net-misc/curl-7.10
+ sys-libs/zlib
+ bzip2? ( app-arch/bzip2 )
+ readline? ( sys-libs/readline )
+ smartcard? ( usb? ( virtual/libusb:0 ) )
+ ldap? ( net-nds/openldap )"
+COMMON_DEPEND_BINS="app-crypt/pinentry"
+
+# Existence of executables is checked during configuration.
+DEPEND="${COMMON_DEPEND_LIBS}
+ ${COMMON_DEPEND_BINS}
+ static? (
+ >=dev-libs/libassuan-2[static-libs]
+ >=dev-libs/libgcrypt-1.4:0=[static-libs]
+ >=dev-libs/libgpg-error-1.11[static-libs]
+ >=dev-libs/libksba-1.0.7[static-libs]
+ >=dev-libs/pth-1.3.7[static-libs]
+ >=net-misc/curl-7.10[static-libs]
+ sys-libs/zlib[static-libs]
+ bzip2? ( app-arch/bzip2[static-libs] )
+ )
+ nls? ( sys-devel/gettext )
+ doc? ( sys-apps/texinfo )"
+
+RDEPEND="!static? ( ${COMMON_DEPEND_LIBS} )
+ ${COMMON_DEPEND_BINS}
+ mta? ( virtual/mta )
+ !<=app-crypt/gnupg-2.0.1
+ selinux? ( sec-policy/selinux-gpg )
+ nls? ( virtual/libintl )"
+
+REQUIRED_USE="smartcard? ( !static )"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-2.0.17-gpgsm-gencert.patch"
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # 'USE=static' support was requested:
+ # gnupg1: bug #29299
+ # gnupg2: bug #159623
+ use static && append-ldflags -static
+
+ if use smartcard; then
+ myconf+=(
+ --enable-scdaemon
+ $(use_enable usb ccid-driver)
+ )
+ else
+ myconf+=( --disable-scdaemon )
+ fi
+
+ if use elibc_SunOS || use elibc_AIX; then
+ myconf+=( --disable-symcryptrun )
+ else
+ myconf+=( --enable-symcryptrun )
+ fi
+
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --enable-gpg \
+ --enable-gpgsm \
+ --enable-agent \
+ --without-adns \
+ "${myconf[@]}" \
+ $(use_enable bzip2) \
+ $(use_enable nls) \
+ $(use_enable mta mailto) \
+ $(use_enable ldap) \
+ $(use_with readline) \
+ CC_FOR_BUILD="$(tc-getBUILD_CC)"
+}
+
+src_compile() {
+ default
+
+ if use doc; then
+ cd doc
+ emake html
+ fi
+}
+
+src_install() {
+ default
+
+ use tools && dobin tools/{convert-from-106,gpg-check-pattern} \
+ tools/{gpg-zip,gpgconf,gpgsplit,lspgpot,mail-signed-keys,make-dns-cert}
+
+ emake DESTDIR="${D}" -f doc/Makefile uninstall-nobase_dist_docDATA
+ rm "${ED}"/usr/share/gnupg/help* || die
+
+ dodoc ChangeLog NEWS README THANKS TODO VERSION doc/FAQ doc/DETAILS \
+ doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER doc/help*
+
+ dosym gpg2 /usr/bin/gpg
+ dosym gpgv2 /usr/bin/gpgv
+ dosym gpg2keys_hkp /usr/libexec/gpgkeys_hkp
+ dosym gpg2keys_finger /usr/libexec/gpgkeys_finger
+ dosym gpg2keys_curl /usr/libexec/gpgkeys_curl
+ if use ldap; then
+ dosym gpg2keys_ldap /usr/libexec/gpgkeys_ldap
+ fi
+ echo ".so man1/gpg2.1" > "${ED}"/usr/share/man/man1/gpg.1
+ echo ".so man1/gpgv2.1" > "${ED}"/usr/share/man/man1/gpgv.1
+
+ dodir /etc/env.d
+ echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >> "${ED}"/etc/env.d/30gnupg
+
+ if use doc; then
+ dohtml doc/gnupg.html/* doc/*.png
+ fi
+}
+
+pkg_postinst() {
+ elog "If you wish to view images emerge:"
+ elog "media-gfx/xloadimage, media-gfx/xli or any other viewer"
+ elog "Remember to use photo-viewer option in configuration file to activate"
+ elog "the right viewer."
+ elog
+
+ if use smartcard; then
+ elog "To use your OpenPGP smartcard (or token) with GnuPG you need one of"
+ use usb && elog " - a CCID-compatible reader, used directly through libusb;"
+ elog " - sys-apps/pcsc-lite and a compatible reader device;"
+ elog " - dev-libs/openct and a compatible reader device;"
+ elog " - a reader device and drivers exporting either PC/SC or CT-API interfaces."
+ elog ""
+ elog "General hint: you probably want to try installing sys-apps/pcsc-lite and"
+ elog "app-crypt/ccid first."
+ fi
+
+ ewarn "Please remember to restart gpg-agent if a different version"
+ ewarn "of the agent is currently used. If you are unsure of the gpg"
+ ewarn "agent you are using please run 'killall gpg-agent',"
+ ewarn "and to start a fresh daemon just run 'gpg-agent --daemon'."
+}
diff --git a/app-crypt/gnupg/gnupg-2.0.28.ebuild b/app-crypt/gnupg/gnupg-2.0.28.ebuild
new file mode 100644
index 000000000000..4e5e91e25b3d
--- /dev/null
+++ b/app-crypt/gnupg/gnupg-2.0.28.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="The GNU Privacy Guard, a GPL pgp replacement"
+HOMEPAGE="http://www.gnupg.org/"
+SRC_URI="mirror://gnupg/gnupg/${P}.tar.bz2"
+# SRC_URI="ftp://ftp.gnupg.org/gcrypt/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bzip2 doc ldap nls mta readline static selinux smartcard tools usb"
+
+COMMON_DEPEND_LIBS="
+ >=dev-libs/libassuan-2
+ >=dev-libs/libgcrypt-1.4:0=
+ >=dev-libs/libgpg-error-1.11
+ >=dev-libs/libksba-1.0.7
+ >=dev-libs/pth-1.3.7
+ >=net-misc/curl-7.10
+ sys-libs/zlib
+ bzip2? ( app-arch/bzip2 )
+ readline? ( sys-libs/readline )
+ smartcard? ( usb? ( virtual/libusb:0 ) )
+ ldap? ( net-nds/openldap )"
+COMMON_DEPEND_BINS="app-crypt/pinentry"
+
+# Existence of executables is checked during configuration.
+DEPEND="${COMMON_DEPEND_LIBS}
+ ${COMMON_DEPEND_BINS}
+ static? (
+ >=dev-libs/libassuan-2[static-libs]
+ >=dev-libs/libgcrypt-1.4:0=[static-libs]
+ >=dev-libs/libgpg-error-1.11[static-libs]
+ >=dev-libs/libksba-1.0.7[static-libs]
+ >=dev-libs/pth-1.3.7[static-libs]
+ >=net-misc/curl-7.10[static-libs]
+ sys-libs/zlib[static-libs]
+ bzip2? ( app-arch/bzip2[static-libs] )
+ )
+ nls? ( sys-devel/gettext )
+ doc? ( sys-apps/texinfo )"
+
+RDEPEND="!static? ( ${COMMON_DEPEND_LIBS} )
+ ${COMMON_DEPEND_BINS}
+ mta? ( virtual/mta )
+ !<=app-crypt/gnupg-2.0.1
+ selinux? ( sec-policy/selinux-gpg )
+ nls? ( virtual/libintl )"
+
+REQUIRED_USE="smartcard? ( !static )"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-2.0.17-gpgsm-gencert.patch"
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # 'USE=static' support was requested:
+ # gnupg1: bug #29299
+ # gnupg2: bug #159623
+ use static && append-ldflags -static
+
+ if use smartcard; then
+ myconf+=(
+ --enable-scdaemon
+ $(use_enable usb ccid-driver)
+ )
+ else
+ myconf+=( --disable-scdaemon )
+ fi
+
+ if use elibc_SunOS || use elibc_AIX; then
+ myconf+=( --disable-symcryptrun )
+ else
+ myconf+=( --enable-symcryptrun )
+ fi
+
+ # glib fails and picks up clang's internal stdint.h causing weird errors
+ [[ ${CC} == clang ]] && export gl_cv_absolute_stdint_h=/usr/include/stdint.h
+
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --enable-gpg \
+ --enable-gpgsm \
+ --enable-agent \
+ --enable-large-secmem \
+ --without-adns \
+ "${myconf[@]}" \
+ $(use_enable bzip2) \
+ $(use_enable nls) \
+ $(use_enable mta mailto) \
+ $(use_enable ldap) \
+ $(use_with readline) \
+ CC_FOR_BUILD="$(tc-getBUILD_CC)"
+}
+
+src_compile() {
+ default
+
+ if use doc; then
+ cd doc
+ emake html
+ fi
+}
+
+src_install() {
+ default
+
+ use tools && dobin tools/{convert-from-106,gpg-check-pattern} \
+ tools/{gpg-zip,gpgconf,gpgsplit,lspgpot,mail-signed-keys,make-dns-cert}
+
+ emake DESTDIR="${D}" -f doc/Makefile uninstall-nobase_dist_docDATA
+ rm "${ED}"/usr/share/gnupg/help* || die
+
+ dodoc ChangeLog NEWS README THANKS TODO VERSION doc/FAQ doc/DETAILS \
+ doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER doc/help*
+
+ dosym gpg2 /usr/bin/gpg
+ dosym gpgv2 /usr/bin/gpgv
+ dosym gpg2keys_hkp /usr/libexec/gpgkeys_hkp
+ dosym gpg2keys_finger /usr/libexec/gpgkeys_finger
+ dosym gpg2keys_curl /usr/libexec/gpgkeys_curl
+ if use ldap; then
+ dosym gpg2keys_ldap /usr/libexec/gpgkeys_ldap
+ fi
+ echo ".so man1/gpg2.1" > "${ED}"/usr/share/man/man1/gpg.1
+ echo ".so man1/gpgv2.1" > "${ED}"/usr/share/man/man1/gpgv.1
+
+ dodir /etc/env.d
+ echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >> "${ED}"/etc/env.d/30gnupg
+
+ if use doc; then
+ dohtml doc/gnupg.html/* doc/*.png
+ fi
+}
+
+pkg_postinst() {
+ elog "If you wish to view images emerge:"
+ elog "media-gfx/xloadimage, media-gfx/xli or any other viewer"
+ elog "Remember to use photo-viewer option in configuration file to activate"
+ elog "the right viewer."
+ elog
+
+ if use smartcard; then
+ elog "To use your OpenPGP smartcard (or token) with GnuPG you need one of"
+ use usb && elog " - a CCID-compatible reader, used directly through libusb;"
+ elog " - sys-apps/pcsc-lite and a compatible reader device;"
+ elog " - dev-libs/openct and a compatible reader device;"
+ elog " - a reader device and drivers exporting either PC/SC or CT-API interfaces."
+ elog ""
+ elog "General hint: you probably want to try installing sys-apps/pcsc-lite and"
+ elog "app-crypt/ccid first."
+ fi
+
+ ewarn "Please remember to restart gpg-agent if a different version"
+ ewarn "of the agent is currently used. If you are unsure of the gpg"
+ ewarn "agent you are using please run 'killall gpg-agent',"
+ ewarn "and to start a fresh daemon just run 'gpg-agent --daemon'."
+}
diff --git a/app-crypt/gnupg/gnupg-2.1.6.ebuild b/app-crypt/gnupg/gnupg-2.1.6.ebuild
new file mode 100644
index 000000000000..2f40259fd38b
--- /dev/null
+++ b/app-crypt/gnupg/gnupg-2.1.6.ebuild
@@ -0,0 +1,170 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="The GNU Privacy Guard, a GPL OpenPGP implementation"
+HOMEPAGE="http://www.gnupg.org/"
+MY_P="${P/_/-}"
+SRC_URI="mirror://gnupg/gnupg/${MY_P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~x86"
+IUSE="bzip2 doc +gnutls ldap nls readline static selinux smartcard tools usb"
+
+COMMON_DEPEND_LIBS="
+ dev-libs/npth
+ >=dev-libs/libassuan-2
+ >=dev-libs/libgcrypt-1.6.2
+ >=dev-libs/libgpg-error-1.17
+ >=dev-libs/libksba-1.0.7
+ >=net-misc/curl-7.10
+ gnutls? ( >=net-libs/gnutls-3.0 )
+ sys-libs/zlib
+ ldap? ( net-nds/openldap )
+ bzip2? ( app-arch/bzip2 )
+ readline? ( sys-libs/readline:= )
+ smartcard? ( usb? ( virtual/libusb:0 ) )
+ "
+COMMON_DEPEND_BINS="app-crypt/pinentry
+ !app-crypt/dirmngr"
+
+# Existence of executables is checked during configuration.
+DEPEND="${COMMON_DEPEND_LIBS}
+ ${COMMON_DEPEND_BINS}
+ static? (
+ >=dev-libs/libassuan-2[static-libs]
+ >=dev-libs/libgcrypt-1.6.2[static-libs]
+ >=dev-libs/libgpg-error-1.17[static-libs]
+ >=dev-libs/libksba-1.0.7[static-libs]
+ dev-libs/npth[static-libs]
+ >=net-misc/curl-7.10[static-libs]
+ sys-libs/zlib[static-libs]
+ bzip2? ( app-arch/bzip2[static-libs] )
+ )
+ nls? ( sys-devel/gettext )
+ doc? ( sys-apps/texinfo )"
+
+RDEPEND="!static? ( ${COMMON_DEPEND_LIBS} )
+ ${COMMON_DEPEND_BINS}
+ selinux? ( sec-policy/selinux-gpg )
+ nls? ( virtual/libintl )"
+
+REQUIRED_USE="smartcard? ( !static )"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-2.0.17-gpgsm-gencert.patch"
+ epatch_user
+}
+
+src_configure() {
+ local myconf=()
+
+ # 'USE=static' support was requested:
+ # gnupg1: bug #29299
+ # gnupg2: bug #159623
+ use static && append-ldflags -static
+
+ if use smartcard; then
+ myconf+=(
+ --enable-scdaemon
+ $(use_enable usb ccid-driver)
+ )
+ else
+ myconf+=( --disable-scdaemon )
+ fi
+
+ if use elibc_SunOS || use elibc_AIX; then
+ myconf+=( --disable-symcryptrun )
+ else
+ myconf+=( --enable-symcryptrun )
+ fi
+
+ # glib fails and picks up clang's internal stdint.h causing weird errors
+ [[ ${CC} == clang ]] && export gl_cv_absolute_stdint_h=/usr/include/stdint.h
+
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --enable-gpg \
+ --enable-gpgsm \
+ --enable-large-secmem \
+ --without-adns \
+ "${myconf[@]}" \
+ $(use_enable bzip2) \
+ $(use_enable gnutls) \
+ $(use_with ldap) \
+ $(use_enable nls) \
+ $(use_with readline) \
+ CC_FOR_BUILD="$(tc-getBUILD_CC)"
+}
+
+src_compile() {
+ default
+
+ if use doc; then
+ cd doc
+ emake html
+ fi
+}
+
+src_install() {
+ default
+
+ use tools && dobin tools/{convert-from-106,gpg-check-pattern} \
+ tools/{gpg-zip,gpgconf,gpgsplit,lspgpot,mail-signed-keys,make-dns-cert}
+
+ emake DESTDIR="${D}" -f doc/Makefile uninstall-nobase_dist_docDATA
+ rm "${ED}"/usr/share/gnupg/help* || die
+
+ dodoc ChangeLog NEWS README THANKS TODO VERSION doc/FAQ doc/DETAILS \
+ doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER doc/help*
+
+ dosym gpg2 /usr/bin/gpg
+ dosym gpgv2 /usr/bin/gpgv
+ echo ".so man1/gpg2.1" > "${ED}"/usr/share/man/man1/gpg.1
+ echo ".so man1/gpgv2.1" > "${ED}"/usr/share/man/man1/gpgv.1
+
+ dodir /etc/env.d
+ echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >> "${ED}"/etc/env.d/30gnupg
+
+ if use doc; then
+ dohtml doc/gnupg.html/* doc/*.png
+ fi
+}
+
+pkg_postinst() {
+ elog "If you wish to view images emerge:"
+ elog "media-gfx/xloadimage, media-gfx/xli or any other viewer"
+ elog "Remember to use photo-viewer option in configuration file to activate"
+ elog "the right viewer."
+ elog
+
+ if use smartcard; then
+ elog "To use your OpenPGP smartcard (or token) with GnuPG you need one of"
+ use usb && elog " - a CCID-compatible reader, used directly through libusb;"
+ elog " - sys-apps/pcsc-lite and a compatible reader device;"
+ elog " - dev-libs/openct and a compatible reader device;"
+ elog " - a reader device and drivers exporting either PC/SC or CT-API interfaces."
+ elog ""
+ elog "General hint: you probably want to try installing sys-apps/pcsc-lite and"
+ elog "app-crypt/ccid first."
+ fi
+
+ ewarn "Please remember to restart gpg-agent if a different version"
+ ewarn "of the agent is currently used. If you are unsure of the gpg"
+ ewarn "agent you are using please run 'killall gpg-agent',"
+ ewarn "and to start a fresh daemon just run 'gpg-agent --daemon'."
+
+ if [[ -n ${REPLACING_VERSIONS} ]]; then
+ elog "If upgrading from a version prior than 2.1 you might have to re-import"
+ elog "secret keys after restarting the gpg-agent as the new version is using"
+ elog "a new storage mechanism."
+ elog "You can migrate the keys using gpg --import \$HOME/.gnupg/secring.gpg"
+ fi
+}
diff --git a/app-crypt/gnupg/metadata.xml b/app-crypt/gnupg/metadata.xml
new file mode 100644
index 000000000000..de969bccd57d
--- /dev/null
+++ b/app-crypt/gnupg/metadata.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <longdescription>
+ GnuPG is a complete and free implementation of the OpenPGP standard as
+ defined by RFC4880.
+ </longdescription>
+ <use>
+ <flag name='smartcard' restrict='&lt;app-crypt/gnupg-2.0.17-r1'>
+ Bring in <pkg>dev-libs/libusb</pkg> as a dependency; enable
+ scdaemon.
+ </flag>
+ <flag name='smartcard' restrict='&gt;=app-crypt/gnupg-2.0.17-r1'>
+ Build scdaemon software. Enables usage of OpenPGP cards. For
+ other type of smartcards, try
+ <pkg>app-crypt/gnupg-pkcs11-scd</pkg>.
+ </flag>
+ <flag name='usb' restrict='&gt;=app-crypt/gnupg-2.0.17-r1'>
+ Build direct CCID access for scdaemon; requires
+ <pkg>dev-libs/libusb</pkg>.
+ </flag>
+ <flag name='mta'>
+ Build mta support using
+ <pkg>virtual/mta</pkg>.
+ </flag>
+ <flag name='tools'>
+ Install extra tools.
+ </flag>
+ </use>
+</pkgmetadata>
diff --git a/app-crypt/gorilla/Manifest b/app-crypt/gorilla/Manifest
new file mode 100644
index 000000000000..b4cc079b4a5b
--- /dev/null
+++ b/app-crypt/gorilla/Manifest
@@ -0,0 +1 @@
+DIST gorilla-1.4.tar.gz 190766 SHA256 3184ff802d0f96250302e2ce1a966d5eca328e8e0becc44e037208af32ee0551 SHA512 56328068506309e99f9bc8b095048840eabacb794c742b36c4b855501d2973646e6e5ef7755f0aa29e636c5f5463fa1b24f0f627cb691511e4a48e1f062ce44b WHIRLPOOL 63b94f0daad92bb734c4319f82b0606ab990a552902f38a6c11a64da7917d000bf43b72a2754d2b72d310e57cffdbcbdcf9427d4c030343cb76cf588629fa57c
diff --git a/app-crypt/gorilla/files/gorilla-script-destdir.patch b/app-crypt/gorilla/files/gorilla-script-destdir.patch
new file mode 100644
index 000000000000..e18fcd80e3ec
--- /dev/null
+++ b/app-crypt/gorilla/files/gorilla-script-destdir.patch
@@ -0,0 +1,17 @@
+--- gorilla-1.4/gorilla.in 2006-07-14 13:29:33.000000000 -0400
++++ gorilla-1.4/gorilla.in.new 2006-07-14 13:33:01.000000000 -0400
+@@ -1,10 +1,13 @@
+ #! /bin/sh
+ # the next line restarts using wish \
+ exec @wish@ "$0" ${1+"$@"}
++
+ set myName [info script]
++set myGorilla /opt/gorilla-1.4/gorilla.tcl
++
+ if {![catch {
+ set linkName [file readlink $myName]
+ }]} {
+ set myName $linkName
+ }
+-source [file join [file dirname $myName] gorilla.tcl]
++source [file join [file dirname $myName] $myGorilla]
diff --git a/app-crypt/gorilla/gorilla-1.4-r1.ebuild b/app-crypt/gorilla/gorilla-1.4-r1.ebuild
new file mode 100644
index 000000000000..e90c85863895
--- /dev/null
+++ b/app-crypt/gorilla/gorilla-1.4-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="Password Safe in secure way with GUI interface"
+HOMEPAGE="https://github.com/zdia/gorilla/wiki"
+SRC_URI="https://github.com/zdia/gorilla/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND="
+ >=dev-lang/tcl-8.4.19:0
+ >=dev-lang/tk-8.4.19:0
+ dev-tcltk/iwidgets
+ dev-tcltk/bwidget"
+RDEPEND=${DEPEND}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-script-destdir.patch
+}
+
+src_configure() {
+ ./configure || die "econf failed"
+}
+src_compile() { :; }
+
+src_install() {
+ PREFIX="/opt/${P}"
+
+ insinto ${PREFIX}
+ doins -r gorilla.tcl isaac.tcl twofish sha1 blowfish pwsafe pics
+
+ dobin gorilla
+}
diff --git a/app-crypt/gorilla/metadata.xml b/app-crypt/gorilla/metadata.xml
new file mode 100644
index 000000000000..a7e9dbdcf257
--- /dev/null
+++ b/app-crypt/gorilla/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>
+ <email>patrick@gentoo.org</email>
+ <name>Patrick Lauer</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">zdia/gorilla</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/gpa/Manifest b/app-crypt/gpa/Manifest
new file mode 100644
index 000000000000..6a03751b776a
--- /dev/null
+++ b/app-crypt/gpa/Manifest
@@ -0,0 +1,4 @@
+DIST gpa-0.9.4.tar.bz2 730440 SHA256 444de33735cec227f65549ea7bdca4526ead9f464e99903636902ca85f80cfba SHA512 60fd4d49a23d00dd87f3ab025fc2721c4d61fa73710525e7f99921aae52fe192bd909b9041d4664f476862922a4ffaafb691475b2f0d83f8cde7450b6c0aab82 WHIRLPOOL aa366d512bc131b6f0f6e5859805fbad6413a112f4c2dd1752567a075a37f502c4ed0b00dc02235d9f8ffaf93538560d6226db16b253496e873bb08708d3140b
+DIST gpa-0.9.5.tar.bz2 732748 SHA256 55e77c0d34a7e0cef8af9a245af8697779b1cb071fea604dd80f24d78e7f30f3 SHA512 16dbc8ff9c37e435540f5770f8343b2a40ad851b64024459ca356fc33e2bc3a3fe10e626b9bab2a79553ca5eab6097a6619b8551bf04478b6ca63aecf5fa1543 WHIRLPOOL 255f0227507000b62571de6d26e43c86006096da00e8c55390b1b7ae52d0c9af810ff159c108290145f1155b3b2ca5842dd3ae114c63e03a3bf8502fbdcbd096
+DIST gpa-0.9.6.tar.bz2 734881 SHA256 81fa52a6c24f8ec1538145823866b3b9e1f058ae7cb2ae915e3d7037218e3fa7 SHA512 7cf949534483ab8c307fdb0744aa83c8e7e4a36a6e84e3c15e0051c641ba0cfb6d7def1af3511e13d9d3ec137821db4a42c8a6f9bd316b2905d18c0a82b3948c WHIRLPOOL 1f6681481820db48dc2acba572ebd8c00386cd90faf9862a28581bd78f5f2b57e21520552e51a192b39e8ce56439bfbcc808c7002d00f3fc99250b8028f373f7
+DIST gpa-0.9.7.tar.bz2 734750 SHA256 7e8ccb615e8fab15808cedc6fc5f60e284d4fbca8a4a0569aa6219c3ddb617e5 SHA512 59a4e1bc77e1f4f6b8cd160803676dda5d0deb6e49b5c8bf8e4c05fc810e8138a1933b496f214e4e85407dac21d1c034cf43f3fc30633ed74f29221a0f4ea2f3 WHIRLPOOL be47cc166164fb689da2b1f04fb768af607a99917ce11cba7d279d14a899616f3761abe758a61a0218dc956d2c96a10ff002430eb6b571ac822fdc4476e0f337
diff --git a/app-crypt/gpa/gpa-0.9.4.ebuild b/app-crypt/gpa/gpa-0.9.4.ebuild
new file mode 100644
index 000000000000..4b841e9448ff
--- /dev/null
+++ b/app-crypt/gpa/gpa-0.9.4.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="The GNU Privacy Assistant (GPA) is a graphical user interface for GnuPG"
+HOMEPAGE="http://gpa.wald.intevation.org"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="alpha amd64 ppc ppc64 sparc x86"
+IUSE_LINGUAS=" ar cs de es fr ja nl pl pt_BR ru sv tr zh_TW"
+IUSE="nls ${IUSE_LINGUAS// / linguas_}"
+
+RDEPEND=">=x11-libs/gtk+-2.10.0:2
+ >=dev-libs/libgpg-error-1.4
+ >=dev-libs/libassuan-1.1.0
+ >=app-crypt/gnupg-2
+ >=app-crypt/gpgme-1.2.0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )"
+
+src_prepare() {
+ sed -i 's/Application;//' gpa.desktop
+}
+
+src_configure() {
+ econf \
+ --with-gpgme-prefix=/usr \
+ --with-libassuan-prefix=/usr \
+ $(use_enable nls) \
+ GPGKEYS_LDAP="/usr/libexec/gpgkeys_ldap"
+}
diff --git a/app-crypt/gpa/gpa-0.9.5.ebuild b/app-crypt/gpa/gpa-0.9.5.ebuild
new file mode 100644
index 000000000000..83611ba06265
--- /dev/null
+++ b/app-crypt/gpa/gpa-0.9.5.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="The GNU Privacy Assistant (GPA) is a graphical user interface for GnuPG"
+HOMEPAGE="http://gpa.wald.intevation.org"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE_LINGUAS=" ar cs de es fr ja nl pl pt_BR ru sv tr zh_TW"
+IUSE="nls ${IUSE_LINGUAS// / linguas_}"
+
+RDEPEND=">=x11-libs/gtk+-2.10.0:2
+ >=dev-libs/libgpg-error-1.4
+ >=dev-libs/libassuan-1.1.0
+ >=app-crypt/gnupg-2
+ >=app-crypt/gpgme-1.5.0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )"
+
+src_prepare() {
+ sed -i 's/Application;//' gpa.desktop
+}
+
+src_configure() {
+ econf \
+ --with-gpgme-prefix=/usr \
+ --with-libassuan-prefix=/usr \
+ $(use_enable nls) \
+ GPGKEYS_LDAP="/usr/libexec/gpgkeys_ldap"
+}
diff --git a/app-crypt/gpa/gpa-0.9.6.ebuild b/app-crypt/gpa/gpa-0.9.6.ebuild
new file mode 100644
index 000000000000..83611ba06265
--- /dev/null
+++ b/app-crypt/gpa/gpa-0.9.6.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="The GNU Privacy Assistant (GPA) is a graphical user interface for GnuPG"
+HOMEPAGE="http://gpa.wald.intevation.org"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE_LINGUAS=" ar cs de es fr ja nl pl pt_BR ru sv tr zh_TW"
+IUSE="nls ${IUSE_LINGUAS// / linguas_}"
+
+RDEPEND=">=x11-libs/gtk+-2.10.0:2
+ >=dev-libs/libgpg-error-1.4
+ >=dev-libs/libassuan-1.1.0
+ >=app-crypt/gnupg-2
+ >=app-crypt/gpgme-1.5.0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )"
+
+src_prepare() {
+ sed -i 's/Application;//' gpa.desktop
+}
+
+src_configure() {
+ econf \
+ --with-gpgme-prefix=/usr \
+ --with-libassuan-prefix=/usr \
+ $(use_enable nls) \
+ GPGKEYS_LDAP="/usr/libexec/gpgkeys_ldap"
+}
diff --git a/app-crypt/gpa/gpa-0.9.7.ebuild b/app-crypt/gpa/gpa-0.9.7.ebuild
new file mode 100644
index 000000000000..83611ba06265
--- /dev/null
+++ b/app-crypt/gpa/gpa-0.9.7.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="The GNU Privacy Assistant (GPA) is a graphical user interface for GnuPG"
+HOMEPAGE="http://gpa.wald.intevation.org"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE_LINGUAS=" ar cs de es fr ja nl pl pt_BR ru sv tr zh_TW"
+IUSE="nls ${IUSE_LINGUAS// / linguas_}"
+
+RDEPEND=">=x11-libs/gtk+-2.10.0:2
+ >=dev-libs/libgpg-error-1.4
+ >=dev-libs/libassuan-1.1.0
+ >=app-crypt/gnupg-2
+ >=app-crypt/gpgme-1.5.0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )"
+
+src_prepare() {
+ sed -i 's/Application;//' gpa.desktop
+}
+
+src_configure() {
+ econf \
+ --with-gpgme-prefix=/usr \
+ --with-libassuan-prefix=/usr \
+ $(use_enable nls) \
+ GPGKEYS_LDAP="/usr/libexec/gpgkeys_ldap"
+}
diff --git a/app-crypt/gpa/metadata.xml b/app-crypt/gpa/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/gpa/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/gpg-ringmgr/Manifest b/app-crypt/gpg-ringmgr/Manifest
new file mode 100644
index 000000000000..2840f6a8cc45
--- /dev/null
+++ b/app-crypt/gpg-ringmgr/Manifest
@@ -0,0 +1 @@
+DIST gpg-ringmgr 9378 SHA256 acbd407b5859c13095e0a77ca206a2d6119722140137e9b9208a64be54b2b16a SHA512 f6aedf0db58c15163f6f08b37a5fef43a80655f5602d8ee856764177a33e2f5eb4c0b8a09e9f3ee5b36544039051909d48397be5793243eba5002526652dd194 WHIRLPOOL b558d8166657a709d3e8b5cb37e72086c2a19ea795ed4bbd713e1ab280307e2a42eeec7b0f380a91b32cb307fc493845c85283950f3beec8a3156b96b3e1ef6b
diff --git a/app-crypt/gpg-ringmgr/gpg-ringmgr-1.12.ebuild b/app-crypt/gpg-ringmgr/gpg-ringmgr-1.12.ebuild
new file mode 100644
index 000000000000..cb24cce7884a
--- /dev/null
+++ b/app-crypt/gpg-ringmgr/gpg-ringmgr-1.12.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="GPG Keyring Manager to handle large GPG keyrings more easily"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+SRC_URI="mirror://gentoo/${PN}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="x86 ppc sparc alpha hppa amd64"
+IUSE=""
+
+DEPEND="dev-lang/perl
+ >=app-crypt/gnupg-1.2.1"
+
+src_unpack() {
+ mkdir ${P}
+ cp "${DISTDIR}"/${PN} "${S}" || die
+}
+
+src_compile() {
+ pod2man "${S}"/${PN} >"${S}/"${PN}.1
+ pod2html "${S}"/${PN} >"${S}"/${PN}.html
+}
+
+src_install() {
+ dobin ${PN} || die
+ doman ${PN}.1
+ dohtml ${PN}.html
+}
diff --git a/app-crypt/gpg-ringmgr/metadata.xml b/app-crypt/gpg-ringmgr/metadata.xml
new file mode 100644
index 000000000000..a732fd8b2f03
--- /dev/null
+++ b/app-crypt/gpg-ringmgr/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>
+ <email>robbat2@gentoo.org</email>
+ <name>Robin H. Johnson</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/gpgme/Manifest b/app-crypt/gpgme/Manifest
new file mode 100644
index 000000000000..0dd3131e6b8c
--- /dev/null
+++ b/app-crypt/gpgme/Manifest
@@ -0,0 +1 @@
+DIST gpgme-1.5.5.tar.bz2 976383 SHA256 0b3d3d5107680c594777aae65882a1ff6dd1ba629a83432e719c8b82a743c207 SHA512 a01b84c1ae2a7c647b2de793fc05d39c4bf4a2d1b7378934e437857823f11ca9e9c1f3b32302d69a3a84d0be1fee1e1c86874355031b8fa6b40f4ad56ecc72ad WHIRLPOOL f3ad4282a254cf1ab8d01184df787a773fa7963a42157da93bee11430263fa86166f12f051e2b11d13be99ce1f0939d565cb02a8fba93ab6afed73ca7b2c0041
diff --git a/app-crypt/gpgme/files/gpgme-1.1.8-et_EE.patch b/app-crypt/gpgme/files/gpgme-1.1.8-et_EE.patch
new file mode 100644
index 000000000000..dc921eec4056
--- /dev/null
+++ b/app-crypt/gpgme/files/gpgme-1.1.8-et_EE.patch
@@ -0,0 +1,11 @@
+--- ./gpgme-1.1.8/src/gpgme-config.in.orig 2009-03-08 10:25:48.000000000 +1100
++++ ./gpgme-1.1.8/src/gpgme-config.in 2009-03-08 10:35:53.000000000 +1100
+@@ -64,7 +64,7 @@
+ while test $# -gt 0; do
+ case "$1" in
+ -*=*)
+- optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'`
++ optarg=`echo "$1" | sed 's/[-_[:alnum:]]*=//'`
+ ;;
+ *)
+ optarg=
diff --git a/app-crypt/gpgme/gpgme-1.5.5.ebuild b/app-crypt/gpgme/gpgme-1.5.5.ebuild
new file mode 100644
index 000000000000..a821649bb462
--- /dev/null
+++ b/app-crypt/gpgme/gpgme-1.5.5.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils libtool
+
+DESCRIPTION="GnuPG Made Easy is a library for making GnuPG easier to use"
+HOMEPAGE="http://www.gnupg.org/related_software/gpgme"
+SRC_URI="mirror://gnupg/gpgme/${P}.tar.bz2"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="1/11" # subslot = soname major version
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~x64-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="common-lisp static-libs"
+
+DEPEND="app-crypt/gnupg
+ >=dev-libs/libassuan-2.0.2
+ >=dev-libs/libgpg-error-1.11"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.1.8-et_EE.patch
+ elibtoolize
+}
+
+src_configure() {
+ econf \
+ --includedir="${EPREFIX}/usr/include/gpgme" \
+ $(use_enable static-libs static)
+}
+
+src_install() {
+ default
+ prune_libtool_files
+
+ if ! use common-lisp; then
+ rm -fr "${ED}usr/share/common-lisp"
+ fi
+}
diff --git a/app-crypt/gpgme/metadata.xml b/app-crypt/gpgme/metadata.xml
new file mode 100644
index 000000000000..780611be23d4
--- /dev/null
+++ b/app-crypt/gpgme/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <use>
+ <flag name="common-lisp">Install common-lisp files</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-crypt/gpgstats/Manifest b/app-crypt/gpgstats/Manifest
new file mode 100644
index 000000000000..efbda2052db1
--- /dev/null
+++ b/app-crypt/gpgstats/Manifest
@@ -0,0 +1 @@
+DIST gpgstats-0.5.tgz 6691 SHA256 beb3c5037b27e1edf10c47ceefaebb39c7f75b42b376a03ba3d43d2e219676d8 SHA512 273f08af37089eb43cee65fa06ff8023e1951fa4649bf208e01d6bc453e4131c11128b511c6cbd8396a7bd93722904e8930168656994e3d4d055024c3d5fb649 WHIRLPOOL be8d7a3d905ecf18a52e528d9c450c95900d1175b62ea2c6c708829f6fe230b1f67e75160049a3419c6c8933e14dfd3b33372d8913b9fa71a3f9150e7db4a63b
diff --git a/app-crypt/gpgstats/files/gpgstats-0.5-flags.patch b/app-crypt/gpgstats/files/gpgstats-0.5-flags.patch
new file mode 100644
index 000000000000..018d97390c65
--- /dev/null
+++ b/app-crypt/gpgstats/files/gpgstats-0.5-flags.patch
@@ -0,0 +1,25 @@
+--- Makefile
++++ Makefile
+@@ -1,16 +1,18 @@
+ VERSION=0.5
+
+ DEBUG=-g # -fprofile-arcs -ftest-coverage # -pg -g
+-CXXFLAGS+=-Wall -O2 -DVERSION=\"${VERSION}\" $(DEBUG) `gpgme-config --cflags`
+-CFLAGS+=${CXXFLAGS}
+-LDFLAGS=-lstdc++ `gpgme-config --libs` $(DEBUG)
++CPPFLAGS+=-DVERSION=\"${VERSION}\" -D_FILE_OFFSET_BITS=64
++FLAGS+=-Wall $(DEBUG) `gpgme-config --cflags`
++CFLAGS+=${FLAGS}
++CXXFLAGS+=${FLAGS}
++LIBS=`gpgme-config --libs`
+
+ OBJS=error.o utils.o array.o iarray.o s.o
+
+ all: gpgstats
+
+ gpgstats: $(OBJS)
+- $(CC) -Wall -W $(OBJS) $(LDFLAGS) -o gpgstats
++ $(CXX) $(LDFLAGS) -Wall -W $(OBJS) -o gpgstats $(LIBS)
+
+ install: gpgstats
+ cp gpgstats /usr/bin
diff --git a/app-crypt/gpgstats/gpgstats-0.5-r1.ebuild b/app-crypt/gpgstats/gpgstats-0.5-r1.ebuild
new file mode 100644
index 000000000000..f10306f88613
--- /dev/null
+++ b/app-crypt/gpgstats/gpgstats-0.5-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="GPGstats calculates statistics on the keys in your key-ring"
+HOMEPAGE="http://www.vanheusden.com/gpgstats/"
+SRC_URI="http://www.vanheusden.com/gpgstats/${P}.tgz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="app-crypt/gpgme"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-flags.patch"
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" DEBUG= || die "emake failed"
+}
+
+src_install() {
+ dobin gpgstats || die "dobin gpgstas failed"
+}
diff --git a/app-crypt/gpgstats/metadata.xml b/app-crypt/gpgstats/metadata.xml
new file mode 100644
index 000000000000..f08d14f4a08f
--- /dev/null
+++ b/app-crypt/gpgstats/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<maintainer>
+ <email>robbat2@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-crypt/hashalot/Manifest b/app-crypt/hashalot/Manifest
new file mode 100644
index 000000000000..83f89ed94aa7
--- /dev/null
+++ b/app-crypt/hashalot/Manifest
@@ -0,0 +1 @@
+DIST hashalot-0.3.tar.gz 80284 SHA256 6015b8e519da6d2ca49bd21a417145ff982af35e6303176fce818189fd816967 SHA512 c9ee39cefce5cc73b9a3a67b240616db9b66cde94fa351e6ebd4d13fd0f9195de9021c07d223809107e50b0a091d0d55e4caf2f71bba93f6d0da86af10632145 WHIRLPOOL 5a2323c6acea1fc6b9014824b5c644f165f510e3bb4ab7ffd870836ff5d6122f11bb52c0ddcc3e38ff3a272f8e47d306d02e549c510408682801b2b9d1597266
diff --git a/app-crypt/hashalot/hashalot-0.3-r2.ebuild b/app-crypt/hashalot/hashalot-0.3-r2.ebuild
new file mode 100644
index 000000000000..70cda643afd2
--- /dev/null
+++ b/app-crypt/hashalot/hashalot-0.3-r2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="CryptoAPI utils"
+HOMEPAGE="http://www.kerneli.org/"
+SRC_URI="http://www.paranoiacs.org/~sluskyb/hacks/hashalot/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
+IUSE=""
+
+DEPEND=""
+
+src_test() {
+ make check-TESTS || die
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "install error"
+ dodoc ChangeLog NEWS README
+}
diff --git a/app-crypt/hashalot/metadata.xml b/app-crypt/hashalot/metadata.xml
new file mode 100644
index 000000000000..96a2d586367d
--- /dev/null
+++ b/app-crypt/hashalot/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>base-system</herd>
+</pkgmetadata>
diff --git a/app-crypt/hashcat-bin/Manifest b/app-crypt/hashcat-bin/Manifest
new file mode 100644
index 000000000000..cb3de87f63c7
--- /dev/null
+++ b/app-crypt/hashcat-bin/Manifest
@@ -0,0 +1,3 @@
+DIST hashcat-0.46.7z 1581813 SHA256 bf8ba2ef197199b3be156aa85fb5d085ebf5e29e76f18cf66e81830fe654e84f SHA512 e313af6e0edc27a7fbf93c89eda862579868b80c36b4c0237991321ebe55ca0bc5b62afe35eba7852212e97c28c5a07d73929a2a503a683bf3f2c9e8a6891a82 WHIRLPOOL 766b69a34e6ffbed22c1e23d0c1bb2a4073c431c9e5dfd6a640691d021d298e6a3de8a778eab6fd7a666f626feb1bea85a7fbf37ec88868dd21045732190ef9a
+DIST hashcat-0.47.7z 1651995 SHA256 239acb25b88d529314f2f98af0d6a66772e886c9efbb4ed2b94b7587c9a68455 SHA512 a43b3534fdb6fbe6bcb49d48430f13e77c7ead33da2dad281fd84aa8f0f7be28e30f938339f59a37d690deb7167d6d5ad9d29d987feb9528006483136642c934 WHIRLPOOL 75d0d3c9a26358a872c08e48fd24ea29c8bf85ce36e7cd6d04135e2a4ed6ab82f4df59a3855b84318784a12ff73775b30f82112c0840dd7f4dcd9ca168932b10
+DIST hashcat-0.49.7z 2423049 SHA256 02ca88393ecf33aaa0905592ca71e90671338c9540f212b3ad0f4666a93b406d SHA512 3e51a803c87de4f659ad3f72337234392140cd714a40eb221cb7697aa6f8df4da92ed7a7852deae5fdf36439c46fe4eaa312ed45a72dedbf13eaa6d9767e95bb WHIRLPOOL 5cbf4b4bca8371a47c5349a0e4ab825e7401a2363558eeeea9942d0652b133cc9fc11229e6ea676fbd6a179864abadfdfa5bb16a4fb9387ea74111d3ccda4bff
diff --git a/app-crypt/hashcat-bin/hashcat-bin-0.46.ebuild b/app-crypt/hashcat-bin/hashcat-bin-0.46.ebuild
new file mode 100644
index 000000000000..c865dff93d8d
--- /dev/null
+++ b/app-crypt/hashcat-bin/hashcat-bin-0.46.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+MY_P="hashcat-${PV}"
+
+inherit eutils pax-utils
+DESCRIPTION="An multi-threaded multihash cracker"
+HOMEPAGE="http://hashcat.net/hashcat/"
+
+SRC_URI="http://hashcat.net/files/${MY_P}.7z"
+
+#license applies to this version per http://hashcat.net/forum/thread-1348.html
+LICENSE="hashcat"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~amd64-linux ~x64-macos ~x86 ~x86-linux"
+
+IUSE=""
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ app-arch/p7zip"
+
+S="${WORKDIR}/${MY_P}"
+
+RESTRICT="strip"
+QA_PREBUILT="opt/${PN}/hashcat-cli*.bin
+ opt/${PN}/hashcat-cli64.app"
+
+has_xop() {
+ echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep -q "#define __XOP__ 1"
+}
+
+has_avx() {
+ echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep -q "#define __AVX__ 1"
+}
+
+src_install() {
+ dodoc docs/*
+ rm -r *.exe docs || die
+ use x86 || { rm hashcat-cli32.bin || die; }
+ use amd64 || { rm hashcat-cli64.bin || die; }
+ use x64-macos || { rm hashcat-cli64.app || die; }
+ has_avx || { rm hashcat-cliAVX.bin || die; }
+ has_xop || { rm hashcat-cliXOP.bin || die; }
+
+ #I assume this is needed but I didn't check
+ pax-mark m hashcat-cli*.bin
+
+ insinto /opt/${PN}
+ doins -r "${S}"/*
+
+ dodir /opt/bin
+ if [ -f "${ED}"/opt/${PN}/hashcat-cli32.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cli32.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cli32.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cli32.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cli32.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cli32.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cli64.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cli64.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cli64.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cli64.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cli64.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cli64.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cliAVX.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cliAVX.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cliAVX.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cliAVX.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cliAVX.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cliAVX.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cliXOP.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cliXOP.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cliXOP.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cliXOP.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cliXOP.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cliXOP.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cli64.app ]
+ then
+ fperms +x /opt/${PN}/hashcat-cli64.app
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cli64.app
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cli64.app is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cli64.app \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cli64.app
+ fi
+}
diff --git a/app-crypt/hashcat-bin/hashcat-bin-0.47.ebuild b/app-crypt/hashcat-bin/hashcat-bin-0.47.ebuild
new file mode 100644
index 000000000000..c69a1a039317
--- /dev/null
+++ b/app-crypt/hashcat-bin/hashcat-bin-0.47.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+MY_P="hashcat-${PV}"
+
+inherit eutils pax-utils
+DESCRIPTION="An multi-threaded multihash cracker"
+HOMEPAGE="http://hashcat.net/hashcat/"
+
+SRC_URI="http://hashcat.net/files/${MY_P}.7z"
+
+#license applies to this version per http://hashcat.net/forum/thread-1348.html
+LICENSE="hashcat"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~amd64-linux ~x64-macos ~x86 ~x86-linux"
+
+IUSE=""
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ app-arch/p7zip"
+
+S="${WORKDIR}/${MY_P}"
+
+RESTRICT="strip"
+QA_PREBUILT="opt/${PN}/hashcat-cli*.bin
+ opt/${PN}/hashcat-cli64.app"
+
+has_xop() {
+ echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep -q "#define __XOP__ 1"
+}
+
+has_avx() {
+ echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep -q "#define __AVX__ 1"
+}
+
+src_install() {
+ dodoc docs/*
+ rm -r *.exe docs || die
+ use x86 || { rm hashcat-cli32.bin || die; }
+ use amd64 || { rm hashcat-cli64.bin || die; }
+ use x64-macos || { rm hashcat-cli64.app || die; }
+ has_avx || { rm hashcat-cliAVX.bin || die; }
+ has_xop || { rm hashcat-cliXOP.bin || die; }
+
+ #I assume this is needed but I didn't check
+ pax-mark m hashcat-cli*.bin
+
+ insinto /opt/${PN}
+ doins -r "${S}"/*
+
+ dodir /opt/bin
+ if [ -f "${ED}"/opt/${PN}/hashcat-cli32.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cli32.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cli32.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cli32.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cli32.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cli32.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cli64.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cli64.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cli64.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cli64.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cli64.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cli64.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cliAVX.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cliAVX.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cliAVX.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cliAVX.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cliAVX.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cliAVX.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cliXOP.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cliXOP.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cliXOP.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cliXOP.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cliXOP.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cliXOP.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cli64.app ]
+ then
+ fperms +x /opt/${PN}/hashcat-cli64.app
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cli64.app
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cli64.app is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cli64.app \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cli64.app
+ fi
+}
diff --git a/app-crypt/hashcat-bin/hashcat-bin-0.49.ebuild b/app-crypt/hashcat-bin/hashcat-bin-0.49.ebuild
new file mode 100644
index 000000000000..0e505aba9bb8
--- /dev/null
+++ b/app-crypt/hashcat-bin/hashcat-bin-0.49.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+MY_P="hashcat-${PV}"
+
+inherit eutils pax-utils
+DESCRIPTION="An multi-threaded multihash cracker"
+HOMEPAGE="http://hashcat.net/hashcat/"
+
+SRC_URI="http://hashcat.net/files/${MY_P}.7z"
+
+#license applies to this version per http://hashcat.net/forum/thread-1348.html
+LICENSE="hashcat"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~amd64-linux ~x64-macos ~x86 ~x86-linux"
+
+IUSE=""
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ app-arch/p7zip"
+
+S="${WORKDIR}/${MY_P}"
+
+RESTRICT="strip"
+QA_PREBUILT="opt/${PN}/hashcat-cli*.bin
+ opt/${PN}/hashcat-cli64.app"
+
+has_xop() {
+ echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep -q "#define __XOP__ 1"
+}
+
+has_avx() {
+ echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep -q "#define __AVX__ 1"
+}
+
+src_install() {
+ dodoc docs/*
+ rm -r *.exe docs || die
+ use x86 || { rm hashcat-cli32.bin || die; }
+ use amd64 || { rm hashcat-cli64.bin || die; }
+ use x64-macos || { rm hashcat-cli64.app || die; }
+ has_avx || { rm hashcat-cliAVX.bin || die; }
+ has_xop || { rm hashcat-cliXOP.bin || die; }
+
+ #I assume this is needed but I didn't check
+ pax-mark m hashcat-cli*.bin
+
+ insinto /opt/${PN}
+ doins -r "${S}"/*
+
+ dodir /opt/bin
+ if [ -f "${ED}"/opt/${PN}/hashcat-cli32.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cli32.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cli32.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cli32.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cli32.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cli32.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cli64.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cli64.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cli64.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cli64.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cli64.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cli64.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cliAVX.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cliAVX.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cliAVX.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cliAVX.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cliAVX.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cliAVX.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cliXOP.bin ]
+ then
+ fperms +x /opt/${PN}/hashcat-cliXOP.bin
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cliXOP.bin
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cliXOP.bin is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cliXOP.bin \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cliXOP.bin
+ fi
+ if [ -f "${ED}"/opt/${PN}/hashcat-cli64.app ]
+ then
+ fperms +x /opt/${PN}/hashcat-cli64.app
+ cat <<-EOF > "${ED}"/opt/bin/hashcat-cli64.app
+ #! /bin/sh
+ cd "${EPREFIX}"/opt/${PN}
+ echo "Warning: hashcat-cli64.app is running from ${EPREFIX}/opt/${PN} so be careful of relative paths."
+ exec ./hashcat-cli64.app \$@
+ EOF
+ fperms +x /opt/bin/hashcat-cli64.app
+ fi
+}
diff --git a/app-crypt/hashcat-bin/metadata.xml b/app-crypt/hashcat-bin/metadata.xml
new file mode 100644
index 000000000000..88e9eb110229
--- /dev/null
+++ b/app-crypt/hashcat-bin/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<maintainer>
+<email>zerochaos@gentoo.org</email>
+<name>Rick Farina</name>
+</maintainer>
+</pkgmetadata>
+
diff --git a/app-crypt/hashcat-gui/Manifest b/app-crypt/hashcat-gui/Manifest
new file mode 100644
index 000000000000..b4af8931cac5
--- /dev/null
+++ b/app-crypt/hashcat-gui/Manifest
@@ -0,0 +1 @@
+DIST hashcat-gui-0.5.1.zip 130106 SHA256 d8294724ce6ea5980ba98f43e44be6dd706c0bffc56128d2cd0db3c71aedd0d3 SHA512 c9162aa812c31713e3b7cf844d1d80c894db551b0e92483da0f02bc0f1a0a85e9ca17396f756caf0da1a1bf1bda1c77d97bdcc6758b6348567f1b39c4eb2f688 WHIRLPOOL 021369adcebc7bbcb99a9b3411ff046d14a62878ad83fe97aa1e3b1c49bf37c98645bc65206901a6af0de0efcebe350e988552b97bc4cd4c515d1b625a65496f
diff --git a/app-crypt/hashcat-gui/hashcat-gui-0.5.1.ebuild b/app-crypt/hashcat-gui/hashcat-gui-0.5.1.ebuild
new file mode 100644
index 000000000000..eb3709065450
--- /dev/null
+++ b/app-crypt/hashcat-gui/hashcat-gui-0.5.1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit qt4-r2
+
+DESCRIPTION="A gui for the *hashcat* suite of tools"
+HOMEPAGE="https://github.com/scandium/hashcat-gui"
+
+SRC_URI="mirror://github/scandium/hashcat-gui/zipball/b6b01be723742ad89ba31fdb2c30b35306318f8b -> ${P}.zip"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="cuda opencl"
+
+RDEPEND="app-crypt/hashcat-bin
+ cuda? ( app-crypt/oclhashcat-plus-bin
+ app-crypt/oclhashcat-lite-bin )
+ opencl? ( app-crypt/oclhashcat-plus-bin
+ app-crypt/oclhashcat-lite-bin )
+ dev-qt/qtgui:4
+ dev-qt/qtcore:4"
+
+DEPEND="dev-qt/qtgui:4
+ dev-qt/qtcore:4
+ app-arch/unzip"
+
+S="${WORKDIR}"/scandium-hashcat-gui-b6b01be/src
+
+src_prepare() {
+ sed -i 's#./hashcat#/opt/hashcat-bin#g' mainwindow.cpp || die
+ sed -i 's#./oclHashcat-plus#/opt/oclhashcat-plus-bin#g' mainwindow.cpp || die
+ sed -i 's#./oclHashcat-lite#/opt/oclhashcat-lite-bin#g' mainwindow.cpp || die
+}
+
+src_install() {
+ dobin hashcat-gui
+ cd "${WORKDIR}"/scandium-hashcat-gui-b6b01be || die
+ dodoc ChangeLog FAQ INSTALL README TODO
+}
diff --git a/app-crypt/hashcat-gui/metadata.xml b/app-crypt/hashcat-gui/metadata.xml
new file mode 100644
index 000000000000..0c85d8488350
--- /dev/null
+++ b/app-crypt/hashcat-gui/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <maintainer>
+ <email>zerochaos@gentoo.org</email>
+ <name>Rick Farina</name>
+ </maintainer>
+ <use>
+ <flag name="cuda">Install oclhashcat-{plus,lite}-bin to take advantage of hardware cuda support.</flag>
+ <flag name="opencl">Install oclhashcat-{plus,lite}-bin to take advantage of hardware opencl support.</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">scandium/hashcat-gui</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/heimdal/Manifest b/app-crypt/heimdal/Manifest
new file mode 100644
index 000000000000..e8322ee8ca31
--- /dev/null
+++ b/app-crypt/heimdal/Manifest
@@ -0,0 +1 @@
+DIST heimdal-1.5.3.tar.gz 6798305 SHA256 aac27bedb33c341b6aed202af07ccc816146a893148721f8123abbbf93bbfea5 SHA512 5c7890f60d6fe6b5034fca204eb7cdb33fdc397fe09b169212b6267310b83bb0b3b06a4c2888841be34c92cbd701bd95734b4019c33c147459c4a449861c4431 WHIRLPOOL 8202b1bdf76e84b4a0fea1aa89935dfb3fbcceca38c84ffb3e3e8454691398c9a7cecfad40c6661426be5e82f4e3f43b6d6494cf287900ff958e06603b602e19
diff --git a/app-crypt/heimdal/files/heimdal-kadmind.confd b/app-crypt/heimdal/files/heimdal-kadmind.confd
new file mode 100644
index 000000000000..5d75504a1402
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal-kadmind.confd
@@ -0,0 +1,5 @@
+# /etc/conf.d/heimdal-kadmind
+
+# Options to pass to the kadmind daemon. Please see man 8 kadmind for details.
+#
+# OPTIONS="--keytab=/etc/krb5.keytab"
diff --git a/app-crypt/heimdal/files/heimdal-kadmind.initd-r2 b/app-crypt/heimdal/files/heimdal-kadmind.initd-r2
new file mode 100644
index 000000000000..18d59709712d
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal-kadmind.initd-r2
@@ -0,0 +1,23 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+ use net heimdal-kdc
+ after logger
+}
+
+start() {
+ ebegin "Starting Heimdal kadmind"
+ /usr/sbin/kadmind "${OPTIONS}" &
+ echo $! > /var/run/heimdal-kadmind.pid
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping Heimdal kadmind"
+ start-stop-daemon --stop --quiet --exec \
+ /usr/sbin/kadmind
+ eend $?
+}
diff --git a/app-crypt/heimdal/files/heimdal-kcm.confd b/app-crypt/heimdal/files/heimdal-kcm.confd
new file mode 100644
index 000000000000..8c156aa9b677
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal-kcm.confd
@@ -0,0 +1,5 @@
+# /etc/conf.d/heimdal-kcm
+
+# Options to pass to the kcm daemon. Please see man 8 kcm for details
+#
+# OPTIONS="-c /etc/krb5.conf"
diff --git a/app-crypt/heimdal/files/heimdal-kcm.initd-r1 b/app-crypt/heimdal/files/heimdal-kcm.initd-r1
new file mode 100644
index 000000000000..d35872a549bf
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal-kcm.initd-r1
@@ -0,0 +1,22 @@
+#!/sbin/runscript
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+ after heimdal-kdc
+}
+
+OPTIONS="${OPTIONS} --detach"
+
+start() {
+ ebegin "Starting Heimdal KCM..."
+ start-stop-daemon --start --pidfile /var/run/kcm.pid --exec /usr/sbin/kcm -- ${OPTIONS# }
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping Heimdal KCM..."
+ start-stop-daemon --stop --pidfile /var/run/kcm.pid --retry SIGKILL/5
+ eend $?
+}
diff --git a/app-crypt/heimdal/files/heimdal-kdc.confd b/app-crypt/heimdal/files/heimdal-kdc.confd
new file mode 100644
index 000000000000..d33f663feccd
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal-kdc.confd
@@ -0,0 +1,5 @@
+# /etc/conf.d/heimdal-kdc
+
+# Options to pass to the kdc daemon. Please see man 8 kdc for details
+#
+# OPTIONS="-c /etc/krb5.conf"
diff --git a/app-crypt/heimdal/files/heimdal-kdc.initd-r2 b/app-crypt/heimdal/files/heimdal-kdc.initd-r2
new file mode 100644
index 000000000000..cd04821c0827
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal-kdc.initd-r2
@@ -0,0 +1,25 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+ use net
+ after logger
+}
+
+OPTIONS="${OPTIONS} --detach"
+
+start() {
+ ebegin "Starting Heimdal kdc"
+ start-stop-daemon --start --quiet --exec \
+ /usr/sbin/kdc -- ${OPTIONS# }
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping Heimdal kdc"
+ start-stop-daemon --stop --quiet --exec \
+ /usr/sbin/kdc
+ eend $?
+}
diff --git a/app-crypt/heimdal/files/heimdal-kpasswdd.confd b/app-crypt/heimdal/files/heimdal-kpasswdd.confd
new file mode 100644
index 000000000000..7a3e808a9715
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal-kpasswdd.confd
@@ -0,0 +1,5 @@
+# /etc/conf.d/heimdal-kpasswdd
+
+# Options to pass to the kpasswdd daemon. Please see man 8 kpasswdd for details.
+#
+# OPTIONS="-k /etc/krb5.keytab"
diff --git a/app-crypt/heimdal/files/heimdal-kpasswdd.initd-r2 b/app-crypt/heimdal/files/heimdal-kpasswdd.initd-r2
new file mode 100644
index 000000000000..2c66ab9fced2
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal-kpasswdd.initd-r2
@@ -0,0 +1,23 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+ use net heimdal-kdc
+ after logger
+}
+
+start() {
+ ebegin "Starting Heimdal kpasswdd"
+ start-stop-daemon --background --start --quiet --exec \
+ /usr/sbin/kpasswdd -- "${OPTIONS}"
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping Heimdal kpasswdd"
+ start-stop-daemon --stop --quiet --exec \
+ /usr/sbin/kpasswdd
+ eend $?
+}
diff --git a/app-crypt/heimdal/files/heimdal_db6.patch b/app-crypt/heimdal/files/heimdal_db6.patch
new file mode 100644
index 000000000000..316cf1533791
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal_db6.patch
@@ -0,0 +1,41 @@
+--- a/cf/db.m4
++++ b/cf/db.m4
+@@ -51,6 +51,8 @@ dnl db_create is used by db3 and db4 and db5
+ #include <stdio.h>
+ #ifdef HAVE_DBHEADER
+ #include <$dbheader/db.h>
++ #elif HAVE_DB6_DB_H
++ #include <db6/db.h>
+ #elif HAVE_DB5_DB_H
+ #include <db5/db.h>
+ #elif HAVE_DB4_DB_H
+--- a/lib/hdb/db3.c
++++ b/lib/hdb/db3.c
+@@ -276,7 +276,7 @@
+ }
+ db->hdb_db = d;
+
+-#if (DB_VERSION_MAJOR >= 4) && (DB_VERSION_MINOR >= 1)
++#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1))
+ ret = (*d->open)(db->hdb_db, NULL, fn, NULL, DB_BTREE, myflags, mode);
+ #else
+ ret = (*d->open)(db->hdb_db, fn, NULL, DB_BTREE, myflags, mode);
+@@ -284,7 +284,7 @@
+
+ if (ret == ENOENT) {
+ /* try to open without .db extension */
+-#if (DB_VERSION_MAJOR >= 4) && (DB_VERSION_MINOR >= 1)
++#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1))
+ ret = (*d->open)(db->hdb_db, NULL, db->hdb_name, NULL, DB_BTREE,
+ myflags, mode);
+ #else
+--- a/cf/db.m4
++++ b/cf/db.m4
+@@ -38,6 +38,7 @@ AS_IF([test "x$with_berkeley_db" != xno],
+ fi
+ ])],
+ [AC_CHECK_HEADERS([ \
++ db6/db.h \
+ db5/db.h \
+ db4/db.h \
+ db3/db.h \
diff --git a/app-crypt/heimdal/files/heimdal_disable-check-iprop.patch b/app-crypt/heimdal/files/heimdal_disable-check-iprop.patch
new file mode 100644
index 000000000000..703fc7c94d46
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal_disable-check-iprop.patch
@@ -0,0 +1,16 @@
+diff --git a/tests/kdc/check-iprop.in b/tests/kdc/check-iprop.in
+index ba9aff1..0bea2ed 100644
+--- a/tests/kdc/check-iprop.in
++++ b/tests/kdc/check-iprop.in
+@@ -31,6 +31,11 @@
+ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ # SUCH DAMAGE.
+
++# check-iprop is known to fail and there is no easy way out
++# http://article.gmane.org/gmane.comp.encryption.kerberos.heimdal.general/5408
++# http://article.gmane.org/gmane.comp.encryption.kerberos.heimdal.general/5409
++exit 77
++
+ top_builddir="@top_builddir@"
+ env_setup="@env_setup@"
+ objdir="@objdir@"
diff --git a/app-crypt/heimdal/files/heimdal_link_order.patch b/app-crypt/heimdal/files/heimdal_link_order.patch
new file mode 100644
index 000000000000..fdf6a0af9bc9
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal_link_order.patch
@@ -0,0 +1,41 @@
+--- kadmin/Makefile.am.orig 2010-11-25 12:39:31.000000000 +0000
++++ kadmin/Makefile.am 2011-02-14 21:37:29.000000000 +0000
+@@ -64,10 +64,10 @@
+ $(top_builddir)/lib/krb5/libkrb5.la \
+ $(LIB_hcrypto) \
+ $(top_builddir)/lib/asn1/libasn1.la \
+- $(LIB_roken) \
+ $(DBLIB)
+
+ kadmind_LDADD = $(top_builddir)/lib/kadm5/libkadm5srv.la \
++ $(LIB_roken) \
+ ../lib/gssapi/libgssapi.la \
+ $(LDADD_common) \
+ $(LIB_pidfile) \
+@@ -78,12 +78,14 @@
+ $(top_builddir)/lib/kadm5/libkadm5srv.la \
+ $(top_builddir)/lib/sl/libsl.la \
+ $(LIB_readline) \
++ $(LIB_roken) \
+ $(LDADD_common) \
+ $(LIB_dlopen)
+
+ add_random_users_LDADD = \
+ $(top_builddir)/lib/kadm5/libkadm5clnt.la \
+ $(top_builddir)/lib/kadm5/libkadm5srv.la \
++ $(LIB_roken) \
+ $(LDADD_common) \
+ $(LIB_dlopen)
+
+--- tests/plugin/check-pac.in.orig 2010-11-25 12:39:31.000000000 +0000
++++ tests/plugin/check-pac.in 2011-02-16 13:24:50.000000000 +0000
+@@ -62,7 +62,8 @@
+ test_apreq="${TESTS_ENVIRONMENT} ../../lib/krb5/test_ap-req"
+
+ KRB5_CONFIG="${objdir}/krb5.conf"
+-export KRB5_CONFIG
++LD_PRELOAD="../../lib/roken/.libs/libroken.so"
++export KRB5_CONFIG LD_PRELOAD
+
+ rm -f ${keytabfile}
+ rm -f current-db*
diff --git a/app-crypt/heimdal/files/heimdal_missing-include.patch b/app-crypt/heimdal/files/heimdal_missing-include.patch
new file mode 100644
index 000000000000..e245cf8fff07
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal_missing-include.patch
@@ -0,0 +1,11 @@
+--- base/test_base.c 2011-09-30 15:58:45.000000000 +0300
++++ base/test_base.c 2011-12-27 23:04:50.482955923 +0200
+@@ -39,6 +39,8 @@
+ #include "heimbase.h"
+ #include "heimbasepriv.h"
+
++#include <stdlib.h>
++
+ static void
+ memory_free(heim_object_t obj)
+ {
diff --git a/app-crypt/heimdal/files/heimdal_missing_symbols.patch b/app-crypt/heimdal/files/heimdal_missing_symbols.patch
new file mode 100644
index 000000000000..aa915fb130dd
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal_missing_symbols.patch
@@ -0,0 +1,28 @@
+Add missing symbols. Cherry picked from upstream master.
+Bug #420821.
+
+--- a/lib/krb5/version-script.map 2012-01-10 21:53:51.000000000 +0000
++++ b/lib/krb5/version-script.map 2012-06-13 16:23:26.000000000 +0000
+@@ -42,6 +42,7 @@
+ krb5_auth_con_getrcache;
+ krb5_auth_con_getremoteseqnumber;
+ krb5_auth_con_getremotesubkey;
++ krb5_auth_con_getsendsubkey;
+ krb5_auth_con_init;
+ krb5_auth_con_removeflags;
+ krb5_auth_con_setaddrs;
+@@ -383,6 +384,14 @@
+ krb5_h_errno_to_heim_errno;
+ krb5_have_error_string;
+ krb5_hmac;
++ krb5_init_creds_init;
++ krb5_init_creds_set_service;
++ krb5_init_creds_set_keytab;
++ krb5_init_creds_get;
++ krb5_init_creds_set_password;
++ krb5_init_creds_free;
++ krb5_init_creds_get_creds;
++ krb5_init_creds_get_error;
+ krb5_init_context;
+ krb5_init_ets;
+ krb5_initlog;
diff --git a/app-crypt/heimdal/files/heimdal_texinfo-5.patch b/app-crypt/heimdal/files/heimdal_texinfo-5.patch
new file mode 100644
index 000000000000..b16a90cefdb0
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal_texinfo-5.patch
@@ -0,0 +1,28 @@
+--- a/doc/whatis.texi
++++ b/doc/whatis.texi
+@@ -35,10 +35,11 @@ services can authenticate each other.
+ @end macro
+ @end ifinfo
+
+-@tex
+-@def@xsub#1{$_{#1}$}
+-@global@let@sub=@xsub
+-@end tex
++@iftex
++@macro sub{arg}
++@textsubscript{\arg\}
++@end macro
++@end iftex
+
+ @ifhtml
+ @macro sub{arg}
+--- a/doc/win2k.texi
++++ b/doc/win2k.texi
+@@ -311,4 +311,5 @@ Other useful programs include these:
+
+ @itemize @bullet
+ @item pwdump2
+-@uref{http://www.bindview.com/Support/RAZOR/Utilities/Windows/pwdump2_readme.cfm}@end itemize
++@uref{http://www.bindview.com/Support/RAZOR/Utilities/Windows/pwdump2_readme.cfm}
++@end itemize
+
diff --git a/app-crypt/heimdal/files/heimdal_tinfo.patch b/app-crypt/heimdal/files/heimdal_tinfo.patch
new file mode 100644
index 000000000000..010a9037c7e6
--- /dev/null
+++ b/app-crypt/heimdal/files/heimdal_tinfo.patch
@@ -0,0 +1,22 @@
+--- heimdal-1.5/configure.ac.orig 2011-08-01 12:49:33.554689000 +0200
++++ heimdal-1.5/configure.ac 2011-08-01 13:54:12.707009421 +0200
+@@ -444,7 +444,7 @@
+ #endif
+ ],[0,0,0,0,0])
+
+-AC_FIND_FUNC_NO_LIBS(tgetent, termcap ncurses curses,[
++AC_FIND_FUNC_NO_LIBS(tgetent, tinfo ncurses curses termcap,[
+ #ifdef HAVE_TERMCAP_H
+ #include <termcap.h>
+ #endif
+--- heimdal-1.5/lib/libedit/configure.ac~ 2011-07-30 22:43:29.000000000 +0200
++++ heimdal-1.5/lib/libedit/configure.ac 2011-08-01 13:54:30.657009419 +0200
+@@ -33,7 +33,7 @@
+ EL_MANTYPE
+
+
+-AC_CHECK_LIB(curses, tgetent,,
++AC_CHECK_LIB(tinfo, tgetent,,
+ [AC_CHECK_LIB(ncurses, tgetent,,
+ [AC_MSG_ERROR([libcurses or libncurses are required!])] )] )
+
diff --git a/app-crypt/heimdal/files/krb5.conf b/app-crypt/heimdal/files/krb5.conf
new file mode 100644
index 000000000000..906eb4d087d0
--- /dev/null
+++ b/app-crypt/heimdal/files/krb5.conf
@@ -0,0 +1,27 @@
+[libdefaults]
+ default_realm = MY.REALM
+# clockskew = 300
+# v4_instance_resolve = false
+# v4_name_convert = {
+# host = {
+# rcmd = host
+# ftp = ftp
+# }
+# plain = {
+# something = something-else
+# }
+# }
+
+[realms]
+ MY.REALM = {
+ kdc = MY.COMPUTER
+ }
+# OTHER.REALM = {
+# v4_instance_convert = {
+# kerberos = kerberos
+# computer = computer.some.other.domain
+# }
+# }
+
+[domain_realm]
+ .my.domain = MY.REALM
diff --git a/app-crypt/heimdal/heimdal-1.5.3-r2.ebuild b/app-crypt/heimdal/heimdal-1.5.3-r2.ebuild
new file mode 100644
index 000000000000..21853f9d4959
--- /dev/null
+++ b/app-crypt/heimdal/heimdal-1.5.3-r2.ebuild
@@ -0,0 +1,194 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+VIRTUALX_REQUIRED="manual"
+
+inherit autotools db-use eutils multilib multilib-minimal python-any-r1 toolchain-funcs virtualx flag-o-matic
+
+MY_P="${P}"
+DESCRIPTION="Kerberos 5 implementation from KTH"
+HOMEPAGE="http://www.h5l.org/"
+SRC_URI="http://www.h5l.org/dist/src/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd"
+IUSE="afs +berkdb caps hdb-ldap ipv6 otp +pkinit selinux ssl static-libs threads test X"
+
+CDEPEND="ssl? ( >=dev-libs/openssl-1.0.1h-r2[${MULTILIB_USEDEP}] )
+ berkdb? ( >=sys-libs/db-4.8.30-r1[${MULTILIB_USEDEP}] )
+ !berkdb? ( >=sys-libs/gdbm-1.10-r1[${MULTILIB_USEDEP}] )
+ caps? ( sys-libs/libcap-ng )
+ >=dev-db/sqlite-3.8.2[${MULTILIB_USEDEP}]
+ >=sys-libs/e2fsprogs-libs-1.42.9[${MULTILIB_USEDEP}]
+ sys-libs/ncurses
+ >=sys-libs/readline-6.2_p5-r1[${MULTILIB_USEDEP}]
+ afs? ( net-fs/openafs )
+ hdb-ldap? ( >=net-nds/openldap-2.3.0 )
+ X? ( x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libXt )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508-r1
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )
+ !!app-crypt/mit-krb5
+ !!app-crypt/mit-krb5-appl"
+
+DEPEND="${CDEPEND}
+ ${PYTHON_DEPS}
+ >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+ >=sys-devel/autoconf-2.62
+ test? ( X? ( ${VIRTUALX_DEPEND} ) )"
+
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-kerberos )"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/krb5-types.h
+ /usr/include/cms_asn1.h
+ /usr/include/digest_asn1.h
+ /usr/include/hdb_asn1.h
+ /usr/include/krb5_asn1.h
+ /usr/include/pkcs12_asn1.h
+ /usr/include/pkinit_asn1.h
+ /usr/include/rfc2459_asn1.h
+)
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/krb5-config
+)
+
+src_prepare() {
+ epatch "${FILESDIR}/heimdal_missing-include.patch"
+ epatch "${FILESDIR}/heimdal_db6.patch"
+ epatch "${FILESDIR}/heimdal_disable-check-iprop.patch"
+ epatch "${FILESDIR}/heimdal_link_order.patch"
+ epatch "${FILESDIR}/heimdal_missing_symbols.patch"
+ epatch "${FILESDIR}/heimdal_texinfo-5.patch"
+ epatch "${FILESDIR}/heimdal_tinfo.patch"
+ eautoreconf
+}
+
+src_configure() {
+ # QA
+ append-flags -fno-strict-aliasing
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=()
+ if use berkdb; then
+ myconf+=(
+ --with-berkeley-db
+ --with-berkeley-db-include="$(db_includedir)"
+ )
+ else
+ myconf+=(
+ --without-berkeley-db
+ )
+ fi
+
+ ECONF_SOURCE=${S} \
+ econf \
+ --enable-kcm \
+ --disable-osfc2 \
+ --enable-shared \
+ --with-libintl=/usr \
+ --with-readline=/usr \
+ --with-sqlite3=/usr \
+ --libexecdir=/usr/sbin \
+ $(use_enable afs afs-support) \
+ $(use_enable otp) \
+ $(use_enable pkinit kx509) \
+ $(use_enable pkinit pk-init) \
+ $(use_enable static-libs static) \
+ $(use_enable threads pthread-support) \
+ $(multilib_native_use_with caps capng) \
+ $(multilib_native_use_with hdb-ldap openldap /usr) \
+ $(use_with ipv6) \
+ $(use_with ssl openssl /usr) \
+ $(multilib_native_use_with X x) \
+ "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ emake -j1
+ else
+ emake -C include -j1
+ emake -C base -j1
+ emake -C lib -j1
+ emake -C kdc -j1
+ emake -C tools -j1
+ emake -C tests/plugin -j1
+ fi
+}
+
+multilib_src_test() {
+ multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ INSTALL_CATPAGES="no" emake DESTDIR="${D}" install
+ else
+ emake -C include DESTDIR="${D}" install
+ emake -C base DESTDIR="${D}" install
+ emake -C lib DESTDIR="${D}" install
+ emake -C kdc DESTDIR="${D}" install
+ emake -C tools DESTDIR="${D}" install
+ emake -C tests/plugin DESTDIR="${D}" install
+ fi
+}
+
+multilib_src_install_all() {
+ dodoc ChangeLog README NEWS TODO
+
+ # Begin client rename and install
+ for i in {telnetd,ftpd,rshd,popper}
+ do
+ mv "${D}"/usr/share/man/man8/{,k}${i}.8
+ mv "${D}"/usr/sbin/{,k}${i}
+ done
+
+ for i in {rcp,rsh,telnet,ftp,su,login,pagsh,kf}
+ do
+ mv "${D}"/usr/share/man/man1/{,k}${i}.1
+ mv "${D}"/usr/bin/{,k}${i}
+ done
+
+ mv "${D}"/usr/share/man/man5/{,k}ftpusers.5
+ mv "${D}"/usr/share/man/man5/{,k}login.access.5
+
+ newinitd "${FILESDIR}"/heimdal-kdc.initd-r2 heimdal-kdc
+ newinitd "${FILESDIR}"/heimdal-kadmind.initd-r2 heimdal-kadmind
+ newinitd "${FILESDIR}"/heimdal-kpasswdd.initd-r2 heimdal-kpasswdd
+ newinitd "${FILESDIR}"/heimdal-kcm.initd-r1 heimdal-kcm
+
+ newconfd "${FILESDIR}"/heimdal-kdc.confd heimdal-kdc
+ newconfd "${FILESDIR}"/heimdal-kadmind.confd heimdal-kadmind
+ newconfd "${FILESDIR}"/heimdal-kpasswdd.confd heimdal-kpasswdd
+ newconfd "${FILESDIR}"/heimdal-kcm.confd heimdal-kcm
+
+ insinto /etc
+ newins "${FILESDIR}"/krb5.conf krb5.conf.example
+
+ if use hdb-ldap; then
+ insinto /etc/openldap/schema
+ doins "${S}/lib/hdb/hdb.schema"
+ fi
+
+ prune_libtool_files
+
+ # default database dir
+ keepdir /var/heimdal
+
+ # Ugly hack for broken symlink - bug #417081
+ rm "${D}"/usr/share/man/man5/qop.5 || die
+ dosym mech.5 /usr/share/man/man5/qop.5
+}
diff --git a/app-crypt/heimdal/metadata.xml b/app-crypt/heimdal/metadata.xml
new file mode 100644
index 000000000000..4fcd8e4919c8
--- /dev/null
+++ b/app-crypt/heimdal/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>kerberos</herd>
+<longdescription>Kerberos 5 implementation from KTH</longdescription>
+<use>
+ <flag name='otp'>
+ Adds support for one-time passwords
+ </flag>
+ <flag name='pkinit'>
+ Adds support for PKINIT for the initial ticket
+ </flag>
+ <flag name='hdb-ldap'>
+ Adds support for LDAP as a database backend
+ </flag>
+</use>
+</pkgmetadata>
diff --git a/app-crypt/hmaccalc/Manifest b/app-crypt/hmaccalc/Manifest
new file mode 100644
index 000000000000..a3d6cd1cdc8f
--- /dev/null
+++ b/app-crypt/hmaccalc/Manifest
@@ -0,0 +1 @@
+DIST hmaccalc-0.9.13.tar.gz 106979 SHA256 9a00b507555e45f58c1659d28f4d27e63373735a30cfe70e2c939f679cd266cc SHA512 899e95dcebf85dbb64ea543d530e3819c2dd72dfbdc1f06e7f37418f9045a8018c49ace96c6090e08b18406edc3efa196ea9fcd9b7b8d8e151f80b2eaba512c0 WHIRLPOOL 7af722b3875656113f7a7fa67a9e9bf2014b1b2873cf601f512dd361a40894fae94c667c06ec5f16291df459ea8c8d4634f828645d62eb6560350b22cd684506
diff --git a/app-crypt/hmaccalc/hmaccalc-0.9.13.ebuild b/app-crypt/hmaccalc/hmaccalc-0.9.13.ebuild
new file mode 100644
index 000000000000..1f4793401784
--- /dev/null
+++ b/app-crypt/hmaccalc/hmaccalc-0.9.13.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils multilib
+
+DESCRIPTION="Tools for computing and checking HMAC values for files"
+HOMEPAGE="https://fedorahosted.org/hmaccalc/"
+SRC_URI="https://fedorahosted.org/released/hmaccalc/hmaccalc-${PV}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+fips"
+
+DEPEND="dev-libs/nss
+ sys-devel/prelink"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ econf \
+ --enable-sum-directory=/usr/$(get_libdir)/${PN}/ \
+ $(use_enable !fips non-fips) \
+ || die "econf failed"
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die "emake install failed"
+ dodoc README
+}
diff --git a/app-crypt/hmaccalc/metadata.xml b/app-crypt/hmaccalc/metadata.xml
new file mode 100644
index 000000000000..c31b239a1d76
--- /dev/null
+++ b/app-crypt/hmaccalc/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<use>
+<flag name="fips">Enable NSS FIPS mode and support only the FIPS-compliant functions</flag>
+</use>
+<longdescription>
+hmaccalc can be used to compute HMAC (hash-based message authentication code)
+values for files. An HMAC is similar in concept to a message digest, except in
+that its calculation also incorporates a key which must be known to both the
+party generating the HMAC and the party verifying the HMAC.
+</longdescription>
+</pkgmetadata>
diff --git a/app-crypt/ima-evm-utils/Manifest b/app-crypt/ima-evm-utils/Manifest
new file mode 100644
index 000000000000..58e6011e48a5
--- /dev/null
+++ b/app-crypt/ima-evm-utils/Manifest
@@ -0,0 +1,2 @@
+DIST ima-evm-utils-0.2.tar.gz 16329 SHA256 ca8c238562c205f265ff76db7af15df90eea7335db82f6c2fe82def34315aba6 SHA512 44d5ead01d0d1241d743a8545a619308a1988f2188384571d7d37dca567598f46d1d7d8b8a6ba3fdaf5b5e980f4c8a80f1c098ec4dadf082393a727f7a266229 WHIRLPOOL db21f3cddd0f21f23605c3abed0b2ea9f864b63c7715605bdd24c0345527923d51684f57c7d0b18a6eb5590882530e2f13d52aa3d908353d3c69657b4e499a32
+DIST ima-evm-utils-0.8.tar.gz 32025 SHA256 4d9b467ba31305dd815c56ddda5969db45133c7bd14f4a5356df58ed35221cf1 SHA512 cfa90963426c9adfaa3b61e31c1b63d87407a1dfadd39d4c00f5c16b2b312d7535159c84c7f1854bb143147b5b097ef41dde22f8bba30555eecd8ed0255f3630 WHIRLPOOL 32d47f8f23d4a28ae96178ac443ce9ddff102ccfded22f06796ad23bdff375272cc3f2d4c92eb6bc2d5b9df92fde45e5af4161f20ea9eb1ebc8e0ef2c5c83005
diff --git a/app-crypt/ima-evm-utils/ima-evm-utils-0.2.ebuild b/app-crypt/ima-evm-utils/ima-evm-utils-0.2.ebuild
new file mode 100644
index 000000000000..d99d1591aa05
--- /dev/null
+++ b/app-crypt/ima-evm-utils/ima-evm-utils-0.2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils autotools
+
+DESCRIPTION="Supporting tools for IMA and EVM"
+HOMEPAGE="http://linux-ima.sourceforge.net"
+SRC_URI="mirror://sourceforge/linux-ima/${P}.tar.gz"
+
+DEPEND="sys-apps/keyutils"
+RDEPEND="${DEPEND}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ sed -i 's:pkglib_PROGRAMS:pkglibexec_PROGRAMS:g' tests/Makefile.am
+ sed -i 's:pkglib_SCRIPTS:pkglibexec_SCRIPTS:g' tests/Makefile.am
+ eautoreconf
+}
+
+src_configure() {
+ econf || die
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+}
diff --git a/app-crypt/ima-evm-utils/ima-evm-utils-0.8.ebuild b/app-crypt/ima-evm-utils/ima-evm-utils-0.8.ebuild
new file mode 100644
index 000000000000..70bd50516567
--- /dev/null
+++ b/app-crypt/ima-evm-utils/ima-evm-utils-0.8.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils autotools
+
+DESCRIPTION="Supporting tools for IMA and EVM"
+HOMEPAGE="http://linux-ima.sourceforge.net"
+SRC_URI="mirror://sourceforge/linux-ima/${P}.tar.gz"
+
+DEPEND="sys-apps/keyutils"
+RDEPEND="${DEPEND}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ sed -i 's:pkglib_PROGRAMS:pkglibexec_PROGRAMS:g' tests/Makefile.am
+ sed -i 's:pkglib_SCRIPTS:pkglibexec_SCRIPTS:g' tests/Makefile.am
+ eautoreconf
+}
+
+src_configure() {
+ econf || die
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+}
diff --git a/app-crypt/ima-evm-utils/ima-evm-utils-9999.ebuild b/app-crypt/ima-evm-utils/ima-evm-utils-9999.ebuild
new file mode 100644
index 000000000000..f46ca06ee74c
--- /dev/null
+++ b/app-crypt/ima-evm-utils/ima-evm-utils-9999.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+EGIT_REPO_URI="git://linux-ima.git.sourceforge.net/gitroot/linux-ima/ima-evm-utils.git"
+EGIT_BOOTSTRAP="autogen.sh"
+
+inherit git-2 eutils
+
+DESCRIPTION="Supporting tools for IMA and EVM"
+HOMEPAGE="http://linux-ima.sourceforge.net"
+SRC_URI=""
+
+DEPEND="sys-apps/keyutils"
+RDEPEND="${DEPEND}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE=""
diff --git a/app-crypt/ima-evm-utils/metadata.xml b/app-crypt/ima-evm-utils/metadata.xml
new file mode 100644
index 000000000000..5f04ab17905c
--- /dev/null
+++ b/app-crypt/ima-evm-utils/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>hardened</herd>
+<maintainer>
+<email>swift@gentoo.org</email>
+<name>Sven Vermeulen</name>
+<description>Maintainer</description>
+</maintainer>
+<longdescription lang="en">
+Supporting tools for IMA and EVM
+</longdescription>
+</pkgmetadata>
+
diff --git a/app-crypt/jacksum/Manifest b/app-crypt/jacksum/Manifest
new file mode 100644
index 000000000000..4261abae7294
--- /dev/null
+++ b/app-crypt/jacksum/Manifest
@@ -0,0 +1 @@
+DIST jacksum-1.7.0.zip 446595 SHA256 c6e2136b7adfc0ee78c273fdd0ddf7e2fc5741a5bdf46ff3c01aeff2bee519cf SHA512 dc3f96e39fed4f2ca3a7b41bd8a6685cf96673293ff12f3858707a2d61144d74fb89db0218ed1a04164173e2d7fa6d1b973b68ca4c138213ca7f03e03628f21b WHIRLPOOL ef9ac6f701e31f1ac5d9d485f47b03a576c53c0101d0bc2fce414e24cb186a14387eb96a6104013f913d55e7b49fa97fcd35d3e8439a64fa4cd68a9a266f2990
diff --git a/app-crypt/jacksum/jacksum-1.7.0.ebuild b/app-crypt/jacksum/jacksum-1.7.0.ebuild
new file mode 100644
index 000000000000..cba79beedac4
--- /dev/null
+++ b/app-crypt/jacksum/jacksum-1.7.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit java-pkg-2 java-ant-2
+
+DESCRIPTION="Java utility for computing and verifying checksums: CRC*, MD*, RIPEMD*, SHA*, TIGER*, WHIRLPOOL"
+HOMEPAGE="http://www.jonelo.de/java/jacksum/"
+SRC_URI="mirror://sourceforge/jacksum/${P}.zip"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+DEPEND=">=virtual/jdk-1.3.1
+ dev-java/ant-core
+ app-arch/unzip"
+RDEPEND=">=virtual/jre-1.3.1"
+
+S="${WORKDIR}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ unzip -qq source/${PN}-src.zip || die "failed to unpack source"
+ rm *.jar
+}
+
+src_install() {
+ java-pkg_dojar ${PN}.jar
+ dodoc history.txt readme.txt help/${PN}/*
+
+ java-pkg_dolauncher ${PN} --jar ${PN}.jar
+}
diff --git a/app-crypt/jacksum/metadata.xml b/app-crypt/jacksum/metadata.xml
new file mode 100644
index 000000000000..aa3ea50a24b3
--- /dev/null
+++ b/app-crypt/jacksum/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>java</herd>
+ <upstream>
+ <remote-id type="sourceforge">jacksum</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/johntheripper/Manifest b/app-crypt/johntheripper/Manifest
new file mode 100644
index 000000000000..e443b9562c0a
--- /dev/null
+++ b/app-crypt/johntheripper/Manifest
@@ -0,0 +1,2 @@
+DIST john-1.7.9-jumbo-7.diff.gz 1074044 SHA256 9e87e5660965e6e55214176299f67dd1b8a40820805441c62a57af6a6a4a19f5 SHA512 07a461df199fc776e8f62e969a95762fc1c99b72cdbd4a83d06f05ed236eaac9a918356ec9b8f8d060d1a9b2b8aa5c4021dfe53382761a5a76269ec66a5bd28a WHIRLPOOL da09df93277d90580cd08de2981a9d45df89f9a82f901f8bdc43acc66b97b6eb5515e603dc691cc000852a0847b943a104dee1826a59a000e09488604224f15a
+DIST john-1.7.9.tar.bz2 717505 SHA256 1d40083e37a7bc1ba1177651cbb27898dcf2a812b8ccf1430db0c372ac6dc199 SHA512 121b4aa6fbb62b14db366aed739d7db760c136a4c3a39d8bba32bde269350354b3d18d15ee783f61b17913b0dd6773068cb01b3d3bbad290c309ae1cd027568b WHIRLPOOL e217d3ae3bafaa0d2465402a1c98f05018da9a95ce61effc7f2f20af4aa9ef9a54a636fc7025dfc283e815f5ebd07fafd64e4b01564739fe97053dbeafbd2b13
diff --git a/app-crypt/johntheripper/files/johntheripper-1.7.3.1-mkdir-sandbox.patch b/app-crypt/johntheripper/files/johntheripper-1.7.3.1-mkdir-sandbox.patch
new file mode 100644
index 000000000000..5600f3cc17ec
--- /dev/null
+++ b/app-crypt/johntheripper/files/johntheripper-1.7.3.1-mkdir-sandbox.patch
@@ -0,0 +1,12 @@
+diff -urNp john-1.7.3.1.org/src/path.c john-1.7.3.1/src/path.c
+--- john-1.7.3.1.org/src/path.c 2003-10-01 04:26:25.000000000 +0300
++++ john-1.7.3.1/src/path.c 2007-11-10 15:53:23.000000000 +0200
+@@ -55,7 +55,7 @@ void path_init(char **argv)
+ #ifdef JOHN_PRIVATE_HOME
+ private = path_expand(JOHN_PRIVATE_HOME);
+ if (mkdir(private, S_IRUSR | S_IWUSR | S_IXUSR)) {
+- if (errno != EEXIST) pexit("mkdir: %s", private);
++ if (errno != EEXIST && errno != EACCES) pexit("mkdir: %s", private);
+ } else
+ fprintf(stderr, "Created directory: %s\n", private);
+ #endif
diff --git a/app-crypt/johntheripper/files/johntheripper-1.7.6-cflags.patch b/app-crypt/johntheripper/files/johntheripper-1.7.6-cflags.patch
new file mode 100644
index 000000000000..4b6637a29d8f
--- /dev/null
+++ b/app-crypt/johntheripper/files/johntheripper-1.7.6-cflags.patch
@@ -0,0 +1,83 @@
+--- Makefile 2010-07-18 15:27:51.000000000 -0400
++++ Makefile.mine 2010-07-18 15:30:09.000000000 -0400
+@@ -629,7 +629,7 @@
+ macosx-ppc32-altivec:
+ $(LN) ppc32alt.h arch.h
+ $(MAKE) $(PROJ) \
+- CFLAGS="-c -Wall -fomit-frame-pointer" \
++ CFLAGS="$(CFLAGS) -c -Wall -fomit-frame-pointer" \
+ OPT_NORMAL="-fast -mcpu=7450" \
+ OPT_INLINE="-fast -mcpu=7450 -finline-limit=4000 -faltivec -maltivec"
+
+@@ -638,7 +638,7 @@
+ $(LN) ppc32alt.h arch.h
+ $(MAKE) $(PROJ) \
+ ASFLAGS="$(ASFLAGS) -arch ppc" \
+- CFLAGS="-c -Wall -arch ppc -fomit-frame-pointer" \
++ CFLAGS="$(CFLAGS) -c -Wall -arch ppc -fomit-frame-pointer" \
+ LDFLAGS="$(LDFLAGS) -arch ppc" \
+ OPT_NORMAL="-fast -mcpu=7450" \
+ OPT_INLINE="-fast -mcpu=7450 -finline-limit=4000 -faltivec -maltivec"
+@@ -650,7 +650,7 @@
+ $(LN) ppc32.h arch.h
+ $(MAKE) $(PROJ) \
+ CC=cc \
+- CFLAGS="-c -traditional-cpp" \
++ CFLAGS="$(CFLAGS) -c -traditional-cpp" \
+ OPT_NORMAL="-O2" \
+ OPT_INLINE="-O3"
+
+@@ -658,7 +658,7 @@
+ $(LN) ppc32.h arch.h
+ $(MAKE) $(PROJ) \
+ ASFLAGS="$(ASFLAGS) -arch ppc" \
+- CFLAGS="-c -Wall -arch ppc -fomit-frame-pointer" \
++ CFLAGS="$(CFLAGS) -c -Wall -arch ppc -fomit-frame-pointer" \
+ LDFLAGS="$(LDFLAGS) -arch ppc" \
+ OPT_NORMAL="-O2" \
+ OPT_INLINE="-O3 -finline-limit=4000"
+@@ -667,7 +667,7 @@
+ macosx-ppc64-altivec:
+ $(LN) ppc64alt.h arch.h
+ $(MAKE) $(PROJ) \
+- CFLAGS="-c -m64 -Wall -fomit-frame-pointer" \
++ CFLAGS="$(CFLAGS) -c -m64 -Wall -fomit-frame-pointer" \
+ LDFLAGS="$(LDFLAGS) -m64" \
+ OPT_NORMAL="-fast" \
+ OPT_INLINE="-fast -finline-limit=4000 -faltivec -maltivec"
+@@ -676,7 +676,7 @@
+ $(LN) ppc64alt.h arch.h
+ $(MAKE) $(PROJ) \
+ ASFLAGS="$(ASFLAGS) -arch ppc" \
+- CFLAGS="-c -arch ppc -m64 -Wall -fomit-frame-pointer" \
++ CFLAGS="$(CFLAGS) -c -arch ppc -m64 -Wall -fomit-frame-pointer" \
+ LDFLAGS="$(LDFLAGS) -arch ppc -m64" \
+ OPT_NORMAL="-fast" \
+ OPT_INLINE="-fast -finline-limit=4000 -faltivec -maltivec"
+@@ -684,7 +684,7 @@
+ macosx-ppc64:
+ $(LN) ppc64.h arch.h
+ $(MAKE) $(PROJ) \
+- CFLAGS="-c -m64 -Wall -fomit-frame-pointer" \
++ CFLAGS="$(CFLAGS) -c -m64 -Wall -fomit-frame-pointer" \
+ LDFLAGS="$(LDFLAGS) -m64" \
+ OPT_NORMAL="-fast" \
+ OPT_INLINE="-fast -finline-limit=4000"
+@@ -693,7 +693,7 @@
+ $(LN) ppc64.h arch.h
+ $(MAKE) $(PROJ) \
+ ASFLAGS="$(ASFLAGS) -arch ppc" \
+- CFLAGS="-c -arch ppc -m64 -Wall -fomit-frame-pointer" \
++ CFLAGS="$(CFLAGS) -c -arch ppc -m64 -Wall -fomit-frame-pointer" \
+ LDFLAGS="$(LDFLAGS) -arch ppc -m64" \
+ OPT_NORMAL="-fast" \
+ OPT_INLINE="-fast -finline-limit=4000"
+@@ -723,7 +723,7 @@
+ $(LN) ppc32alt.h arch.h
+ $(MAKE) $(PROJ) \
+ ASFLAGS="$(ASFLAGS) -arch ppc" \
+- CFLAGS="-c -Wall -arch ppc -fomit-frame-pointer" \
++ CFLAGS="$(CFLAGS) -c -Wall -arch ppc -fomit-frame-pointer" \
+ LDFLAGS="$(LDFLAGS) -arch ppc" \
+ OPT_NORMAL="-fast -mcpu=7450" \
+ OPT_INLINE="-fast -mcpu=7450 -finline-limit=4000 -faltivec -maltivec"
diff --git a/app-crypt/johntheripper/files/johntheripper-1.7.9-jumbo-5-NT-performance-02.patch b/app-crypt/johntheripper/files/johntheripper-1.7.9-jumbo-5-NT-performance-02.patch
new file mode 100644
index 000000000000..6066cb8f314e
--- /dev/null
+++ b/app-crypt/johntheripper/files/johntheripper-1.7.9-jumbo-5-NT-performance-02.patch
@@ -0,0 +1,31 @@
+diff --git a/src/NT_fmt_plug.c b/src/NT_fmt_plug.c
+index eb52e3d..411a45b 100644
+--- a/src/NT_fmt_plug.c
++++ b/src/NT_fmt_plug.c
+@@ -652,7 +652,7 @@ static inline void set_key_helper(unsigned int * keybuffer,
+ for(; key[md4_size]; i += xBuf, md4_size++)
+ {
+ unsigned int temp;
+- if ((temp = key[++md4_size]))
++ if ((temp = key[++md4_size]) && md4_size < PLAINTEXT_LENGTH)
+ {
+ keybuffer[i] = key[md4_size-1] | (temp << 16);
+ }
+@@ -704,7 +704,7 @@ static inline void set_key_helper_utf8(unsigned int * keybuffer, unsigned int xB
+ const UTF8 * source, unsigned int lenStoreOffset, unsigned int *lastlen)
+ {
+ unsigned int *target = keybuffer;
+- unsigned int *targetEnd = &keybuffer[xBuf * ((PLAINTEXT_LENGTH + 1) >> 1)];
++ unsigned int *targetEnd = &keybuffer[xBuf * (PLAINTEXT_LENGTH >> 1)];
+ UTF32 chl, chh = 0x80;
+ unsigned int outlen = 0;
+
+@@ -844,7 +844,7 @@ static inline void set_key_helper_encoding(unsigned int * keybuffer,
+ i = 0;
+ for(md4_size = 0; key[md4_size]; i += xBuf, md4_size++)
+ {
+- if ((temp = CP_to_Unicode[key[++md4_size]]))
++ if ((temp = CP_to_Unicode[key[++md4_size]]) && md4_size < PLAINTEXT_LENGTH)
+ keybuffer[i] = CP_to_Unicode[key[md4_size-1]] | (temp << 16);
+ else {
+ keybuffer[i] = CP_to_Unicode[key[md4_size-1]] | 0x800000;
diff --git a/app-crypt/johntheripper/files/johntheripper-1.7.9-ppc-compile-fix.patch b/app-crypt/johntheripper/files/johntheripper-1.7.9-ppc-compile-fix.patch
new file mode 100644
index 000000000000..c28ec21a0ae8
--- /dev/null
+++ b/app-crypt/johntheripper/files/johntheripper-1.7.9-ppc-compile-fix.patch
@@ -0,0 +1,17 @@
+diff -ru john-1.7.9.orig/src/gost_plug.c john-1.7.9/src/gost_plug.c
+--- john-1.7.9.orig/src/gost_plug.c 2013-01-20 16:15:45.464000001 +0000
++++ john-1.7.9/src/gost_plug.c 2013-01-20 16:16:06.104000001 +0000
+@@ -531,7 +531,6 @@
+ }
+ #endif
+
+-#ifndef __GLIBC__
+ void rhash_u32_swap_copy(void* to, int index, const void* from, size_t length) {
+ size_t i;
+ unsigned int *pO, *pI;
+@@ -542,4 +541,3 @@
+ *pO++ = bswap_32(*pI++);
+ }
+ }
+-#endif
+
diff --git a/app-crypt/johntheripper/johntheripper-1.7.9-r10.ebuild b/app-crypt/johntheripper/johntheripper-1.7.9-r10.ebuild
new file mode 100644
index 000000000000..b4550232fb28
--- /dev/null
+++ b/app-crypt/johntheripper/johntheripper-1.7.9-r10.ebuild
@@ -0,0 +1,266 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit cuda eutils flag-o-matic toolchain-funcs pax-utils multilib
+
+MY_PN="john"
+MY_P="${MY_PN}-${PV}"
+
+JUMBO="jumbo-7"
+
+DESCRIPTION="fast password cracker"
+HOMEPAGE="http://www.openwall.com/john/"
+
+SRC_URI="http://www.openwall.com/john/g/${MY_P}.tar.bz2
+ !minimal? ( http://www.openwall.com/john/g/${MY_P}-${JUMBO}.diff.gz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos"
+#Remove AltiVec USE flag. Appears to be an upstream issue.
+IUSE="cuda custom-cflags -minimal cpu_flags_x86_mmx mozilla mpi opencl openmp cpu_flags_x86_sse2"
+REQUIRED_USE="openmp? ( !minimal )
+ mpi? ( !minimal )
+ cuda? ( !minimal )
+ opencl? ( !minimal )
+ mozilla? ( !minimal )"
+
+DEPEND="sys-libs/zlib
+ !minimal? ( >=dev-libs/openssl-0.9.7:0 )
+ mpi? ( virtual/mpi )
+ cuda? ( x11-drivers/nvidia-drivers
+ dev-util/nvidia-cuda-toolkit:= )
+ opencl? ( virtual/opencl )
+ mozilla? ( dev-libs/nss dev-libs/nspr )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+has_xop() {
+ echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep -q "#define __XOP__ 1"
+}
+
+has_avx() {
+ echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep -q "#define __AVX__ 1"
+}
+
+get_target() {
+ if use alpha; then
+ echo "linux-alpha"
+ elif use amd64; then
+ if has_xop; then
+ echo "linux-x86-64-xop"
+ elif has_avx; then
+ echo "linux-x86-64-avx"
+ else
+ echo "linux-x86-64"
+ fi
+ elif use ppc; then
+ #if use altivec; then
+ # echo "linux-ppc32-altivec"
+ #else
+ echo "linux-ppc32"
+ #fi
+ elif use ppc64; then
+ #if use altivec; then
+ # echo "linux-ppc32-altivec"
+ #else
+ echo "linux-ppc64"
+ #fi
+ # linux-ppc64-altivec is slightly slower than linux-ppc32-altivec for most hash types.
+ # as per the Makefile comments
+ elif use sparc; then
+ echo "linux-sparc"
+ elif use x86; then
+ if has_xop; then
+ echo "linux-x86-xop"
+ elif has_avx; then
+ echo "linux-x86-avx"
+ elif use cpu_flags_x86_sse2; then
+ echo "linux-x86-sse2"
+ elif use cpu_flags_x86_mmx; then
+ echo "linux-x86-mmx"
+ else
+ echo "linux-x86-any"
+ fi
+ elif use ppc-macos; then
+ # force AltiVec, the non-altivec profile contains ancient compiler cruft
+ # if use altivec; then
+ echo "macosx-ppc32-altivec"
+ # else
+ # echo "macosx-ppc32"
+ # fi
+ # for Tiger this can be macosx-ppc64
+ elif use x86-macos; then
+ if use cpu_flags_x86_sse2; then
+ echo "macosx-x86-sse2"
+ else
+ echo "macosx-x86"
+ fi
+ elif use x86-solaris; then
+ echo "solaris-x86-any"
+ elif use x86-fbsd; then
+ if use cpu_flags_x86_sse2; then
+ echo "freebsd-x86-sse2"
+ elif use cpu_flags_x86_mmx; then
+ echo "freebsd-x86-mmx"
+ else
+ echo "freebsd-x86-any"
+ fi
+ elif use amd64-fbsd; then
+ echo "freebsd-x86-64"
+ else
+ echo "generic"
+ fi
+}
+
+get_john_objs() {
+ echo -n '${JOHN_COMMON_OBJS} '
+ if use opencl; then
+ echo -n '${OCL_OBJS} '
+ fi
+ if use cuda; then
+ echo -n '${CUDA_OBJS}'
+ fi
+}
+
+pkg_setup() {
+ if use openmp && [[ ${MERGE_TYPE} != binary ]]; then
+ tc-has-openmp || die "Please switch to an openmp compatible compiler"
+ fi
+}
+
+src_prepare() {
+ if ! use minimal; then
+ epatch "${WORKDIR}/${MY_P}-${JUMBO}.diff"
+
+ if use mpi ; then
+ sed -e "s/^#CC = mpicc/CC = mpicc/" \
+ -e "s/^#MPIOBJ =/MPIOBJ =/" \
+ -i src/Makefile || die
+ fi
+
+ # fix typo in jumbo patch
+ sed -i 's:All15:All5:' run/john.conf || die
+ # fix compile on ppc (only needed for jumbo-7)
+ epatch "${FILESDIR}/${P}-ppc-compile-fix.patch"
+ fi
+
+ cd src
+ epatch "${FILESDIR}/${PN}-1.7.6-cflags.patch"
+ epatch "${FILESDIR}/${PN}-1.7.3.1-mkdir-sandbox.patch"
+
+ if ! use minimal; then
+ sed -e "s/LDFLAGS *= */override LDFLAGS += /" -e "/LDFLAGS/s/-s//" \
+ -e "/LDFLAGS/s/-L[^ ]*//g" -e "/CFLAGS/s/-[IL][^ ]*//g" \
+ -i Makefile || die "sed Makefile failed"
+ sed -i 's#/usr/local#/opt#g' Makefile || die
+ fi
+ sed -i 's#JOHN_OBJS = \\#JOHN_COMMON_OBJS = \\#g' Makefile || die
+
+ if use cuda; then
+ cuda_src_prepare
+ sed \
+ -e "/^NVCC_FLAGS/s:-arch sm_10:${NVCCFLAGS}:g" \
+ -i Makefile || die
+ fi
+
+ if use mozilla; then
+ sed -i -e '/HAVE_NSS =/s/^#*//' -e 's/NSS_override//' Makefile || die
+ fi
+}
+
+src_compile() {
+ local OMP
+
+ use custom-cflags || strip-flags
+ echo "#define JOHN_SYSTEMWIDE 1" >> config.gentoo
+ echo "#define JOHN_SYSTEMWIDE_HOME \"${EPREFIX}/etc/john\"" >> config.gentoo
+ echo "#define JOHN_SYSTEMWIDE_EXEC \"${EPREFIX}/usr/libexec/john\"" >> config.gentoo
+ append-flags -fPIC -fPIE
+ gcc-specs-pie && append-ldflags -nopie
+ use openmp && OMP="-fopenmp"
+
+ CPP="$(tc-getCXX)" CC="$(tc-getCC)" AS="$(tc-getCC)" LD="$(tc-getCC)"
+ if use mpi; then
+ CPP=mpicxx CC=mpicc AS=mpicc LD=mpicc
+ fi
+
+ #this stuff was all stolen from the Makefile, if build breaks, check this first
+ if use opencl; then
+ GPUCFLAGS="${GPUCFLAGS} -DCL_VERSION_1_0"
+ GPULDFLAGS="${GPULDFLAGS} -lOpenCL"
+ fi
+ if use cuda; then
+ GPUCFLAGS="${GPUCFLAGS} -DHAVE_CUDA"
+ GPULDFLAGS="${GPULDFLAGS} -L/opt/cuda/$(get_libdir) -lcudart"
+ fi
+
+ emake -C src/ \
+ CPP="${CPP}" CC="${CC}" AS="${AS}" LD="${LD}" \
+ CFLAGS="-c -Wall -include ../config.gentoo ${CFLAGS} ${OMP} ${GPUCFLAGS}" \
+ LDFLAGS="${LDFLAGS} ${GPULDFLAGS}" \
+ OPT_NORMAL="" \
+ OMPFLAGS="${OMP}" \
+ JOHN_OBJS="$(get_john_objs)" \
+ $(get_target)
+}
+
+src_test() {
+ if use opencl; then
+ cp src/opencl/*.cl run/
+ cp src/opencl_*.h run/
+ fi
+ pax-mark -mr run/john
+ if use opencl || use cuda; then
+ ewarn "GPU tests fail, skipping all tests..."
+ else
+ make -C src/ check
+ fi
+}
+
+src_install() {
+ # executables
+ dosbin run/john
+ newsbin run/mailer john-mailer
+
+ pax-mark -mr "${ED}usr/sbin/john" || die
+
+ dosym john /usr/sbin/unafs
+ dosym john /usr/sbin/unique
+ dosym john /usr/sbin/unshadow
+
+ # jumbo-patch additions
+ if ! use minimal; then
+ for s in \
+ keychain2john keepass2john pwsafe2john hccap2john \
+ racf2john zip2john rar2john pdf2john ssh2john undrop \
+ ; do
+ dosym john /usr/sbin/$s
+ done
+ use mozilla && dosym john /usr/sbin/mozilla2john
+ dosbin run/calc_stat
+ dosbin run/genmkvpwd
+ dosbin run/mkvcalcproba
+ dosbin run/raw2dyna
+ dosbin run/tgtsnarf
+ insinto /etc/john
+ doins run/genincstats.rb run/stats
+ doins run/netscreen.py run/sap2john.pl
+ if use opencl; then
+ doins src/opencl/*.cl
+ doins src/opencl_*.h
+ fi
+ fi
+
+ # config files
+ insinto /etc/john
+ doins run/*.chr run/password.lst
+ doins run/*.conf
+
+ # documentation
+ dodoc doc/*
+}
diff --git a/app-crypt/johntheripper/johntheripper-1.7.9-r6.ebuild b/app-crypt/johntheripper/johntheripper-1.7.9-r6.ebuild
new file mode 100644
index 000000000000..22670135b8f7
--- /dev/null
+++ b/app-crypt/johntheripper/johntheripper-1.7.9-r6.ebuild
@@ -0,0 +1,251 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils flag-o-matic toolchain-funcs pax-utils multilib
+
+MY_PN="john"
+MY_P="${MY_PN}-${PV}"
+
+JUMBO="jumbo-7"
+
+DESCRIPTION="fast password cracker"
+HOMEPAGE="http://www.openwall.com/john/"
+
+SRC_URI="http://www.openwall.com/john/g/${MY_P}.tar.bz2
+ !minimal? ( http://www.openwall.com/john/g/${MY_P}-${JUMBO}.diff.gz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ~mips ppc ppc64 sparc x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos"
+#Remove AltiVec USE flag. Appears to be an upstream issue.
+IUSE="cuda custom-cflags -minimal cpu_flags_x86_mmx mpi opencl openmp cpu_flags_x86_sse2"
+REQUIRED_USE="openmp? ( !minimal )
+ mpi? ( !minimal )
+ cuda? ( !minimal )
+ opencl? ( !minimal )"
+
+RDEPEND="sys-libs/zlib
+ !minimal? ( >=dev-libs/openssl-0.9.7:0 )
+ mpi? ( virtual/mpi )
+ cuda? ( x11-drivers/nvidia-drivers dev-util/nvidia-cuda-toolkit )
+ opencl? ( virtual/opencl )"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+has_xop() {
+ echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep -q "#define __XOP__ 1"
+}
+
+has_avx() {
+ echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep -q "#define __AVX__ 1"
+}
+
+get_target() {
+ if use alpha; then
+ echo "linux-alpha"
+ elif use amd64; then
+ if has_xop; then
+ echo "linux-x86-64-xop"
+ elif has_avx; then
+ echo "linux-x86-64-avx"
+ else
+ echo "linux-x86-64"
+ fi
+ elif use ppc; then
+ #if use altivec; then
+ # echo "linux-ppc32-altivec"
+ #else
+ echo "linux-ppc32"
+ #fi
+ elif use ppc64; then
+ #if use altivec; then
+ # echo "linux-ppc32-altivec"
+ #else
+ echo "linux-ppc64"
+ #fi
+ # linux-ppc64-altivec is slightly slower than linux-ppc32-altivec for most hash types.
+ # as per the Makefile comments
+ elif use sparc; then
+ echo "linux-sparc"
+ elif use x86; then
+ if has_xop; then
+ echo "linux-x86-xop"
+ elif has_avx; then
+ echo "linux-x86-avx"
+ elif use cpu_flags_x86_sse2; then
+ echo "linux-x86-sse2"
+ elif use cpu_flags_x86_mmx; then
+ echo "linux-x86-mmx"
+ else
+ echo "linux-x86-any"
+ fi
+ elif use ppc-macos; then
+ # force AltiVec, the non-altivec profile contains ancient compiler cruft
+ # if use altivec; then
+ echo "macosx-ppc32-altivec"
+ # else
+ # echo "macosx-ppc32"
+ # fi
+ # for Tiger this can be macosx-ppc64
+ elif use x86-macos; then
+ if use cpu_flags_x86_sse2; then
+ echo "macosx-x86-sse2"
+ else
+ echo "macosx-x86"
+ fi
+ elif use x86-solaris; then
+ echo "solaris-x86-any"
+ elif use x86-fbsd; then
+ if use cpu_flags_x86_sse2; then
+ echo "freebsd-x86-sse2"
+ elif use cpu_flags_x86_mmx; then
+ echo "freebsd-x86-mmx"
+ else
+ echo "freebsd-x86-any"
+ fi
+ elif use amd64-fbsd; then
+ echo "freebsd-x86-64"
+ else
+ echo "generic"
+ fi
+}
+
+get_john_objs() {
+ echo -n '${JOHN_COMMON_OBJS} '
+ if use opencl; then
+ echo -n '${OCL_OBJS} '
+ fi
+ if use cuda; then
+ echo -n '${CUDA_OBJS}'
+ fi
+}
+
+pkg_setup() {
+ if use openmp ; then
+ tc-has-openmp || die "Please switch to an openmp compatible compiler"
+ fi
+}
+
+src_prepare() {
+ if ! use minimal; then
+ epatch "${WORKDIR}/${MY_P}-${JUMBO}.diff"
+
+ if use mpi ; then
+ sed -e "s/^#CC = mpicc/CC = mpicc/" \
+ -e "s/^#MPIOBJ =/MPIOBJ =/" \
+ -i src/Makefile || die
+ fi
+
+ # fix typo in jumbo patch
+ sed -i 's:All15:All5:' run/john.conf || die
+ # fix compile on ppc (only needed for jumbo-7)
+ epatch "${FILESDIR}/${P}-ppc-compile-fix.patch"
+ fi
+
+ cd src
+ epatch "${FILESDIR}/${PN}-1.7.6-cflags.patch"
+ epatch "${FILESDIR}/${PN}-1.7.3.1-mkdir-sandbox.patch"
+
+ if ! use minimal; then
+ sed -e "s/LDFLAGS *= */override LDFLAGS += /" -e "/LDFLAGS/s/-s//" \
+ -e "/LDFLAGS/s/-L[^ ]*//g" -e "/CFLAGS/s/-[IL][^ ]*//g" \
+ -i Makefile || die "sed Makefile failed"
+ sed -i 's#/usr/local#/opt#g' Makefile || die
+ fi
+ sed -i 's#JOHN_OBJS = \\#JOHN_COMMON_OBJS = \\#g' Makefile || die
+}
+
+src_compile() {
+ local OMP
+
+ use custom-cflags || strip-flags
+ echo "#define JOHN_SYSTEMWIDE 1" >> config.gentoo
+ echo "#define JOHN_SYSTEMWIDE_HOME \"${EPREFIX}/etc/john\"" >> config.gentoo
+ echo "#define JOHN_SYSTEMWIDE_EXEC \"${EPREFIX}/usr/libexec/john\"" >> config.gentoo
+ append-flags -fPIC -fPIE
+ gcc-specs-pie && append-ldflags -nopie
+ use openmp && OMP="-fopenmp"
+
+ CPP="$(tc-getCXX)" CC="$(tc-getCC)" AS="$(tc-getCC)" LD="$(tc-getCC)"
+ if use mpi; then
+ CPP=mpicxx CC=mpicc AS=mpicc LD=mpicc
+ fi
+
+ #this stuff was all stolen from the Makefile, if build breaks, check this first
+ if use opencl; then
+ GPUCFLAGS="${GPUCFLAGS} -DCL_VERSION_1_0"
+ GPULDFLAGS="${GPULDFLAGS} -lOpenCL"
+ fi
+ if use cuda; then
+ GPUCFLAGS="${GPUCFLAGS} -DHAVE_CUDA"
+ GPULDFLAGS="${GPULDFLAGS} -L/opt/cuda/$(get_libdir) -lcudart"
+ fi
+
+ emake -C src/ \
+ CPP="${CPP}" CC="${CC}" AS="${AS}" LD="${LD}" \
+ CFLAGS="-c -Wall -include ../config.gentoo ${CFLAGS} ${OMP} ${GPUCFLAGS}" \
+ LDFLAGS="${LDFLAGS} ${GPULDFLAGS}" \
+ OPT_NORMAL="" \
+ OMPFLAGS="${OMP}" \
+ JOHN_OBJS="$(get_john_objs)" \
+ $(get_target)
+}
+
+src_test() {
+ if use opencl; then
+ cp src/opencl/*.cl run/
+ cp src/opencl_*.h run/
+ fi
+ pax-mark -mr run/john
+ if use opencl || use cuda; then
+ ewarn "GPU tests fail, skipping all tests..."
+ else
+ make -C src/ check
+ fi
+}
+
+src_install() {
+ # executables
+ dosbin run/john
+ newsbin run/mailer john-mailer
+
+ pax-mark -mr "${ED}usr/sbin/john" || die
+
+ dosym john /usr/sbin/unafs
+ dosym john /usr/sbin/unique
+ dosym john /usr/sbin/unshadow
+
+ # jumbo-patch additions
+ if ! use minimal; then
+ for s in \
+ keychain2john keepass2john pwsafe2john hccap2john \
+ racf2john zip2john rar2john pdf2john ssh2john undrop \
+ ; do
+ dosym john /usr/sbin/$s
+ done
+ dosbin run/calc_stat
+ dosbin run/genmkvpwd
+ dosbin run/mkvcalcproba
+ dosbin run/raw2dyna
+ dosbin run/tgtsnarf
+ insinto /etc/john
+ doins run/genincstats.rb run/stats
+ doins run/netscreen.py run/sap2john.pl
+ if use opencl; then
+ doins src/opencl/*.cl
+ doins src/opencl_*.h
+ fi
+ fi
+
+ # config files
+ insinto /etc/john
+ doins run/*.chr run/password.lst
+ doins run/*.conf
+
+ # documentation
+ dodoc doc/*
+}
diff --git a/app-crypt/johntheripper/metadata.xml b/app-crypt/johntheripper/metadata.xml
new file mode 100644
index 000000000000..dabd8490bbad
--- /dev/null
+++ b/app-crypt/johntheripper/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <maintainer>
+ <email>zerochaos@gentoo.org</email>
+ <name>Rick Farina</name>
+ <description>Any and all help appreciated</description>
+ </maintainer>
+ <use>
+ <flag name="cuda">Use nvidia cuda toolkit for speeding up cracking on capable devices</flag>
+ <flag name="mozilla"> Support mozilla password cracking</flag>
+ <flag name="opencl">Enable opencl support for speeding up cracking on capable devices</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-crypt/kencfs/Manifest b/app-crypt/kencfs/Manifest
new file mode 100644
index 000000000000..ed8be97bdc64
--- /dev/null
+++ b/app-crypt/kencfs/Manifest
@@ -0,0 +1 @@
+DIST 134003-kencfs-1.5.0.tar.gz 156217 SHA256 b53314fe022b6fb20d427a6c9a1d08be5df87823754a7d22724a9f3960fe24f0 SHA512 0168a0241c9e2e614b5d796c02cc9103596040e4cdd1349c250f0d25d20bfe7f8c3ad6f192f57e5b519d83ffdaec8eabf389d3d0286da282cfe42e78e5c966f3 WHIRLPOOL 42964b27d48ef3a816f657d417a044f2d60bd7d895bdaa2701d96e9c666f60d0e967ddf9536033f1d3207181973f9524cd1b29897b3ab2527a58edef329704e4
diff --git a/app-crypt/kencfs/files/kencfs-1.2-desktop.patch b/app-crypt/kencfs/files/kencfs-1.2-desktop.patch
new file mode 100644
index 000000000000..900f027f4abc
--- /dev/null
+++ b/app-crypt/kencfs/files/kencfs-1.2-desktop.patch
@@ -0,0 +1,11 @@
+--- /tmp/kencfs.desktop 2012-12-12 00:06:01.000000000 +1100
++++ kencfs.desktop 2012-12-12 00:07:54.000000000 +1100
+@@ -2,7 +2,7 @@
+ Name=KEncFS
+ Exec=kencfs
+ Icon=document-encrypt
+-Categories=System;Security
++Categories=Qt;KDE;System;Security;
+ Terminal=false
+ Type=Application
+ StartupNotify=false
diff --git a/app-crypt/kencfs/files/kencfs-1.4.0-encfs5.patch b/app-crypt/kencfs/files/kencfs-1.4.0-encfs5.patch
new file mode 100644
index 000000000000..6687ac0f1f9b
--- /dev/null
+++ b/app-crypt/kencfs/files/kencfs-1.4.0-encfs5.patch
@@ -0,0 +1,13 @@
+Support older encfs5 volumes wrt Gentoo bug #446652.
+
+--- a/fsDialog.cpp
++++ b/fsDialog.cpp
+@@ -161,7 +161,7 @@
+
+ arg << cr << pm << "-S";
+ p->start(prg,arg);
+- if (! QFile::exists(cr+"/.encfs6.xml")) p->write("\n");
++ if (! (QFile::exists(cr+"/.encfs6.xml") || QFile::exists(cr+"/.encfs5")) ) p->write("\n");
+ p->write(pw.toLocal8Bit().data());
+ p->write("\n");
+ p->waitForFinished();
diff --git a/app-crypt/kencfs/kencfs-1.5.0.ebuild b/app-crypt/kencfs/kencfs-1.5.0.ebuild
new file mode 100644
index 000000000000..5fbfc06224c7
--- /dev/null
+++ b/app-crypt/kencfs/kencfs-1.5.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit qt4-r2
+
+DESCRIPTION="GUI frontend for encfs"
+HOMEPAGE="http://kde-apps.org/content/show.php?content=134003"
+SRC_URI="http://kde-apps.org/CONTENT/content-files/134003-${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND="
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ kde-base/kdelibs:4
+"
+RDEPEND="${DEPEND}
+ kde-apps/kwalletd:4
+ sys-fs/encfs
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.2-desktop.patch"
+ "${FILESDIR}/${PN}-1.4.0-encfs5.patch"
+)
+
+src_prepare() {
+ qt4-r2_src_prepare
+
+ sed -i ${PN}.pro -e "/^doc.path =/s/${PN}-1.5/${PF}/" \
+ || die "sed docdir failed"
+}
diff --git a/app-crypt/kencfs/metadata.xml b/app-crypt/kencfs/metadata.xml
new file mode 100644
index 000000000000..a23f444b67d6
--- /dev/null
+++ b/app-crypt/kencfs/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>kde</herd>
+</pkgmetadata>
diff --git a/app-crypt/keybase/Manifest b/app-crypt/keybase/Manifest
new file mode 100644
index 000000000000..77681fbb3e8f
--- /dev/null
+++ b/app-crypt/keybase/Manifest
@@ -0,0 +1,4 @@
+DIST keybase-0.8.10.tar.gz 7055453 SHA256 ce9a22427d40341059071737ace2dacbe0a81e29e783ec2c8324e2704c1f558f SHA512 4701a0c8d88ffc90fa68f24ef4695f7c7b63ec91a41ccc1bf9d25efb182befc0750e1f9f5ec185161d65bdcbaeb3a73ab8f54f7047ab9d1efdca55b5f56957f0 WHIRLPOOL dd6d53154164ac235b89947530f7af4ed9fdc1421c26b2cef92e1721e2dcdf63e43fff054718c58c6a519f24f1766969a0e740f97d9eb17472d1ef8174e1851f
+DIST keybase-0.8.12.tar.gz 7057638 SHA256 fa6a8eb6f857d98d4d0f5c97862ba99480b0dd2c85fccd631180c0ab8f3ca97f SHA512 e8c568e0154308d3f0172a5e9b22de31c8a9b07d3a4f324a4afec57972602a3bd957220a96427eefa5df563ce0152495f5c33668536e03f3d6af9344c2061397 WHIRLPOOL e4a2431c05add26645f4ec3f2062a81d38c39ad9f9d6357f62009292f60fe072d67547d6c0a39470c130165bb9491fc7cb17cfe91a3fc1be75ad7a6377da9dad
+DIST keybase-0.8.13.tar.gz 7057750 SHA256 a485257b7302d848be41e9c0a79f7b1c0da4c8ceaee70c0cc011838cbd723fd8 SHA512 8a082ff9d61f960a0c4862fba04adf323005b3c70e6d208a38a001716bcc374e10cde315eced6730d90316466244e58a9de0f78a66ab2f9bd91326979f0ef28b WHIRLPOOL b651a48be0ced301991edd03d40182c0b900ea28e2b97630a3ad741b34266dbd95c3d370db636ca8088ce5e781a2cf609255a6b52a5b6bdbfa540b879cdcd778
+DIST keybase-0.8.9.tar.gz 7055307 SHA256 2feb54d26afc639f4d4998fbc35aafa2100a9926a6ec4f84343ca56d0284a3dd SHA512 431b3314cf939605a56f163b67226c9027a83159aae7f6b9226a4b5ccf63ecd3f79a873cbb9ab2756d83df2191823b70f884327f160187c00f6a6954b8ca144a WHIRLPOOL 4de64969a1e8898b19903cce391ca599af09b4f3dee6bf2b6bf10fcb39d8b6f939d5aa0320a5efe4b3aaf78217c6b6d7c16f09321af3ed115b6985194a0f0c0e
diff --git a/app-crypt/keybase/keybase-0.8.10.ebuild b/app-crypt/keybase/keybase-0.8.10.ebuild
new file mode 100644
index 000000000000..644ff738ea67
--- /dev/null
+++ b/app-crypt/keybase/keybase-0.8.10.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="Client for keybase.io"
+HOMEPAGE="https://keybase.io/"
+SRC_URI="https://github.com/keybase/node-client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ net-libs/nodejs
+ app-crypt/gnupg"
+
+src_unpack() {
+ unpack "${P}.tar.gz"
+ mv "node-client-${PV}" "${P}"
+}
+
+src_install() {
+ dodoc CHANGELOG.md README.md SIGNED.md
+ insinto "/opt/${PN}"
+ doins -r package.json bin certs json lib node_modules sql
+ dosym "${D}/opt/${PN}/bin/main.js" "${ROOT}/usr/bin/keybase"
+ chmod 0755 "${D}/opt/${PN}/bin/main.js" || die
+}
diff --git a/app-crypt/keybase/keybase-0.8.12.ebuild b/app-crypt/keybase/keybase-0.8.12.ebuild
new file mode 100644
index 000000000000..644ff738ea67
--- /dev/null
+++ b/app-crypt/keybase/keybase-0.8.12.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="Client for keybase.io"
+HOMEPAGE="https://keybase.io/"
+SRC_URI="https://github.com/keybase/node-client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ net-libs/nodejs
+ app-crypt/gnupg"
+
+src_unpack() {
+ unpack "${P}.tar.gz"
+ mv "node-client-${PV}" "${P}"
+}
+
+src_install() {
+ dodoc CHANGELOG.md README.md SIGNED.md
+ insinto "/opt/${PN}"
+ doins -r package.json bin certs json lib node_modules sql
+ dosym "${D}/opt/${PN}/bin/main.js" "${ROOT}/usr/bin/keybase"
+ chmod 0755 "${D}/opt/${PN}/bin/main.js" || die
+}
diff --git a/app-crypt/keybase/keybase-0.8.13.ebuild b/app-crypt/keybase/keybase-0.8.13.ebuild
new file mode 100644
index 000000000000..644ff738ea67
--- /dev/null
+++ b/app-crypt/keybase/keybase-0.8.13.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="Client for keybase.io"
+HOMEPAGE="https://keybase.io/"
+SRC_URI="https://github.com/keybase/node-client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ net-libs/nodejs
+ app-crypt/gnupg"
+
+src_unpack() {
+ unpack "${P}.tar.gz"
+ mv "node-client-${PV}" "${P}"
+}
+
+src_install() {
+ dodoc CHANGELOG.md README.md SIGNED.md
+ insinto "/opt/${PN}"
+ doins -r package.json bin certs json lib node_modules sql
+ dosym "${D}/opt/${PN}/bin/main.js" "${ROOT}/usr/bin/keybase"
+ chmod 0755 "${D}/opt/${PN}/bin/main.js" || die
+}
diff --git a/app-crypt/keybase/keybase-0.8.9.ebuild b/app-crypt/keybase/keybase-0.8.9.ebuild
new file mode 100644
index 000000000000..644ff738ea67
--- /dev/null
+++ b/app-crypt/keybase/keybase-0.8.9.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="Client for keybase.io"
+HOMEPAGE="https://keybase.io/"
+SRC_URI="https://github.com/keybase/node-client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ net-libs/nodejs
+ app-crypt/gnupg"
+
+src_unpack() {
+ unpack "${P}.tar.gz"
+ mv "node-client-${PV}" "${P}"
+}
+
+src_install() {
+ dodoc CHANGELOG.md README.md SIGNED.md
+ insinto "/opt/${PN}"
+ doins -r package.json bin certs json lib node_modules sql
+ dosym "${D}/opt/${PN}/bin/main.js" "${ROOT}/usr/bin/keybase"
+ chmod 0755 "${D}/opt/${PN}/bin/main.js" || die
+}
diff --git a/app-crypt/keybase/metadata.xml b/app-crypt/keybase/metadata.xml
new file mode 100644
index 000000000000..27b73883188c
--- /dev/null
+++ b/app-crypt/keybase/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>
+ <email>nicolasbock@gentoo.org</email>
+ <name>Nicolas Bock</name>
+ </maintainer>
+ <longdescription lang="en">
+ Get a public key, safely, starting just with someone's social media username(s)
+ </longdescription>
+ <upstream>
+ <remote-id type="github">keybase/node-client</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/keylookup/Manifest b/app-crypt/keylookup/Manifest
new file mode 100644
index 000000000000..5d04528cc7b1
--- /dev/null
+++ b/app-crypt/keylookup/Manifest
@@ -0,0 +1 @@
+DIST keylookup-2.2.tar.gz 13188 SHA256 8c8f4f488e144761bbe80cb5de0927ca2acb8c0fae3b50c667a061b4a4dba917 SHA512 e9aa931bdf33a720b1262449d63e7e9592b375526eb33832ff966968a20dac1a0362e0db0e4444dba868ee4ad8c3e553e9cc3f3c60376d95b8a303e05d722abb WHIRLPOOL b4ae16896350df9bc35b30ce8a7cb92926e85d64cf254a0deb46be53bd35063351999cddf33c930d7e39c0f195fc2e6ca6cb3a363a7ed523a567e260a1e9ae88
diff --git a/app-crypt/keylookup/keylookup-2.2-r9999.ebuild b/app-crypt/keylookup/keylookup-2.2-r9999.ebuild
new file mode 100644
index 000000000000..8d3ccb0e95f3
--- /dev/null
+++ b/app-crypt/keylookup/keylookup-2.2-r9999.ebuild
@@ -0,0 +1,14 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="A tool to fetch PGP keys from keyservers"
+HOMEPAGE="http://www.palfrader.org/keylookup/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+RDEPEND=">=app-crypt/signing-party-1.1.3-r2"
diff --git a/app-crypt/keylookup/keylookup-2.2.ebuild b/app-crypt/keylookup/keylookup-2.2.ebuild
new file mode 100644
index 000000000000..a1c373a42743
--- /dev/null
+++ b/app-crypt/keylookup/keylookup-2.2.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+DESCRIPTION="A tool to fetch PGP keys from keyservers"
+HOMEPAGE="http://www.palfrader.org/keylookup/"
+SRC_URI="http://www.palfrader.org/keylookup/files/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+RDEPEND="dev-lang/perl
+ app-crypt/gnupg"
+
+src_install() {
+ dobin keylookup || die
+ doman keylookup.1
+ dodoc NEWS TODO
+}
diff --git a/app-crypt/keylookup/metadata.xml b/app-crypt/keylookup/metadata.xml
new file mode 100644
index 000000000000..59e2b8f78cb5
--- /dev/null
+++ b/app-crypt/keylookup/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>
+ <email>maintainer-needed@gentoo.org</email>
+ <name>Default assignee for orphaned packages</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/keynote/Manifest b/app-crypt/keynote/Manifest
new file mode 100644
index 000000000000..e199692de124
--- /dev/null
+++ b/app-crypt/keynote/Manifest
@@ -0,0 +1 @@
+DIST keynote-2.3.tar.gz 141930 SHA256 62f7a9d57ceb6bcdd47b604b637a7ac8ed337cef0ab02f1fa28b7e61c9b15821 SHA512 c4f2f70718cf6092a9af82d6f6e1d8e24d03be9a938e2bde830b24794cd20610b8f647c552d46e37e840f1a1a432dc797b65548c4d39cdbaa65ec2d11f6cfefe WHIRLPOOL 42cc4830d06f59fe0bb26a52ddd5c40c2192d1d44e7ece99a5013c4fb31cc7f4e284d46c21c9ec4f448e20642b0b00735435801854f217c800cedca9f43ecbf4
diff --git a/app-crypt/keynote/files/keynote-2.3-parallel-build.patch b/app-crypt/keynote/files/keynote-2.3-parallel-build.patch
new file mode 100644
index 000000000000..cf4b4926f79d
--- /dev/null
+++ b/app-crypt/keynote/files/keynote-2.3-parallel-build.patch
@@ -0,0 +1,14 @@
+--- keynote-2.3.orig/Makefile.in 2010-02-04 09:51:35.757096194 +0100
++++ keynote-2.3/Makefile.in 2010-02-04 09:52:17.441137132 +0100
+@@ -86,9 +86,11 @@
+
+ k.tab.c: keynote.y header.h keynote.h assertion.h config.h
+ $(YACC) $(YACCFLAGS) keynote.y
++k.tab.h: k.tab.c
+
+ z.tab.c: keynote-ver.y keynote.h header.h config.h
+ $(YACC) $(YACCFLAGS2) keynote-ver.y
++z.tab.h: z.tab.c
+
+ lex.kn.c: keynote.l k.tab.h header.h keynote.h assertion.h config.h
+ $(LEX) $(LEXFLAGS) keynote.l
diff --git a/app-crypt/keynote/files/keynote-2.3-qa.patch b/app-crypt/keynote/files/keynote-2.3-qa.patch
new file mode 100644
index 000000000000..f6b1ff28cdb8
--- /dev/null
+++ b/app-crypt/keynote/files/keynote-2.3-qa.patch
@@ -0,0 +1,44 @@
+Respect CFLAGS, LDFLAGS, and AR.
+
+The better way to fix AR would be to patch configure.in,
+but it is sufficiently old to fail with current autotools.
+--- Makefile.in
++++ Makefile.in
+@@ -27,7 +27,6 @@
+ YACC = @YACC@
+ SSLEAY = @SSLEAY@
+ RM = @RM@
+-AR = @AR@
+ NROFF = @NROFF@
+ TAR = @TAR@
+ TRUE = @TRUE@
+@@ -41,10 +40,10 @@
+ YACCFLAGS = -d -p kn -b k
+ LEXFLAGS2 = -Pkv -s -i
+ LEXFLAGS = -Cr -Pkn -s -i
+-CFLAGS = -O2 -Wall # -g
+ RMFLAGS2 = -rf
+ RMFLAGS = -f
+ NROFFFLAGS = -mandoc
++LDFLAGS = @LDFLAGS@
+
+ SSLCONF = testsuite/openssl.cnf
+ SSLCERT = testsuite/test.cert.pem
+@@ -83,7 +82,7 @@
+ $(RANLIB) $(TARGET)
+
+ $(TARGET2): $(TARGET) $(OBJS2)
+- $(CC) $(CFLAGS) -o $(TARGET2) $(OBJS2) $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $(TARGET2) $(OBJS2) $(LIBS)
+
+ k.tab.c: keynote.y header.h keynote.h assertion.h config.h
+ $(YACC) $(YACCFLAGS) keynote.y
+@@ -131,7 +130,7 @@
+ -keyout $(SSLKEY)
+
+ test-sample: all $(OBJS3)
+- $(CC) $(CFLAGS) -o $(TARGET3) $(OBJS3) $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $(TARGET3) $(OBJS3) $(LIBS)
+
+ test-sig: all $(SSLCERT) $(SSLKEY)
+ $(SED) -e 's/--.*//' < $(SSLCERT) > $(SSLCERT).1
diff --git a/app-crypt/keynote/keynote-2.3-r3.ebuild b/app-crypt/keynote/keynote-2.3-r3.ebuild
new file mode 100644
index 000000000000..db2452861e02
--- /dev/null
+++ b/app-crypt/keynote/keynote-2.3-r3.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="The KeyNote Trust-Management System"
+HOMEPAGE="http://www1.cs.columbia.edu/~angelos/keynote.html"
+SRC_URI="http://www1.cs.columbia.edu/~angelos/Code/${P}.tar.gz"
+
+LICENSE="keynote"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="ssl"
+
+RDEPEND="ssl? ( dev-libs/openssl )"
+DEPEND="${RDEPEND}
+ virtual/yacc"
+
+pkg_setup() {
+ tc-export AR CC RANLIB
+ # bug #448904
+ export ac_cv_path_AR="$(type -p $(tc-getAR))"
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-qa.patch
+ epatch "${FILESDIR}"/${P}-parallel-build.patch
+}
+
+src_compile() {
+ if use ssl; then
+ emake
+ else
+ emake nocrypto
+ fi
+}
+
+src_install() {
+ dobin keynote
+
+ dolib.a libkeynote.a
+
+ insinto /usr/include
+ doins keynote.h
+
+ doman man/keynote.[1345]
+ dodoc README HOWTO.add.crypto TODO
+}
diff --git a/app-crypt/keynote/metadata.xml b/app-crypt/keynote/metadata.xml
new file mode 100644
index 000000000000..d9cd2cad66c2
--- /dev/null
+++ b/app-crypt/keynote/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>
+<email>maintainer-needed@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-crypt/kstart/Manifest b/app-crypt/kstart/Manifest
new file mode 100644
index 000000000000..31fcefe33eeb
--- /dev/null
+++ b/app-crypt/kstart/Manifest
@@ -0,0 +1 @@
+DIST kstart-4.1.tar.gz 269215 SHA256 ad1a71be149d56473319bf3b9bca83a60caa3af463d52c134e8f187103700224 SHA512 74a8a3f2c8d2c95f166f5861fb05a2d659a31db3165e27e81e5cf216bde44809d937ebc00995f89fa3b9df68609e3081303eb30742f5c4d90151b1410f0bd3cc WHIRLPOOL d72c71729eb1eb972eec4329ffb442b02856ddfb73fffca5ffe97f8a8d299155fe5535b0ca59e98197c2b2214bd56e3f5739a42d269fe3dac011556eb588bd13
diff --git a/app-crypt/kstart/kstart-4.1.ebuild b/app-crypt/kstart/kstart-4.1.ebuild
new file mode 100644
index 000000000000..85834d19b06d
--- /dev/null
+++ b/app-crypt/kstart/kstart-4.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils
+
+DESCRIPTION="Modified versions of kinit for refreshing kerberos tickets
+automatically"
+HOMEPAGE="http://www.eyrie.org/~eagle/software/kstart"
+SRC_URI="http://archives.eyrie.org/software/kerberos/${P}.tar.gz"
+
+LICENSE="|| ( MIT Stanford ISC )"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="afs"
+
+DEPEND="virtual/krb5
+ afs? ( net-fs/openafs )"
+RDEPEND="$DEPEND"
+
+src_configure() {
+ econf \
+ --enable-reduced-depends \
+ "$(use_with afs)" \
+ "$(use_enable afs setpag)"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ doman k5start.1 krenew.1
+ dodoc README NEWS TODO examples/*
+}
diff --git a/app-crypt/kstart/metadata.xml b/app-crypt/kstart/metadata.xml
new file mode 100644
index 000000000000..9d8a37e6bcbf
--- /dev/null
+++ b/app-crypt/kstart/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>kerberos</herd>
+ <longdescription>Modified versions of kinit that can use srvtabs or
+ keytabs to authenticate, can run as daemons and wake up periodically
+ to refresh a ticket, and can run single commands with their own
+ authentication credentials and refresh those credentials until the
+ command exits.</longdescription>
+ <use>
+ <flag name="afs">
+ Enables afs support which means you can acquire an afs token and
+ set PAGs. It's recommended to set this USE if you need
+ authenticated access to an AFS cell for your daemon/app.
+ </flag>
+ </use>
+</pkgmetadata>
diff --git a/app-crypt/libscrypt/Manifest b/app-crypt/libscrypt/Manifest
new file mode 100644
index 000000000000..c767d0c8b839
--- /dev/null
+++ b/app-crypt/libscrypt/Manifest
@@ -0,0 +1,2 @@
+DIST libscrypt-1.19.tar.gz 18208 SHA256 8f398677b2b43e21423b800156b3379f3cb0d314e70eec2eb2e83a012bce854f SHA512 decf4fe6eb83d6a9ddd71cd9b9f4f9232bbadc8a7dc4c62aa737b162fdb97a18e6a8b3ac314c0900830b151c1b77a8dc00ffd0e47e47c425490ee4c43a21a735 WHIRLPOOL 877bcc095fedabf023bdd1eb921625889afdaf20512ee93135b602d75b12686317efe2e63b5f115efb7d846f2a021cab84a0ce5791bcaa1abb931710895bbcfc
+DIST libscrypt-1.20.tar.gz 18451 SHA256 6074add2170b7d00e080fe3a58d3dec76850a4f272d488f5e8cc3c4acb6d8e21 SHA512 c7db096c740681c328d4c156372147331c0441906c1f17656a8ddd8345348091295749c4e3105bf26106f826327acac9bda97efec4ce50ac56d64f903c59e9af WHIRLPOOL 5d854936f955fbc08ec7d31e89396d3198ea58cac326ea8ceaedcc360e412cefc9e75b49a959870924cabe79ccf14453209cf450ff0256873c1de744f65706ac
diff --git a/app-crypt/libscrypt/libscrypt-1.19.ebuild b/app-crypt/libscrypt/libscrypt-1.19.ebuild
new file mode 100644
index 000000000000..830211537fb9
--- /dev/null
+++ b/app-crypt/libscrypt/libscrypt-1.19.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit flag-o-matic multilib toolchain-funcs
+
+DESCRIPTION="Shared library to impliment the scrypt algorithm. See http://www.tarsnap.com/scrypt.html."
+HOMEPAGE="https://github.com/technion/libscrypt"
+SRC_URI="https://github.com/technion/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ export PREFIX=/usr
+ export LIBDIR=${PREFIX}/$(get_libdir)
+ export CC=$(tc-getCC)
+ export CFLAGS="$CFLAGS -fPIC"
+ export LDFLAGS="$LDFLAGS -Wl,-soname,libscrypt.so.0 -Wl,--version-script=libscrypt.version"
+ export CFLAGS_EXTRA=
+ emake
+}
diff --git a/app-crypt/libscrypt/libscrypt-1.20.ebuild b/app-crypt/libscrypt/libscrypt-1.20.ebuild
new file mode 100644
index 000000000000..6e5a3038f64d
--- /dev/null
+++ b/app-crypt/libscrypt/libscrypt-1.20.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit flag-o-matic multilib toolchain-funcs
+
+DESCRIPTION="Shared library to impliment the scrypt algorithm. See http://www.tarsnap.com/scrypt.html."
+HOMEPAGE="https://github.com/technion/libscrypt"
+SRC_URI="https://github.com/technion/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 arm ~mips ppc ppc64 sparc x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ export PREFIX=/usr
+ export LIBDIR=${PREFIX}/$(get_libdir)
+ export CC=$(tc-getCC)
+ export CFLAGS="$CFLAGS -fPIC"
+ export LDFLAGS="$LDFLAGS -Wl,-soname,libscrypt.so.0 -Wl,--version-script=libscrypt.version"
+ export CFLAGS_EXTRA=
+ emake
+}
diff --git a/app-crypt/libscrypt/metadata.xml b/app-crypt/libscrypt/metadata.xml
new file mode 100644
index 000000000000..5afd4895b479
--- /dev/null
+++ b/app-crypt/libscrypt/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>
+ <email>blueness@gentoo.org</email>
+ <name>Anthony G. Basile</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">technion/libscrypt</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/libsecret/Manifest b/app-crypt/libsecret/Manifest
new file mode 100644
index 000000000000..857d6784b06b
--- /dev/null
+++ b/app-crypt/libsecret/Manifest
@@ -0,0 +1,2 @@
+DIST libsecret-0.18.2.tar.xz 483980 SHA256 12fd288b012e1b2b1b54d586cd4c6507885715534644b4534b7ef7d7079ba443 SHA512 414580e2f717ba0a3adacd79da093dc5e982f49455c1d6dd0cc60d87d7d3ff9ce3147685a3f5091488b9c98840002739b9e1aa2252f0fd71639b471b34ff5c54 WHIRLPOOL 2c113d81893562a54eef28c095968dca43ef5c6e940b20eb9266034d29231e3bbcb173855a6db3695a294f0028012fd45ccd8d5330e34a9c1a3abd9c041e01b6
+DIST libsecret-0.18.tar.xz 480520 SHA256 0c73aa762dbd1e38ba7b03de350e23ce818cb810b0784375e95ef61e004b02e3 SHA512 5b3b460fe45b780fd4018dbb3b5fcc2c2e775725a8c74f4cfa86c00c643ccc1b29961b7e464c7b01846c5cc16a4bb9819c74016dd6758301ae2f67ab947c35bd WHIRLPOOL 2c3cb1a6a902665b3898a211317316d988791648d1d1f7144160f12376b2110ac99e8c3d3423ceb58a8ea0a3fb50efb42fc458aaa44f3aea52d2a1fab2d959a8
diff --git a/app-crypt/libsecret/libsecret-0.18.2.ebuild b/app-crypt/libsecret/libsecret-0.18.2.ebuild
new file mode 100644
index 000000000000..e2d87f704e63
--- /dev/null
+++ b/app-crypt/libsecret/libsecret-0.18.2.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+PYTHON_COMPAT=( python2_7 )
+VALA_MIN_API_VERSION=0.18
+VALA_USE_DEPEND=vapigen
+
+inherit gnome2 python-any-r1 vala virtualx
+
+DESCRIPTION="GObject library for accessing the freedesktop.org Secret Service API"
+HOMEPAGE="https://live.gnome.org/Libsecret"
+
+LICENSE="LGPL-2.1+ Apache-2.0" # Apache-2.0 license is used for tests only
+SLOT="0"
+IUSE="+crypt debug +introspection test vala"
+REQUIRED_USE="vala? ( introspection )"
+KEYWORDS="alpha amd64 arm ~arm64 ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd"
+
+RDEPEND="
+ >=dev-libs/glib-2.38:2
+ crypt? ( >=dev-libs/libgcrypt-1.2.2:0= )
+ introspection? ( >=dev-libs/gobject-introspection-1.29 )
+"
+PDEPEND=">=gnome-base/gnome-keyring-3
+"
+# PDEPEND to avoid circular dep (bug #547456)
+# Add ksecrets to PDEPEND when it's added to portage
+DEPEND="${RDEPEND}
+ dev-libs/libxslt
+ dev-util/gdbus-codegen
+ >=dev-util/gtk-doc-am-1.9
+ >=dev-util/intltool-0.35.0
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ dev-python/mock
+ introspection? (
+ ${PYTHON_DEPS}
+ >=dev-libs/gjs-1.32
+ dev-python/pygobject:3 )
+ )
+ vala? ( $(vala_depend) )
+"
+
+src_prepare() {
+ use vala && vala_src_prepare
+ gnome2_src_prepare
+}
+
+src_configure() {
+ DOCS="AUTHORS ChangeLog NEWS README"
+ gnome2_src_configure \
+ --enable-manpages \
+ --disable-strict \
+ --disable-coverage \
+ --disable-static \
+ $(use_enable crypt gcrypt) \
+ $(use_enable introspection) \
+ $(use_enable vala)
+}
+
+src_test() {
+ Xemake check
+}
diff --git a/app-crypt/libsecret/libsecret-0.18.ebuild b/app-crypt/libsecret/libsecret-0.18.ebuild
new file mode 100644
index 000000000000..f5f79bdb53cc
--- /dev/null
+++ b/app-crypt/libsecret/libsecret-0.18.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+PYTHON_COMPAT=( python2_7 )
+VALA_MIN_API_VERSION=0.18
+VALA_USE_DEPEND=vapigen
+
+inherit gnome2 python-any-r1 vala virtualx
+
+DESCRIPTION="GObject library for accessing the freedesktop.org Secret Service API"
+HOMEPAGE="https://live.gnome.org/Libsecret"
+
+LICENSE="LGPL-2.1+ Apache-2.0" # Apache-2.0 license is used for tests only
+SLOT="0"
+IUSE="+crypt debug +introspection test vala"
+REQUIRED_USE="vala? ( introspection )"
+KEYWORDS="alpha amd64 arm ~arm64 ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd"
+
+RDEPEND="
+ >=dev-libs/glib-2.38:2
+ crypt? ( >=dev-libs/libgcrypt-1.2.2:0= )
+ introspection? ( >=dev-libs/gobject-introspection-1.29 )
+"
+PDEPEND=">=gnome-base/gnome-keyring-3
+"
+# PDEPEND to avoid circular dep (bug #547456)
+# Add ksecrets to PDEPEND when it's added to portage
+DEPEND="${RDEPEND}
+ dev-libs/libxslt
+ dev-util/gdbus-codegen
+ >=dev-util/gtk-doc-am-1.9
+ >=dev-util/intltool-0.35.0
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ dev-python/mock
+ introspection? (
+ ${PYTHON_DEPS}
+ >=dev-libs/gjs-1.32
+ dev-python/pygobject:3 )
+ )
+ vala? ( $(vala_depend) )
+"
+
+src_prepare() {
+ # FIXME: disable failing test
+ sed -e '/test_get_sync);/d' \
+ -e '/test_get_async);/d' \
+ -i libsecret/test-service.c || die
+
+ use vala && vala_src_prepare
+ gnome2_src_prepare
+}
+
+src_configure() {
+ DOCS="AUTHORS ChangeLog NEWS README"
+ gnome2_src_configure \
+ --enable-manpages \
+ --disable-strict \
+ --disable-coverage \
+ --disable-static \
+ $(use_enable crypt gcrypt) \
+ $(use_enable introspection) \
+ $(use_enable vala)
+}
+
+src_test() {
+ Xemake check
+}
diff --git a/app-crypt/libsecret/metadata.xml b/app-crypt/libsecret/metadata.xml
new file mode 100644
index 000000000000..455620cf3c8e
--- /dev/null
+++ b/app-crypt/libsecret/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>gnome</herd>
+ <use>
+ <flag name="vala">Enable bindings for <pkg>dev-lang/vala</pkg></flag>
+ </use>
+</pkgmetadata>
diff --git a/app-crypt/libu2f-host/Manifest b/app-crypt/libu2f-host/Manifest
new file mode 100644
index 000000000000..7ac29be56773
--- /dev/null
+++ b/app-crypt/libu2f-host/Manifest
@@ -0,0 +1,2 @@
+DIST libu2f-host-0.0.2.tar.xz 444176 SHA256 c9e5478f5d139c30603afe65ea7ef52b0b18c93df60103b1dafeb7f3d17acbd8 SHA512 1b10a5c8d3d071b0d5576a2247b2cc40327fe6fe7370a7680cede7ebda72bd7f0edfa1661b78074a85654a5d979f757c64c090360c69feddb9c3212dc0438deb WHIRLPOOL f8cc5d7524c8ed7943945af44e5b93b43463118b06b186460090df3c69871319e0a347c94a28467b782eb09e2653ef72ab98478d8acf720b86b807223b1ee0b1
+DIST libu2f-host-0.0.4.tar.xz 446604 SHA256 852231611bd5c526406b984ae3c92ce3423ffc7a0ef01f6a060a43b64725ead6 SHA512 09406f45bea4cbca2fd26a4ad546b2233f56e1df098976cbd24dcab08e27bf9131fdc52557b4c701b8ce27b0ece7b405e8cda889591a5e3dc9420611336d1060 WHIRLPOOL 84ac2c5e4170ff45ecb9595c73dabd6a34f79bdcf4ef9bf3ceb32c481febe0537e3ab129fcd7a63c73389b3dbc0742834574b739ed36c419b6bc84b5c01a4d5b
diff --git a/app-crypt/libu2f-host/libu2f-host-0.0.2.ebuild b/app-crypt/libu2f-host/libu2f-host-0.0.2.ebuild
new file mode 100644
index 000000000000..e2be80325860
--- /dev/null
+++ b/app-crypt/libu2f-host/libu2f-host-0.0.2.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools-utils linux-info udev
+
+DESCRIPTION="Yubico Universal 2nd Factor (U2F) Host C Library"
+HOMEPAGE="https://developers.yubico.com/libu2f-host/"
+SRC_URI="https://developers.yubico.com/${PN}/Releases/${P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="kernel_linux static-libs systemd"
+
+RDEPEND="
+ dev-libs/hidapi
+ dev-libs/json-c"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+RDEPEND="${RDEPEND}
+ systemd? ( sys-apps/systemd[acl] )"
+
+CONFIG_CHECK="~HIDRAW"
+
+src_prepare() {
+ autotools-utils_src_prepare
+
+ sed -e 's:TAG+="uaccess":MODE="0664", GROUP="plugdev":g' \
+ 70-u2f.rules > 70-u2f-udev.rules || die
+}
+
+src_configure() {
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+
+ if use kernel_linux; then
+ if use systemd; then
+ udev_dorules 70-u2f.rules
+ else
+ udev_newrules 70-u2f-udev.rules 70-u2f.rules
+ fi
+ fi
+}
diff --git a/app-crypt/libu2f-host/libu2f-host-0.0.4.ebuild b/app-crypt/libu2f-host/libu2f-host-0.0.4.ebuild
new file mode 100644
index 000000000000..f1d821109f40
--- /dev/null
+++ b/app-crypt/libu2f-host/libu2f-host-0.0.4.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools-utils linux-info udev
+
+DESCRIPTION="Yubico Universal 2nd Factor (U2F) Host C Library"
+HOMEPAGE="https://developers.yubico.com/libu2f-host/"
+SRC_URI="https://developers.yubico.com/${PN}/Releases/${P}.tar.xz"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="kernel_linux static-libs systemd"
+
+RDEPEND="
+ dev-libs/hidapi
+ dev-libs/json-c"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+RDEPEND="${RDEPEND}
+ systemd? ( sys-apps/systemd[acl] )"
+
+CONFIG_CHECK="~HIDRAW"
+
+src_prepare() {
+ autotools-utils_src_prepare
+
+ sed -e 's:TAG+="uaccess":MODE="0664", GROUP="plugdev":g' \
+ 70-u2f.rules > 70-u2f-udev.rules || die
+}
+
+src_configure() {
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+
+ if use kernel_linux; then
+ if use systemd; then
+ udev_dorules 70-u2f.rules
+ else
+ udev_newrules 70-u2f-udev.rules 70-u2f.rules
+ fi
+ fi
+}
diff --git a/app-crypt/libu2f-host/metadata.xml b/app-crypt/libu2f-host/metadata.xml
new file mode 100644
index 000000000000..1b1e3adf7579
--- /dev/null
+++ b/app-crypt/libu2f-host/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <maintainer>
+ <email>flameeyes@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="systemd">
+ Use user ACLs rather than plugdev group to give user access to the HIDRAW
+ device.
+ </flag>
+ </use>
+ <upstream>
+ <remote-id type="github">Yubico/libu2f-host</remote-id>
+ <bugs-to>https://github.com/Yubico/libu2f-host/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/libykneomgr/Manifest b/app-crypt/libykneomgr/Manifest
new file mode 100644
index 000000000000..847dd4fd8b90
--- /dev/null
+++ b/app-crypt/libykneomgr/Manifest
@@ -0,0 +1,2 @@
+DIST libykneomgr-0.1.6.tar.gz 633881 SHA256 7c0ddf2b5397e2d335da5d727c55d0be6a9ab43263c60edcac1ffe45b526ca95 SHA512 deb8deafa3c748bb888309d9d2d62f3657cd6d9d103ceee738abbc47a8e4466535e9641f104f5628657ec8924306b8d9d0a90cd2485dd5ad46dd2d8ee932fab4 WHIRLPOOL 3c9f1c53e411633b74b56eb991155a3ffbe2453a336b10b00a3e69a55f4c30b4df4ddfb50a7252ea058a76211d0683d029428bb24c839586b0277bde7297c582
+DIST libykneomgr-0.1.7.tar.gz 625509 SHA256 dcce20274976e29b63380633928e1e75e05544430fca37082465c9075ea29f5a SHA512 b97d0de0050a4dea55963403a8710fe94dbef05041ec4fc42c4f2e7fc7ebd64b94aeb8d8c0231ad7828840efff28e6bd5b392b25d6bcafbeaab469a6e52e5163 WHIRLPOOL 6af69069963859580fa03fd41e794d01895aaaefae3b87ae8a60575dfb82648eea5efb5970ac95608112969a174dbd75a7a2c8dade4c8ebffbed866ca6506fb6
diff --git a/app-crypt/libykneomgr/libykneomgr-0.1.6.ebuild b/app-crypt/libykneomgr/libykneomgr-0.1.6.ebuild
new file mode 100644
index 000000000000..644b5933cc40
--- /dev/null
+++ b/app-crypt/libykneomgr/libykneomgr-0.1.6.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools-utils udev
+
+DESCRIPTION="YubiKey NEO CCID Manager C Library"
+HOMEPAGE="https://developers.yubico.com/libykneomgr/"
+SRC_URI="https://developers.yubico.com/${PN}/Releases/${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="kernel_linux"
+
+RDEPEND="sys-apps/pcsc-lite
+ dev-libs/libzip"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+RDEPEND="${RDEPEND}
+ >=app-crypt/ccid-1.4.18[usb]"
+
+src_configure() {
+ local myeconfargs=(
+ --with-backend=pcsc
+ --disable-static
+ )
+
+ autotools-utils_src_configure
+}
diff --git a/app-crypt/libykneomgr/libykneomgr-0.1.7.ebuild b/app-crypt/libykneomgr/libykneomgr-0.1.7.ebuild
new file mode 100644
index 000000000000..e6ffd1d0de4a
--- /dev/null
+++ b/app-crypt/libykneomgr/libykneomgr-0.1.7.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools-utils udev
+
+DESCRIPTION="YubiKey NEO CCID Manager C Library"
+HOMEPAGE="https://developers.yubico.com/libykneomgr/"
+SRC_URI="https://developers.yubico.com/${PN}/Releases/${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="kernel_linux"
+
+RDEPEND="sys-apps/pcsc-lite
+ dev-libs/libzip"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+RDEPEND="${RDEPEND}
+ >=app-crypt/ccid-1.4.18[usb]"
+
+src_configure() {
+ local myeconfargs=(
+ --with-backend=pcsc
+ --disable-static
+ )
+
+ autotools-utils_src_configure
+}
diff --git a/app-crypt/libykneomgr/metadata.xml b/app-crypt/libykneomgr/metadata.xml
new file mode 100644
index 000000000000..415933a13d78
--- /dev/null
+++ b/app-crypt/libykneomgr/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <maintainer>
+ <email>flameeyes@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Yubico/libykneomgr</remote-id>
+ <bugs-to>https://github.com/Yubico/libykneomgr/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/loop-aes-losetup/Manifest b/app-crypt/loop-aes-losetup/Manifest
new file mode 100644
index 000000000000..95c520a19ce6
--- /dev/null
+++ b/app-crypt/loop-aes-losetup/Manifest
@@ -0,0 +1,2 @@
+DIST util-linux-2.21-20120228.diff.bz2 43809 SHA256 fc28d4f0e2737b53a4db59072ab0fcf4180a8ece28c79219a21780124798572a SHA512 94135ed18699efd949f5937576da2721957177bbef9be8234ae48ee34f30f4cb65361a541f79c636ed6d6bb5c2786e1096d096407834e1421d82ee78ae0790e9 WHIRLPOOL ba23dccc56fc49d7ad9075537317ad4580ace2a4cd8f6b0250f42035c03ba910f3cafa8e8b1da4c7e5a0960d74c42f2706fda579a3b4a6cadc61dccd2fff3ff0
+DIST util-linux-2.21.tar.xz 2954504 SHA256 5192e8ba7dcf3cf0dc447f07b3d177f6cb3fb49dfae54ac45d6c8c7d86eeab0f SHA512 aab384db2d1a3e08fd560a3e4d7ed7d6b2ceac61386db94eecae65bd540200a8549e141b99d8dad5c6f96587940b574d0544984acef6a35d1f24870e0072c552 WHIRLPOOL 1968ddd63fd21ef9542bb8afc77292ed2bad6f83e1cd67aa4159db8b320abd80ee0d20a062df35ae2ad91e0bc9068168b9f9e44aa39eaf4861d436dd855bea5d
diff --git a/app-crypt/loop-aes-losetup/loop-aes-losetup-2.21.ebuild b/app-crypt/loop-aes-losetup/loop-aes-losetup-2.21.ebuild
new file mode 100644
index 000000000000..03f1261472c7
--- /dev/null
+++ b/app-crypt/loop-aes-losetup/loop-aes-losetup-2.21.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+EGIT_REPO_URI="git://git.kernel.org/pub/scm/utils/util-linux/util-linux.git"
+inherit eutils toolchain-funcs flag-o-matic autotools
+
+MY_PV="${PV/_/-}"
+MY_P="util-linux-${MY_PV}"
+LOOPAES_PV="${PV}-20120228"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="Various useful Linux utilities"
+HOMEPAGE="http://www.kernel.org/pub/linux/utils/util-linux/"
+SRC_URI="mirror://kernel/linux/utils/util-linux/v${PV:0:4}/${MY_P}.tar.xz
+ http://loop-aes.sourceforge.net/updates/util-linux-${LOOPAES_PV}.diff.bz2"
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~x86-linux"
+
+LICENSE="GPL-2 GPL-3 LGPL-2.1 BSD-4 MIT public-domain"
+SLOT="0"
+IUSE="nls selinux uclibc static"
+
+RDEPEND="selinux? ( sys-libs/libselinux )"
+DEPEND="${RDEPEND}
+ nls? ( sys-devel/gettext )
+ virtual/os-headers"
+
+src_prepare() {
+ epatch "${WORKDIR}"/util-linux-*.diff
+ use uclibc && sed -i -e s/versionsort/alphasort/g -e s/strverscmp.h/dirent.h/g mount/lomount.c
+ eautoreconf
+ elibtoolize
+}
+
+lfs_fallocate_test() {
+ # Make sure we can use fallocate with LFS #300307
+ cat <<-EOF > "${T}"/fallocate.c
+ #define _GNU_SOURCE
+ #include <fcntl.h>
+ main() { return fallocate(0, 0, 0, 0); }
+ EOF
+ append-lfs-flags
+ $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} "${T}"/fallocate.c -o /dev/null >/dev/null 2>&1 \
+ || export ac_cv_func_fallocate=no
+ rm -f "${T}"/fallocate.c
+}
+
+src_configure() {
+ lfs_fallocate_test
+ econf \
+ --disable-agetty \
+ --disable-chsh-only-listed \
+ --disable-cramfs \
+ --disable-fallocate \
+ --disable-fsck \
+ --disable-kill \
+ --disable-last \
+ --disable-libmount \
+ --disable-libmount-mount \
+ --disable-libuuid \
+ --disable-login-utils \
+ --disable-makeinstall-chown \
+ --disable-makeinstall-setuid \
+ --disable-mesg \
+ --disable-mountpoint \
+ --disable-partx \
+ --disable-pg-bell \
+ --disable-pivot_root \
+ --disable-raw \
+ --disable-rename \
+ --disable-require-password \
+ --disable-reset \
+ --disable-schedutils \
+ --disable-switch_root \
+ --disable-unshare \
+ --disable-use-tty-group \
+ --disable-uuidd \
+ --disable-wall \
+ --disable-write \
+ --enable-libblkid \
+ --enable-mount \
+ --without-ncurses \
+ --without-udev \
+ $(use_enable nls) \
+ $(use_with selinux) \
+ $(tc-has-tls || echo --disable-tls) \
+ $(use static && echo --enable-static-programs=losetup)
+}
+
+src_install() {
+ emake install DESTDIR="${T}/root"
+ newsbin "${T}/root/sbin/losetup" loop-aes-losetup
+ use static && newsbin "${T}/root/bin/losetup.static" loop-aes-losetup.static
+}
diff --git a/app-crypt/loop-aes-losetup/metadata.xml b/app-crypt/loop-aes-losetup/metadata.xml
new file mode 100644
index 000000000000..b02ffbb5d348
--- /dev/null
+++ b/app-crypt/loop-aes-losetup/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/mcrypt/Manifest b/app-crypt/mcrypt/Manifest
new file mode 100644
index 000000000000..5e4c4e416764
--- /dev/null
+++ b/app-crypt/mcrypt/Manifest
@@ -0,0 +1 @@
+DIST mcrypt-2.6.8.tar.gz 471915 SHA256 5145aa844e54cca89ddab6fb7dd9e5952811d8d787c4f4bf27eb261e6c182098 SHA512 eae5f831e950df69eb93efc8314100b4b5dc8a535b1d00f500e6b25382efcec321346776a92dadf101b878ef46a47de2e9e81f5ddf5c73563ece4741f169c8d1 WHIRLPOOL f0853fd1d244de6310a4236fc0922a7d19e8c418b8d4b9cd0a66c4571843ffaf421dca7064c82ae0fde5f3aae4806fe27aa9dc05a705768f52a80586f941b538
diff --git a/app-crypt/mcrypt/files/mcrypt-2.6.7-qa.patch b/app-crypt/mcrypt/files/mcrypt-2.6.7-qa.patch
new file mode 100644
index 000000000000..368884f7fecb
--- /dev/null
+++ b/app-crypt/mcrypt/files/mcrypt-2.6.7-qa.patch
@@ -0,0 +1,22 @@
+diff -urNp mcrypt-2.6.7.org/src/gaaout.c mcrypt-2.6.7/src/gaaout.c
+--- mcrypt-2.6.7.org/src/gaaout.c 2007-06-09 11:39:14.000000000 +0300
++++ mcrypt-2.6.7/src/gaaout.c 2007-11-10 14:30:22.000000000 +0200
+@@ -5,6 +5,7 @@
+
+
+ #include <defines.h>
++#include "mcrypt_int.h"
+
+ #include <stdio.h>
+ #include <string.h>
+diff -urNp mcrypt-2.6.7.org/src/mcrypt_int.h mcrypt-2.6.7/src/mcrypt_int.h
+--- mcrypt-2.6.7.org/src/mcrypt_int.h 2003-09-08 20:25:50.000000000 +0300
++++ mcrypt-2.6.7/src/mcrypt_int.h 2007-11-10 14:27:42.000000000 +0200
+@@ -15,3 +15,7 @@ void rol_buf(void * buffer, int buffersi
+ void mcrypt_version();
+ void mcrypt_license();
+ void usage(void);
++
++int print_list(void);
++int print_hashlist(void);
++int print_keylist(void);
diff --git a/app-crypt/mcrypt/files/mcrypt-2.6.8-format-string.patch b/app-crypt/mcrypt/files/mcrypt-2.6.8-format-string.patch
new file mode 100644
index 000000000000..d602bed46bfe
--- /dev/null
+++ b/app-crypt/mcrypt/files/mcrypt-2.6.8-format-string.patch
@@ -0,0 +1,31 @@
+--- src/errors.c
++++ src/errors.c
+@@ -25,24 +25,24 @@
+
+ void err_quit(char *errmsg)
+ {
+- fprintf(stderr, errmsg);
++ fprintf(stderr, "%s", errmsg);
+ exit(-1);
+ }
+
+ void err_warn(char *errmsg)
+ {
+ if (quiet <= 1)
+- fprintf(stderr, errmsg);
++ fprintf(stderr, "%s", errmsg);
+ }
+
+ void err_info(char *errmsg)
+ {
+ if (quiet == 0)
+- fprintf(stderr, errmsg);
++ fprintf(stderr, "%s", errmsg);
+ }
+
+ void err_crit(char *errmsg)
+ {
+ if (quiet <= 2)
+- fprintf(stderr, errmsg);
++ fprintf(stderr, "%s", errmsg);
+ }
diff --git a/app-crypt/mcrypt/files/mcrypt-2.6.8-overflow.patch b/app-crypt/mcrypt/files/mcrypt-2.6.8-overflow.patch
new file mode 100644
index 000000000000..97c658bb2d3b
--- /dev/null
+++ b/app-crypt/mcrypt/files/mcrypt-2.6.8-overflow.patch
@@ -0,0 +1,25 @@
+From 3efb40e17ce4f76717ae17a1ce1e1f747ddf59fd Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 22 Dec 2012 22:37:06 +0200
+Subject: [PATCH] cleanup: buffer overflow
+
+---
+ src/extra.c | 2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git a/src/extra.c b/src/extra.c
+index 3082f82..c7a1ac0 100644
+--- a/src/extra.c
++++ b/src/extra.c
+@@ -241,6 +241,8 @@ int check_file_head(FILE * fstream, char *algorithm, char *mode,
+ if (m_getbit(6, flags) == 1) { /* if the salt bit is set */
+ if (m_getbit(0, sflag) != 0) { /* if the first bit is set */
+ *salt_size = m_setbit(0, sflag, 0);
++ if (*salt_size > sizeof(tmp_buf))
++ err_quit(_("Salt is too long\n"));
+ if (*salt_size > 0) {
+ fread(tmp_buf, 1, *salt_size,
+ fstream);
+--
+1.7.8.6
+
diff --git a/app-crypt/mcrypt/files/mcrypt-2.6.8-segv.patch b/app-crypt/mcrypt/files/mcrypt-2.6.8-segv.patch
new file mode 100644
index 000000000000..478b3cbc0f6e
--- /dev/null
+++ b/app-crypt/mcrypt/files/mcrypt-2.6.8-segv.patch
@@ -0,0 +1,40 @@
+From 5bee29fae8f0e936ad4c957aef6035d09532a57a Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 22 Dec 2012 22:04:27 +0200
+Subject: [PATCH] cleanup: fixup segv on buffer access
+
+use exact buffer size instead of guess.
+
+do not copy out of source buffer.
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ src/rfc2440.c | 5 +++--
+ 1 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/rfc2440.c b/src/rfc2440.c
+index 5a1f296..929b9ab 100644
+--- a/src/rfc2440.c
++++ b/src/rfc2440.c
+@@ -497,7 +497,7 @@ plaintext_encode(const USTRING dat)
+ time_t t;
+
+ assert(dat->len > 0);
+- result = make_ustring( NULL, 2 * dat->len); /* xxx */
++ result = make_ustring( NULL, dat->len + 12); /* xxx */
+ newdat = (USTRING)dat;
+ result->d[pos++] = (0x80 | 0x40 | PKT_PLAINTEXT);
+
+@@ -810,7 +810,8 @@ encrypted_encode(const USTRING pt, const DEK *dek)
+ _mcrypt_encrypt(dek->hd, rndpref, dek->blocklen + 2, NULL, 0);
+ _mcrypt_sync(dek->hd, rndpref, dek->blocklen);
+
+- ct = make_ustring( rndpref, 2 * pt->len); /* xxx */
++ ct = make_ustring( NULL, dek->blocklen + 2 + pt->len + 12); /* xxx */
++ memcpy(ct->d, rndpref, dek->blocklen + 2);
+ pos = dek->blocklen + 2;
+
+ _mcrypt_encrypt(dek->hd, ct->d + pos, pt->len, pt->d, pt->len);
+--
+1.7.8.6
+
diff --git a/app-crypt/mcrypt/files/mcrypt-2.6.8-sprintf.patch b/app-crypt/mcrypt/files/mcrypt-2.6.8-sprintf.patch
new file mode 100644
index 000000000000..a287680958bb
--- /dev/null
+++ b/app-crypt/mcrypt/files/mcrypt-2.6.8-sprintf.patch
@@ -0,0 +1,108 @@
+Description: [CVE-2012-4527] Stack-based buffer overflow with long file names
+ .
+ A buffer overflow in mcrypt version 2.6.8 and earlier due to long filenames.
+ If a user were tricked into attempting to encrypt/decrypt specially crafted
+ long filename(s), this flaw would cause a stack-based buffer overflow that
+ could potentially lead to arbitrary code execution.
+ .
+ Note that this is caught by FORTIFY_SOURCE, which makes this a crash-only
+ bug on wheezy.
+Author: Attila Bogar, Jean-Michel Vourgère <jmv_deb@nirgal.com>
+Origin: https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2012-4527
+Bug: CVE-2012-4527
+Bug-Debian: http://bugs.debian.org/690924
+Forwarded: no
+Last-Update: 2012-11-01
+Index: mcrypt-2.6.8/src/mcrypt.c
+===================================================================
+--- mcrypt-2.6.8.orig/src/mcrypt.c
++++ mcrypt-2.6.8/src/mcrypt.c
+@@ -41,4 +41,6 @@
+
++/* Temporary error message can contain one file name and 1k of text */
++#define ERRWIDTH ((PATH_MAX)+1024)
+-char tmperr[128];
++char tmperr[ERRWIDTH];
+ unsigned int stream_flag = FALSE;
+ char *keymode = NULL;
+ char *mode = NULL;
+@@ -482,7 +485,7 @@
+ #ifdef HAVE_STAT
+ if (stream_flag == FALSE) {
+ if (is_normal_file(file[i]) == FALSE) {
+- sprintf(tmperr,
++ snprintf(tmperr, ERRWIDTH,
+ _
+ ("%s: %s is not a regular file. Skipping...\n"),
+ program_name, file[i]);
+@@ -501,7 +504,7 @@
+ dinfile = file[i];
+ if ((isatty(fileno((FILE *) (stdin))) == 1)
+ && (stream_flag == TRUE) && (force == 0)) { /* not a tty */
+- sprintf(tmperr,
++ snprintf(tmperr, ERRWIDTH,
+ _
+ ("%s: Encrypted data will not be read from a terminal.\n"),
+ program_name);
+@@ -520,7 +523,7 @@
+ einfile = file[i];
+ if ((isatty(fileno((FILE *) (stdout))) == 1)
+ && (stream_flag == TRUE) && (force == 0)) { /* not a tty */
+- sprintf(tmperr,
++ snprintf(tmperr, ERRWIDTH,
+ _
+ ("%s: Encrypted data will not be written to a terminal.\n"),
+ program_name);
+@@ -544,7 +547,7 @@
+ strcpy(outfile, einfile);
+ /* if file has already the .nc ignore it */
+ if (strstr(outfile, ".nc") != NULL) {
+- sprintf(tmperr,
++ snprintf(tmperr, ERRWIDTH,
+ _
+ ("%s: file %s has the .nc suffix... skipping...\n"),
+ program_name, outfile);
+@@ -590,10 +593,10 @@
+
+ if (x == 0) {
+ if (stream_flag == FALSE) {
+- sprintf(tmperr, _("File %s was decrypted.\n"), dinfile);
++ snprintf(tmperr, ERRWIDTH, _("File %s was decrypted.\n"), dinfile);
+ err_warn(tmperr);
+ } else {
+- sprintf(tmperr, _("Stdin was decrypted.\n"));
++ snprintf(tmperr, ERRWIDTH, _("Stdin was decrypted.\n"));
+ err_warn(tmperr);
+ }
+ #ifdef HAVE_STAT
+@@ -610,7 +613,7 @@
+
+ } else {
+ if (stream_flag == FALSE) {
+- sprintf(tmperr,
++ snprintf(tmperr, ERRWIDTH,
+ _
+ ("File %s was NOT decrypted successfully.\n"),
+ dinfile);
+@@ -636,10 +639,10 @@
+
+ if (x == 0) {
+ if (stream_flag == FALSE) {
+- sprintf(tmperr, _("File %s was encrypted.\n"), einfile);
++ snprintf(tmperr, ERRWIDTH, _("File %s was encrypted.\n"), einfile);
+ err_warn(tmperr);
+ } else {
+- sprintf(tmperr, _("Stdin was encrypted.\n"));
++ snprintf(tmperr, ERRWIDTH, _("Stdin was encrypted.\n"));
+ err_warn(tmperr);
+ }
+ #ifdef HAVE_STAT
+@@ -655,7 +658,7 @@
+
+ } else {
+ if (stream_flag == FALSE) {
+- sprintf(tmperr,
++ snprintf(tmperr, ERRWIDTH,
+ _
+ ("File %s was NOT encrypted successfully.\n"),
+ einfile);
diff --git a/app-crypt/mcrypt/files/mcrypt-2.6.8-stdlib.h.patch b/app-crypt/mcrypt/files/mcrypt-2.6.8-stdlib.h.patch
new file mode 100644
index 000000000000..7cfae9815207
--- /dev/null
+++ b/app-crypt/mcrypt/files/mcrypt-2.6.8-stdlib.h.patch
@@ -0,0 +1,11 @@
+--- src/rfc2440.c 2008-11-17 06:50:01.000000000 +1100
++++ src/rfc2440.c 2010-08-10 13:48:28.000000000 +1000
+@@ -23,7 +23,7 @@
+ #include <zlib.h>
+ #endif
+ #include <stdio.h>
+-#include <malloc.h>
++#include <stdlib.h>
+
+ #include "xmalloc.h"
+ #include "keys.h"
diff --git a/app-crypt/mcrypt/mcrypt-2.6.8-r2.ebuild b/app-crypt/mcrypt/mcrypt-2.6.8-r2.ebuild
new file mode 100644
index 000000000000..b90de3e9c3d8
--- /dev/null
+++ b/app-crypt/mcrypt/mcrypt-2.6.8-r2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils
+
+DESCRIPTION="replacement of the old unix crypt(1)"
+HOMEPAGE="http://mcrypt.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mcrypt/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc sparc x86 ~x86-macos"
+IUSE="nls"
+
+DEPEND=">=dev-libs/libmcrypt-2.5.8
+ >=app-crypt/mhash-0.9.9
+ sys-libs/zlib"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-2.6.7-qa.patch"
+ epatch "${FILESDIR}/${P}-stdlib.h.patch"
+ epatch "${FILESDIR}/${P}-segv.patch"
+ epatch "${FILESDIR}/${P}-sprintf.patch"
+ epatch "${FILESDIR}/${P}-format-string.patch"
+ epatch "${FILESDIR}/${P}-overflow.patch"
+}
+
+src_configure() {
+ econf $(use_enable nls)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ dodoc AUTHORS NEWS README THANKS TODO
+}
diff --git a/app-crypt/mcrypt/metadata.xml b/app-crypt/mcrypt/metadata.xml
new file mode 100644
index 000000000000..73113c99c420
--- /dev/null
+++ b/app-crypt/mcrypt/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <maintainer>
+ <email>robbat2@gentoo.org</email>
+ <name>Robin H. Johnson</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">mcrypt</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/md4sum/Manifest b/app-crypt/md4sum/Manifest
new file mode 100644
index 000000000000..f2cc427609bd
--- /dev/null
+++ b/app-crypt/md4sum/Manifest
@@ -0,0 +1 @@
+DIST md4sum-0.02.03.tar.gz 26819 SHA256 241eb780282923fbaba5c2b2f1d72516bd47a14924c57790fc18ba05480e57c7 SHA512 5a05760aa6a770d9f55a41e42bdf6801dcd67bc804ead5bd84aecc48e5ee5a7c8b01d4a1e1767a4cc1f8695d66ed16c6a1f09b58d236c27db317f227e02e3762 WHIRLPOOL 90db3f2aa906d647d095d876ea471d01674b65e654b7fb5d56c19c0f5964814509a24351fe92279c63aae5bf74dc2e71e232f638289164403d6d9496236f92bd
diff --git a/app-crypt/md4sum/files/md4sum-fix-out-of-bounds-write.diff b/app-crypt/md4sum/files/md4sum-fix-out-of-bounds-write.diff
new file mode 100644
index 000000000000..1275996080ee
--- /dev/null
+++ b/app-crypt/md4sum/files/md4sum-fix-out-of-bounds-write.diff
@@ -0,0 +1,11 @@
+--- a/md4sum.c 2007-04-11 23:22:38.000000000 +0200
++++ b/md4sum.c 2015-02-15 21:57:59.699682995 +0100
+@@ -126,7 +126,7 @@
+ int i;
+ static char s[33];
+ for( i=0; i<16; i++ ) sprintf( &s[2*i], "%02x", digest[i] );
+- s[33]= '\0';
++ s[32]= '\0';
+ return( s );
+ }
+
diff --git a/app-crypt/md4sum/md4sum-0.02.03-r1.ebuild b/app-crypt/md4sum/md4sum-0.02.03-r1.ebuild
new file mode 100644
index 000000000000..36f95b68e07d
--- /dev/null
+++ b/app-crypt/md4sum/md4sum-0.02.03-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="md4 and edonkey hash algorithm tool"
+HOMEPAGE="http://linux.xulin.de/c/"
+SRC_URI="http://linux.xulin.de/c/${P}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~ppc"
+IUSE=""
+
+src_prepare() {
+ epatch "${FILESDIR}/md4sum-fix-out-of-bounds-write.diff"
+}
+
+src_compile() {
+ sed -i -e "s:CFLAGS=:CFLAGS=${CFLAGS} :g" \
+ -e "s:install -s:install:g" Makefile
+ emake LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" || die "emake failed"
+}
+
+src_install() {
+ mkdir -p "${D}/usr/bin"
+ mkdir -p "${D}/usr/share/man/man1"
+ einstall || die "einstall failed"
+}
diff --git a/app-crypt/md4sum/metadata.xml b/app-crypt/md4sum/metadata.xml
new file mode 100644
index 000000000000..8cb548491f4e
--- /dev/null
+++ b/app-crypt/md4sum/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><email>hanno@gentoo.org</email></maintainer>
+</pkgmetadata>
diff --git a/app-crypt/md5deep/Manifest b/app-crypt/md5deep/Manifest
new file mode 100644
index 000000000000..07a74610f01b
--- /dev/null
+++ b/app-crypt/md5deep/Manifest
@@ -0,0 +1,2 @@
+DIST md5deep-4.3.tar.gz 1416180 SHA256 905bcf8bddf0e7e2650b280d5e7af8cb8cd41dad4f299751dfec397dcb4f8d54 SHA512 fe1240e6ae039b18d35a9de0cf15fb77eaac9d5505b6b550eb32858bf6d603f8186de06114d40325d5071640f46cec70795e9c192fa7b6ca9022a12c212a9b14 WHIRLPOOL 89fe1f5a5a9502660f823608b7fc5c752d3b71acbb210a4ce7c9349e02bbbc131b26df29f69cbae2ba234685cf0db38014d71f2b019f8189bd0e05e6c2b81e52
+DIST md5deep-4.4.tar.gz 4534687 SHA256 dbda8ab42a9c788d4566adcae980d022d8c3d52ee732f1cbfa126c551c8fcc46 SHA512 c37ec85ed04d4452f9038f43434c02e064cf9e17c4eaa233867dba0236443922a14ccb8ec76c68820087751c2ca3db014d3f17dd8fcd2c2bde84d620aae50de1 WHIRLPOOL 2b85d77c6108b012dcca632b54a55b1fc7c942e7efbf6be26ffdf6ed17ce66909fbeae397f139f494385856f7acfaebf4041677c24e0b4ef9e5803f776fee1f3
diff --git a/app-crypt/md5deep/md5deep-4.3.ebuild b/app-crypt/md5deep/md5deep-4.3.ebuild
new file mode 100644
index 000000000000..14b09be7421b
--- /dev/null
+++ b/app-crypt/md5deep/md5deep-4.3.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Expanded md5sum program with recursive and comparison options"
+HOMEPAGE="http://md5deep.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="public-domain GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~mips ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+RESTRICT="test"
+
+DOCS="AUTHORS ChangeLog FILEFORMAT NEWS README TODO"
diff --git a/app-crypt/md5deep/md5deep-4.4.ebuild b/app-crypt/md5deep/md5deep-4.4.ebuild
new file mode 100644
index 000000000000..924ff7ebb071
--- /dev/null
+++ b/app-crypt/md5deep/md5deep-4.4.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+AUTOTOOLS_AUTORECONF=1
+inherit autotools-utils
+
+DESCRIPTION="Expanded md5sum program with recursive and comparison options"
+HOMEPAGE="http://md5deep.sourceforge.net/"
+SRC_URI="https://github.com/jessek/hashdeep/archive/release-${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="public-domain GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+S=${WORKDIR}/hashdeep-release-${PV}
+
+DOCS=( AUTHORS ChangeLog FILEFORMAT NEWS README.md TODO )
diff --git a/app-crypt/md5deep/metadata.xml b/app-crypt/md5deep/metadata.xml
new file mode 100644
index 000000000000..ee3d7c9500bc
--- /dev/null
+++ b/app-crypt/md5deep/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>
+ <email>tristan@gentoo.org</email>
+ <name>Tristan Heaven</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jessek/hashdeep</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/md6sum/Manifest b/app-crypt/md6sum/Manifest
new file mode 100644
index 000000000000..d414de9a22a2
--- /dev/null
+++ b/app-crypt/md6sum/Manifest
@@ -0,0 +1 @@
+DIST md6sum-1.0.tar.gz 125626 SHA256 5812286dabf26d576cf9b30d3088da1e7924362442144ecdfa38738530e297e0 SHA512 8253a68dd036dd98b22c39a35a75f9bbdc4018ea63dc8f7823c831090d19f2f92a727458b4dc35388e494dbf496b9f5de693a1cfb3e5a8ca8441f31f0e817d46 WHIRLPOOL 05d3e1c8c5065b8003e620b3824310393ad64c22e94d4e3acc18f508e5a6461ba222c1b53e782616a0bd5372c3cadc7e774b24e9782e8137b1336af5740b0a04
diff --git a/app-crypt/md6sum/files/md6sum-1.0-cflags.patch b/app-crypt/md6sum/files/md6sum-1.0-cflags.patch
new file mode 100644
index 000000000000..18e1937c4424
--- /dev/null
+++ b/app-crypt/md6sum/files/md6sum-1.0-cflags.patch
@@ -0,0 +1,27 @@
+--- Makefile.in 2012-11-07 22:04:51.207982344 -0500
++++ Makefile.in.new 2012-11-07 22:06:00.905977580 -0500
+@@ -18,19 +18,19 @@
+ all: md6sum
+
+ md6sum: $(OBJS)
+- $(CC) $(OBJS) $(CXXFLAGS) $(LDFLAGS) -o $@
++ $(CC) $(OBJS) $(CFLAGS) $(LDFLAGS) -o $@
+
+ md6_compress.o: md6_compress.c inttypes.h md6.h md6_nist.h stdint.h
+- $(CC) $(CXXFLAGS) -c $< -o $@
++ $(CC) $(CFLAGS) -c $< -o $@
+
+ md6_mode.o: md6_mode.c inttypes.h md6.h md6_nist.h stdint.h
+- $(CC) $(CXXFLAGS) -c $< -o $@
++ $(CC) $(CFLAGS) -c $< -o $@
+
+ md6_nist.o: md6_nist.c inttypes.h md6.h md6_nist.h stdint.h
+- $(CC) $(CXXFLAGS) -c $< -o $@
++ $(CC) $(CFLAGS) -c $< -o $@
+
+ md6sum.o: md6sum.c inttypes.h md6.h md6_nist.h stdint.h
+- $(CC) $(CXXFLAGS) -c $< -o $@
++ $(CC) $(CFLAGS) -c $< -o $@
+
+ clean:
+ rm *.o
diff --git a/app-crypt/md6sum/files/md6sum-1.0-format-security.patch b/app-crypt/md6sum/files/md6sum-1.0-format-security.patch
new file mode 100644
index 000000000000..061ec7b5f1b4
--- /dev/null
+++ b/app-crypt/md6sum/files/md6sum-1.0-format-security.patch
@@ -0,0 +1,26 @@
+From 95833e409336bd0a4a656b7e2d0a9598dfe3f546 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 30 Aug 2014 21:25:23 +0300
+Subject: [PATCH] build: fix warning of format-security
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ md6sum.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/md6sum.c b/md6sum.c
+index 2401a5a..0338d30 100644
+--- a/md6sum.c
++++ b/md6sum.c
+@@ -428,7 +428,7 @@ void optd(char *optstr)
+
+ void opth()
+ { /* print md6sum help string */
+- printf(help_string);
++ printf("%s", help_string);
+ }
+
+ void optK(char *optstr)
+--
+1.8.5.5
+
diff --git a/app-crypt/md6sum/files/md6sum-1.0-ldflags.patch b/app-crypt/md6sum/files/md6sum-1.0-ldflags.patch
new file mode 100644
index 000000000000..23d37e192ea3
--- /dev/null
+++ b/app-crypt/md6sum/files/md6sum-1.0-ldflags.patch
@@ -0,0 +1,12 @@
+diff -Nru md6sum-1.0.orig/Makefile.in md6sum-1.0/Makefile.in
+--- md6sum-1.0.orig/Makefile.in 2011-01-09 02:12:09.000000000 +0000
++++ md6sum-1.0/Makefile.in 2011-02-01 04:41:35.000000000 +0000
+@@ -18,7 +18,7 @@
+ all: md6sum
+
+ md6sum: $(OBJS)
+- $(CC) $(OBJS) $(CXXFLAGS) -o $@
++ $(CC) $(OBJS) $(CXXFLAGS) $(LDFLAGS) -o $@
+
+ md6_compress.o: md6_compress.c inttypes.h md6.h md6_nist.h stdint.h
+ $(CC) $(CXXFLAGS) -c $< -o $@
diff --git a/app-crypt/md6sum/md6sum-1.0-r2.ebuild b/app-crypt/md6sum/md6sum-1.0-r2.ebuild
new file mode 100644
index 000000000000..446e21a7c2ab
--- /dev/null
+++ b/app-crypt/md6sum/md6sum-1.0-r2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils
+
+DESCRIPTION="A C implementation of MD6"
+HOMEPAGE="http://groups.csail.mit.edu/cis/md6"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-ldflags.patch"
+ epatch "${FILESDIR}/${P}-cflags.patch"
+ epatch "${FILESDIR}/${P}-format-security.patch"
+}
+
+src_install() {
+ default
+ newdoc README_Reference.txt README
+}
diff --git a/app-crypt/md6sum/metadata.xml b/app-crypt/md6sum/metadata.xml
new file mode 100644
index 000000000000..2d87b7020851
--- /dev/null
+++ b/app-crypt/md6sum/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <longdescription lang="en">
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">md6sum</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/mdcrack/Manifest b/app-crypt/mdcrack/Manifest
new file mode 100644
index 000000000000..44b7d7493d46
--- /dev/null
+++ b/app-crypt/mdcrack/Manifest
@@ -0,0 +1 @@
+DIST mdcrack-1.2.tar.gz 60261 SHA256 b68dec25170f177c70264c5a2863a70c28011f669db56a8825ae4ca28b1f5825 SHA512 1a0ec91e19c65ea5c94b988a3a40226e2996adde26970e847ee3756263e65201751c449e6a29595b67314480be10460fdb2ebb31b5e734039d777e58b42c2965 WHIRLPOOL 12ae6e72a2145a09dfaed7e5d95f383c15d8f2187ed8bf1004e17adb783bfc535ff28c15fd94935e3ce2c58b8e8a874e35368ad482b9ecfcfbcf68df5717b662
diff --git a/app-crypt/mdcrack/files/mdcrack-1.2-asneeded.patch b/app-crypt/mdcrack/files/mdcrack-1.2-asneeded.patch
new file mode 100644
index 000000000000..3b5abe5967b1
--- /dev/null
+++ b/app-crypt/mdcrack/files/mdcrack-1.2-asneeded.patch
@@ -0,0 +1,20 @@
+--- Makefile.orig 2009-02-10 17:06:52.786706429 +0100
++++ Makefile 2009-02-10 17:07:15.947791244 +0100
+@@ -56,7 +56,7 @@
+ NCURSES=-DNCURSES
+
+ #LDFLAGS=
+-LDFLAGS=-lncurses
++LIBS=-lncurses
+
+ # Debugging
+ DEBUG=
+@@ -94,7 +94,7 @@
+
+
+ bin/mdcrack: src/coding.o src/NTLM1/core3.o src/NTLM1/core3b.o src/NTLM1/unicode.o src/MD4/core1b.o src/MD4/core2b.o src/MD4/core3b.o src/MD4/core1.o src/MD4/core2.o src/MD4/core3.o src/MD5/core1b.o src/MD5/core2b.o src/MD5/core3b.o src/MD5/core1.o src/MD5/core2.o src/MD5/core3.o src/title.o src/mdcrack.o src/stats.o src/mesgs.o src/hash.o src/charset.o
+- $(CC) $(LDFLAGS) -o bin/mdcrack src/coding.o src/NTLM1/core3.o src/NTLM1/core3b.o src/NTLM1/unicode.o src/MD4/core1b.o src/MD4/core2b.o src/MD4/core3b.o src/MD4/core1.o src/MD4/core2.o src/MD4/core3.o src/MD5/core1b.o src/MD5/core2b.o src/MD5/core3b.o src/MD5/core1.o src/MD5/core2.o src/MD5/core3.o src/title.o src/mesgs.o src/mdcrack.o src/stats.o src/hash.o src/charset.o
++ $(CC) $(LDFLAGS) -o bin/mdcrack src/coding.o src/NTLM1/core3.o src/NTLM1/core3b.o src/NTLM1/unicode.o src/MD4/core1b.o src/MD4/core2b.o src/MD4/core3b.o src/MD4/core1.o src/MD4/core2.o src/MD4/core3.o src/MD5/core1b.o src/MD5/core2b.o src/MD5/core3b.o src/MD5/core1.o src/MD5/core2.o src/MD5/core3.o src/title.o src/mesgs.o src/mdcrack.o src/stats.o src/hash.o src/charset.o $(LIBS)
+
+ big:
+ @echo
diff --git a/app-crypt/mdcrack/files/mdcrack-1.2-gcc4.diff b/app-crypt/mdcrack/files/mdcrack-1.2-gcc4.diff
new file mode 100644
index 000000000000..1b01d97e4175
--- /dev/null
+++ b/app-crypt/mdcrack/files/mdcrack-1.2-gcc4.diff
@@ -0,0 +1,24 @@
+diff --exclude='*~' -Naur mdcrack-1.2.orig/src/MD4/core3.c mdcrack-1.2/src/MD4/core3.c
+--- mdcrack-1.2.orig/src/MD4/core3.c 2005-09-10 19:19:56.000000000 -0300
++++ mdcrack-1.2/src/MD4/core3.c 2005-09-10 19:28:47.000000000 -0300
+@@ -1575,7 +1575,7 @@
+
+ ascii2bin(test, conv, hash);
+ Decode(result2, hash, 16);
+- (unsigned int)bufferr2+=len+35;
++ bufferr2+=(len+35);
+ }
+ else
+
+diff --exclude='*~' -Naur mdcrack-1.2.orig/src/MD5/core3.c mdcrack-1.2/src/MD5/core3.c
+--- mdcrack-1.2.orig/src/MD5/core3.c 2005-09-10 19:19:56.000000000 -0300
++++ mdcrack-1.2/src/MD5/core3.c 2005-09-10 19:29:02.000000000 -0300
+@@ -1537,7 +1537,7 @@
+
+ ascii2bin(test, conv, hash);
+ Decode(result2, hash, 16);
+- (unsigned int)bufferr2+=len+35;
++ bufferr2+=len+35;
+ }
+ else
+
diff --git a/app-crypt/mdcrack/files/mdcrack-1.2-remove-interactive-test.diff b/app-crypt/mdcrack/files/mdcrack-1.2-remove-interactive-test.diff
new file mode 100644
index 000000000000..5208bc4b3cae
--- /dev/null
+++ b/app-crypt/mdcrack/files/mdcrack-1.2-remove-interactive-test.diff
@@ -0,0 +1,120 @@
+--- Makefile 2010-06-28 22:19:55.000000000 -0400
++++ myMakefile 2010-06-28 22:20:03.000000000 -0400
+@@ -47,7 +47,6 @@
+ BLOCK=-DBLOCKSIZE=50
+
+ #full optimization
+-CFLAGS = -O3 -fforce-addr -funroll-loops -fomit-frame-pointer -ffast-math
+
+
+
+@@ -203,8 +202,8 @@
+ @echo
+ @echo "Core 1 (password <= 12) : Cracking \"hack\" string with [a-z0-9] charset."
+ @echo
+- bin/mdcrack -s abcdefghijklmnopqrstuvwxyz0123456789 d78b6f30225cdc811adfe8d4e7c9fd34
+- bin/mdcrack -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 c1f9e5db622135eaca09665555b308da
++ `echo 1 | bin/mdcrack -s abcdefghijklmnopqrstuvwxyz0123456789 d78b6f30225cdc811adfe8d4e7c9fd34 > out1`
++ `echo 1 | bin/mdcrack -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 c1f9e5db622135eaca09665555b308da > out2`
+ @echo
+ @echo "ok."
+ @echo
+@@ -213,8 +212,8 @@
+ @echo
+ @echo "Core 1 with ending string (password <= 12) : Cracking \"bbbhack\" string with [a-z0-9] charset."
+ @echo
+- bin/mdcrack -e ack -s abcdefghijklmnopqrstuvwxyz0123456789 afd3256209cb976c40495ea15548faca
+- bin/mdcrack -e ack -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 0b3128de2dd2d37ea87cc4eaedde68e1
++ `echo 1 | bin/mdcrack -e ack -s abcdefghijklmnopqrstuvwxyz0123456789 afd3256209cb976c40495ea15548faca > out3`
++ `echo 1 | bin/mdcrack -e ack -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 0b3128de2dd2d37ea87cc4eaedde68e1 > out4`
+ @echo
+ @echo "ok."
+ @echo
+@@ -224,8 +223,8 @@
+ @echo
+ @echo "Core 2 with ending string (password <= 28) : Cracking \"bbbbbbbbbbbbbbbhack\" string with [a-z0-9] charset."
+ @echo
+- bin/mdcrack -e bbbbbbbbbbhack -s abcdefghijklmnopqrstuvwxyz0123456789 a22fcc8c0fbd42bc44c956ee64a93ef6
+- bin/mdcrack -e bbbbbbbbbbhack -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 18acb3389f68c92df3d0cd713ef3ab84
++ `echo 1 | bin/mdcrack -e bbbbbbbbbbhack -s abcdefghijklmnopqrstuvwxyz0123456789 a22fcc8c0fbd42bc44c956ee64a93ef6 > out5`
++ `echo 1 | bin/mdcrack -e bbbbbbbbbbhack -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 18acb3389f68c92df3d0cd713ef3ab84 > out6`
+ @echo
+ @echo "ok."
+ @echo
+@@ -236,8 +235,8 @@
+ @echo
+ @echo "Core 3 with ending string (password <= 56) : Cracking \"bbbbbbbbbbbbbbbbbbbbbbbbbbbbhack\" string with [a-z0-9] charset."
+ @echo
+- bin/mdcrack -e bbbbbbbbbbbbbbbbbbbbbbbhack -s abcdefghijklmnopqrstuvwxyz0123456789 e9a2926c5540d4a853f463e3fbc4aba7
+- bin/mdcrack -e bbbbbbbbbbbbbbbbbbbbbbbhack -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 f85cb507b9f0fb1f181854394892610a
++ `echo 1 | bin/mdcrack -e bbbbbbbbbbbbbbbbbbbbbbbhack -s abcdefghijklmnopqrstuvwxyz0123456789 e9a2926c5540d4a853f463e3fbc4aba7 > out7`
++ `echo 1 | bin/mdcrack -e bbbbbbbbbbbbbbbbbbbbbbbhack -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 f85cb507b9f0fb1f181854394892610a > out8`
+ @echo
+ @echo "ok."
+ @echo
+@@ -247,8 +246,8 @@
+ @echo
+ @echo "Core 1 with beginning string (password <= 12) : Cracking \"aaahack\" string with [a-z0-9] charset."
+ @echo
+- bin/mdcrack -b aaa -s abcdefghijklmnopqrstuvwxyz0123456789 16522beac358f4f75eafdda40180ff79
+- bin/mdcrack -b aaa -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 3a0d395696a13d7633de725746f7c164
++ `echo 1 | bin/mdcrack -b aaa -s abcdefghijklmnopqrstuvwxyz0123456789 16522beac358f4f75eafdda40180ff79 > out9`
++ `echo 1 | bin/mdcrack -b aaa -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 3a0d395696a13d7633de725746f7c164 > out10`
+ @echo
+ @echo "ok."
+ @echo
+@@ -258,8 +257,8 @@
+ @echo
+ @echo "Core 1 with beginning/ending string (password <= 12) : Cracking \"aaahack\" string with [a-z0-9] charset."
+ @echo
+- bin/mdcrack -b aa -e k -s abcdefghijklmnopqrstuvwxyz0123456789 16522beac358f4f75eafdda40180ff79
+- bin/mdcrack -b aa -M MD4 -e k -s abcdefghijklmnopqrstuvwxyz0123456789 3a0d395696a13d7633de725746f7c164
++ `echo 1 | bin/mdcrack -b aa -e k -s abcdefghijklmnopqrstuvwxyz0123456789 16522beac358f4f75eafdda40180ff79 > out11`
++ `echo 1 | bin/mdcrack -b aa -M MD4 -e k -s abcdefghijklmnopqrstuvwxyz0123456789 3a0d395696a13d7633de725746f7c164 > out12`
+ @echo
+ @echo "ok."
+ @echo
+@@ -269,8 +268,8 @@
+ @echo
+ @echo "Core 2 with beginning string (password <= 28) : Cracking \"aaaaaaaaaaaaaaahack\" string with [a-z0-9] charset."
+ @echo
+- bin/mdcrack -b aaaaaaaaaaaaaaa -s abcdefghijklmnopqrstuvwxyz0123456789 707d4f8220ed0b6980cf74c190e95186
+- bin/mdcrack -b aaaaaaaaaaaaaaa -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 ea5544cae8ac6fdfdc69a1fab32da03d
++ `echo 1 | bin/mdcrack -b aaaaaaaaaaaaaaa -s abcdefghijklmnopqrstuvwxyz0123456789 707d4f8220ed0b6980cf74c190e95186 > out13`
++ `echo 1 | bin/mdcrack -b aaaaaaaaaaaaaaa -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 ea5544cae8ac6fdfdc69a1fab32da03d > out14`
+ @echo
+ @echo "ok."
+ @echo
+@@ -280,8 +279,8 @@
+ @echo
+ @echo "Core 2 with beginning/ending string (password <= 28) : Cracking \"aaaaaaaaaaaaaaahack\" string with [a-z0-9] charset."
+ @echo
+- bin/mdcrack -b aaaaaaaaaaaaaa -e k -s abcdefghijklmnopqrstuvwxyz0123456789 707d4f8220ed0b6980cf74c190e95186
+- bin/mdcrack -b aaaaaaaaaaaaaa -M MD4 -e k -s abcdefghijklmnopqrstuvwxyz0123456789 ea5544cae8ac6fdfdc69a1fab32da03d
++ `echo 1 | bin/mdcrack -b aaaaaaaaaaaaaa -e k -s abcdefghijklmnopqrstuvwxyz0123456789 707d4f8220ed0b6980cf74c190e95186 > out15`
++ `echo 1 | bin/mdcrack -b aaaaaaaaaaaaaa -M MD4 -e k -s abcdefghijklmnopqrstuvwxyz0123456789 ea5544cae8ac6fdfdc69a1fab32da03d > out16`
+ @echo
+ @echo "ok."
+ @echo
+@@ -292,8 +291,8 @@
+ @echo
+ @echo "Core 3 with beginning string (password <= 56) : Cracking \"aaaaaaaaaaaaaaaaaaaaaaaaaaaahack\" string with [a-z0-9] charset."
+ @echo
+- bin/mdcrack -b aaaaaaaaaaaaaaaaaaaaaaaaaaaa -s abcdefghijklmnopqrstuvwxyz0123456789 6067f9a5081e0abadf5e01315f3dad17
+- bin/mdcrack -b aaaaaaaaaaaaaaaaaaaaaaaaaaaa -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 c486a682f42e083e298677a4af6f62be
++ `echo 1 | bin/mdcrack -b aaaaaaaaaaaaaaaaaaaaaaaaaaaa -s abcdefghijklmnopqrstuvwxyz0123456789 6067f9a5081e0abadf5e01315f3dad17 > out17`
++ `echo 1 | bin/mdcrack -b aaaaaaaaaaaaaaaaaaaaaaaaaaaa -M MD4 -s abcdefghijklmnopqrstuvwxyz0123456789 c486a682f42e083e298677a4af6f62be > out18`
+ @echo
+ @echo "ok."
+ @echo
+@@ -303,8 +302,8 @@
+ @echo
+ @echo "Core 3 with beginning/ending string (password <= 56) : Cracking \"aaaaaaaaaaaaaaaaaaaaaaaaaaaahack\" string with [a-z0-9] charset."
+ @echo
+- bin/mdcrack -b aaaaaaaaaaaaaaaaaaaaaaaaaaa -e k -s abcdefghijklmnopqrstuvwxyz0123456789 6067f9a5081e0abadf5e01315f3dad17
+- bin/mdcrack -b aaaaaaaaaaaaaaaaaaaaaaaaaaa -M MD4 -e k -s abcdefghijklmnopqrstuvwxyz0123456789 c486a682f42e083e298677a4af6f62be
++ `echo 1 | bin/mdcrack -b aaaaaaaaaaaaaaaaaaaaaaaaaaa -e k -s abcdefghijklmnopqrstuvwxyz0123456789 6067f9a5081e0abadf5e01315f3dad17 > out19`
++ `echo 1 | bin/mdcrack -b aaaaaaaaaaaaaaaaaaaaaaaaaaa -M MD4 -e k -s abcdefghijklmnopqrstuvwxyz0123456789 c486a682f42e083e298677a4af6f62be > out20`
+ @echo
+ @echo "ok."
+ @echo
diff --git a/app-crypt/mdcrack/mdcrack-1.2.ebuild b/app-crypt/mdcrack/mdcrack-1.2.ebuild
new file mode 100644
index 000000000000..5dcc0c486b44
--- /dev/null
+++ b/app-crypt/mdcrack/mdcrack-1.2.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A MD4/MD5/NTML hashes bruteforcer"
+HOMEPAGE="http://mdcrack.df.ru/"
+SRC_URI="http://mdcrack.df.ru/download/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86"
+IUSE="ncurses"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gcc4.diff \
+ "${FILESDIR}"/${P}-asneeded.patch \
+ "${FILESDIR}"/${P}-remove-interactive-test.diff
+
+ use ncurses || \
+ sed -i -e 's/^NCURSES/#NCURSES/g' \
+ -e 's/^LIBS/#LIBS/g' Makefile
+ sed -i -e '/^CFLAGS/d' \
+ -e 's|make bin/mdcrack|$(MAKE) bin/mdcrack|g' \
+ -e 's|make core|$(MAKE) core|g' Makefile
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" little || die "emake failed"
+}
+
+src_test() {
+ local failure=false
+
+ make CC="$(tc-getCC)" fulltest || die "self test failed"
+
+ for i in {1..20}; do
+ if grep "Collision found" out$i ; then
+ elog "Test $i: Passed"
+ else
+ elog "Test $i: Failed"
+ failure=true
+ fi
+ done
+
+ if $failure; then
+ die "Some tests failed"
+ fi
+}
+
+src_install() {
+ dobin bin/mdcrack || die "dobin failed"
+ dodoc BENCHMARKS CREDITS FAQ README TODO VERSIONS WWW || die
+}
diff --git a/app-crypt/mdcrack/metadata.xml b/app-crypt/mdcrack/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/mdcrack/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/metadata.xml b/app-crypt/metadata.xml
new file mode 100644
index 000000000000..d508e6060e4c
--- /dev/null
+++ b/app-crypt/metadata.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The app-crypt category contains cryptographic (encryption, decryption,
+ steganography and signing) software.
+ </longdescription>
+ <longdescription lang="de">
+ Die Kategorie app-crypt enhält kryptographische (Ver- und Entschlüsselung,
+ Steganographie, Signierung) Software.
+ </longdescription>
+ <longdescription lang="es">
+ La categoría app-crypt contiene programas para criptografía
+ (cifrado, des-cifrado, estenografía y firmas).
+ </longdescription>
+ <longdescription lang="ja">
+ app-cryptカテゴリには暗号手法ソフトウェア
+ (暗証化と復号化と電子透かしと電子署名)が含まれます。
+ </longdescription>
+ <longdescription lang="nl">
+ De app-crypt categorie bevat cryptografische applicaties (encryptie,
+ decryptie, steganografie,...).
+ </longdescription>
+ <longdescription lang="vi">
+ Nhóm app-crypto chứa các ứng dụng về mật mã (mã hóa,
+ giải mã, kỷ tên và steganography).
+ </longdescription>
+ <longdescription lang="it">
+ La categoria app-crypt contiene programmi di crittografia (cifratura, decifratura, steganografia e firma).
+ </longdescription>
+ <longdescription lang="pt">
+ A categoria app-crypt contém programas criptográficos (cifradores,
+ descifradores, esteganografia e assinaturas).
+ </longdescription>
+ <longdescription lang="pl">
+ Kategoria app-crypt zawiera programy kryptograficzne związane z
+ szyfrowaniem, deszyfrowaniem, stenografią oraz podpisywaniem danych.
+ </longdescription>
+</catmetadata>
+
diff --git a/app-crypt/mhash/Manifest b/app-crypt/mhash/Manifest
new file mode 100644
index 000000000000..cd4ce6bccdba
--- /dev/null
+++ b/app-crypt/mhash/Manifest
@@ -0,0 +1 @@
+DIST mhash-0.9.9.9.tar.gz 931437 SHA256 3dcad09a63b6f1f634e64168dd398e9feb9925560f9b671ce52283a79604d13e SHA512 82ad8b8e9b0463c5a14f5c0e572badc42c4697bac5505443b144287b3f8510b1410721b4277f092a0d6045c4342e997831011cdfcbfa8f1dae6edd5d9e3cefee WHIRLPOOL d1a77b1ccb172af9ee4c7769b6f1d1f53f3b7cb1d87f7aad0c5fb64ae40302f21134a1cd05447dd766bc4408ae2dbb014db77d68a052a57131c955d3ca6453c2
diff --git a/app-crypt/mhash/files/mhash-0.9.9-autotools-namespace-stomping.patch b/app-crypt/mhash/files/mhash-0.9.9-autotools-namespace-stomping.patch
new file mode 100644
index 000000000000..19981b6b9072
--- /dev/null
+++ b/app-crypt/mhash/files/mhash-0.9.9-autotools-namespace-stomping.patch
@@ -0,0 +1,96 @@
+Per debian 473204: http://bugs.debian.org/473204, mhash exports #defines that
+are customarily autotools-private. This results in warnings when other packages
+attempt to use mhash's headers.
+
+Gentoo-Bug: 221093
+Gentoo-Bug-URL: http://bugs.gentoo.org/show_bug.cgi?id=221093
+Patch-URL: http://bugs.gentoo.org/attachment.cgi?id=152625&action=view
+Signed-off-by: Peter Alfredson <loki_val@gentoo.org>
+
+diff -NrU5 mhash-0.9.9.orig/configure.in mhash-0.9.9/configure.in
+--- mhash-0.9.9.orig/configure.in 2008-05-09 16:17:52.000000000 +0200
++++ mhash-0.9.9/configure.in 2008-05-09 16:18:20.000000000 +0200
+@@ -4,10 +4,11 @@
+ AC_CANONICAL_TARGET
+ AC_CONFIG_SRCDIR([lib/mhash.c])
+ AM_INIT_AUTOMAKE
+
+ AC_DEFINE([MHASH_VERSION], PROGRAM_VERSION, "MHash Version")
++AC_CONFIG_HEADER([include/mutils/config.h])
+ AC_CONFIG_HEADER([include/mutils/mhash_config.h])
+
+
+ dnl Check system.
+
+diff -NrU5 mhash-0.9.9.orig/include/mutils/config.h.in mhash-0.9.9/include/mutils/config.h.in
+--- mhash-0.9.9.orig/include/mutils/config.h.in 1970-01-01 01:00:00.000000000 +0100
++++ mhash-0.9.9/include/mutils/config.h.in 2008-05-09 16:18:20.000000000 +0200
+@@ -0,0 +1,22 @@
++/* Name of package */
++#undef PACKAGE
++
++/* Define to the address where bug reports for this package should be sent. */
++#undef PACKAGE_BUGREPORT
++
++/* Define to the full name of this package. */
++#undef PACKAGE_NAME
++
++/* Define to the full name and version of this package. */
++#undef PACKAGE_STRING
++
++/* Define to the one symbol short name of this package. */
++#undef PACKAGE_TARNAME
++
++/* Define to the version of this package. */
++#undef PACKAGE_VERSION
++
++/* Version number of package */
++#undef VERSION
++
++
+diff -NrU5 mhash-0.9.9.orig/include/mutils/mhash_config.h.in mhash-0.9.9/include/mutils/mhash_config.h.in
+--- mhash-0.9.9.orig/include/mutils/mhash_config.h.in 2008-05-09 16:17:52.000000000 +0200
++++ mhash-0.9.9/include/mutils/mhash_config.h.in 2008-05-09 16:19:17.000000000 +0200
+@@ -179,28 +179,10 @@
+ #undef MHASH_VERSION
+
+ /* Define to 1 if your C compiler doesn't accept -c and -o together. */
+ #undef NO_MINUS_C_MINUS_O
+
+-/* Name of package */
+-#undef PACKAGE
+-
+-/* Define to the address where bug reports for this package should be sent. */
+-#undef PACKAGE_BUGREPORT
+-
+-/* Define to the full name of this package. */
+-#undef PACKAGE_NAME
+-
+-/* Define to the full name and version of this package. */
+-#undef PACKAGE_STRING
+-
+-/* Define to the one symbol short name of this package. */
+-#undef PACKAGE_TARNAME
+-
+-/* Define to the version of this package. */
+-#undef PACKAGE_VERSION
+-
+ /* Define to 1 if the C compiler supports function prototypes. */
+ #undef PROTOTYPES
+
+ /* The size of `unsigned char', as computed by sizeof. */
+ #undef SIZEOF_UNSIGNED_CHAR
+@@ -221,13 +203,10 @@
+ #undef STDC_HEADERS
+
+ /* dmalloc */
+ #undef USE_DMALLOC
+
+-/* Version number of package */
+-#undef VERSION
+-
+ /* Define if using the dmalloc debugging malloc package */
+ #undef WITH_DMALLOC
+
+ /* Define to 1 if your processor stores words with the most significant byte
+ first (like Motorola and SPARC, unlike Intel and VAX). */
diff --git a/app-crypt/mhash/files/mhash-0.9.9-fix-mem-leak.patch b/app-crypt/mhash/files/mhash-0.9.9-fix-mem-leak.patch
new file mode 100644
index 000000000000..74552499501f
--- /dev/null
+++ b/app-crypt/mhash/files/mhash-0.9.9-fix-mem-leak.patch
@@ -0,0 +1,27 @@
+The package app-crypt/mhash-0.9.9 as well as app-crypt/mhash-0.9.9-r1 are
+affected by a bug which causes memory to be leaked during
+mhash_restore_state_mem.
+
+In this function/patch, ret->state is allocated towards the beginning and later
+on replaced with a new allocated area without freeing the old. The patch fixes
+it.
+
+Patch already submitted upstream, but depending on speed, this may be faster to
+patch in a new patchset.
+
+Gentoo-Bug: 255006
+Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=255006
+Patch-URL: http://bugs.gentoo.org/attachment.cgi?id=178560
+Signed-off-by: Thomas Harning <harningt@gmail.com>
+
+--- mhash-0.9.9/lib/mhash.c 2007-02-21 01:18:46.000000000 -0500
++++ mhash-0.9.9-new/lib/mhash.c 2009-01-15 01:57:53.000000000 -0500
+@@ -719,6 +719,8 @@
+ mutils_memcpy( &ret->state_size, &mem[pos], sizeof(ret->state_size));
+ pos += sizeof( ret->state_size);
+
++ if (ret->state)
++ mutils_free(ret->state);
+ ret->state = mutils_malloc(ret->state_size);
+ if (ret->state==NULL)
+ goto freeall;
diff --git a/app-crypt/mhash/files/mhash-0.9.9-fix-snefru-segfault.patch b/app-crypt/mhash/files/mhash-0.9.9-fix-snefru-segfault.patch
new file mode 100644
index 000000000000..c308269c1b24
--- /dev/null
+++ b/app-crypt/mhash/files/mhash-0.9.9-fix-snefru-segfault.patch
@@ -0,0 +1,27 @@
+The package app-crypt/mhash-0.9.9 as well as app-crypt/mhash-0.9.9-r1 are
+affected by a bug which causes a NULL ptr dereference in whirlpool/snefru
+digest-completion functionality.
+
+In this patch, whirlpool and snefru's code is updated to bail if 'digest' is
+NULL. The code portion aborted is only responsible for writing data to the
+digest, so this appears to be correct behavior.
+
+Patch already submitted upstream, but depending on speed, this may be faster to
+patch in a new patchset.
+
+Gentoo-Bug: 255131
+Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=255131
+Patch-URL: http://bugs.gentoo.org/attachment.cgi?id=178666&action=view
+Signed-off-by: Thomas Harning <harningt@gmail.com>
+
+--- mhash-0.9.9/lib/snefru.c 2009-01-16 00:16:04.000000000 -0500
++++ mhash-0.9.9-new/lib/snefru.c 2009-01-16 00:16:21.000000000 -0500
+@@ -859,6 +859,8 @@
+ {
+ mutils_word32 i;
+
++ if(!digest) return;
++
+ for (i = 0; i < len; i++, digest += 4)
+ {
+ *(mutils_word32 *)digest = mutils_bend2sys32(ctx->hash[i]);
diff --git a/app-crypt/mhash/files/mhash-0.9.9-fix-whirlpool-segfault.patch b/app-crypt/mhash/files/mhash-0.9.9-fix-whirlpool-segfault.patch
new file mode 100644
index 000000000000..6c79139d5793
--- /dev/null
+++ b/app-crypt/mhash/files/mhash-0.9.9-fix-whirlpool-segfault.patch
@@ -0,0 +1,27 @@
+The package app-crypt/mhash-0.9.9 as well as app-crypt/mhash-0.9.9-r1 are
+affected by a bug which causes a NULL ptr dereference in whirlpool/snefru
+digest-completion functionality.
+
+In this patch, whirlpool and snefru's code is updated to bail if 'digest' is
+NULL. The code portion aborted is only responsible for writing data to the
+digest, so this appears to be correct behavior.
+
+Patch already submitted upstream, but depending on speed, this may be faster to
+patch in a new patchset.
+
+Gentoo-Bug: 255131
+Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=255131
+Patch-URL: http://bugs.gentoo.org/attachment.cgi?id=178667&action=view
+Signed-off-by: Thomas Harning <harningt@gmail.com>
+
+--- mhash-0.9.9/lib/whirlpool.c 2006-01-08 03:14:47.000000000 -0500
++++ mhash-0.9.9-new/lib/whirlpool.c 2009-01-16 00:17:34.000000000 -0500
+@@ -970,6 +970,8 @@
+ mutils_word8 * digest)
+ {
+ mutils_word32 i;
++
++ if(!digest) return;
+ /*
+ * return the completed message digest:
+ */
diff --git a/app-crypt/mhash/files/mhash-0.9.9-mutils-align.patch b/app-crypt/mhash/files/mhash-0.9.9-mutils-align.patch
new file mode 100644
index 000000000000..32d80805f5f7
--- /dev/null
+++ b/app-crypt/mhash/files/mhash-0.9.9-mutils-align.patch
@@ -0,0 +1,118 @@
+diff -ur mhash-0.9.9.orig/lib/stdfns.c mhash-0.9.9/lib/stdfns.c
+--- mhash-0.9.9.orig/lib/stdfns.c Wed Apr 4 21:18:42 2007
++++ mhash-0.9.9/lib/stdfns.c Mon May 28 16:08:38 2007
+@@ -152,12 +152,23 @@
+ }
+ }
+
++static void
++mutils_memset8(void *s, __const mutils_word8 c, __const mutils_word32 n)
++{
++ mutils_word8 *stmp = s;
++ mutils_word32 i;
++
++ for (i = 0; i < n; i++, stmp++)
++ {
++ *stmp = c;
++ }
++}
++
+ WIN32DLL_DEFINE
+ void
+ mutils_memset(void *s, __const mutils_word8 c, __const mutils_word32 n)
+ {
+- mutils_word8 *stmp;
+- mutils_word32 *ltmp = (mutils_word32 *) s;
++ mutils_word32 *ltmp;
+ mutils_word32 lump;
+ mutils_word32 i;
+ mutils_word32 words;
+@@ -168,10 +179,22 @@
+ return;
+ }
+
++ if (n < 16)
++ {
++ return mutils_memset8(s, c, n);
++ }
++
++ /* unaligned portion at beginning */
++ remainder = (-(mutils_word32)s) & 0x3;
++ mutils_memset8(s, c, remainder);
++
++ /* aligned words in the middle */
++ ltmp = (mutils_word32 *) (s + remainder);
++
+ lump = (c << 24) + (c << 16) + (c << 8) + c;
+
+- words = n >> 2;
+- remainder = n - (words << 2);
++ words = (n - remainder) >> 2;
++ remainder = n - remainder - (words << 2);
+
+ for (i = 0; i < words; i++, ltmp++)
+ {
+@@ -178,12 +201,8 @@
+ *ltmp = lump;
+ }
+
+- stmp = (mutils_word8 *) ltmp;
+-
+- for (i = 0; i < remainder; i++, stmp++)
+- {
+- *stmp = c;
+- }
++ /* unaligned portion at end */
++ return mutils_memset8(ltmp, c, remainder);
+ }
+
+ static void
+@@ -275,6 +294,9 @@
+ mutils_word32 *buffer;
+ mutils_word32 *ptrIn;
+ mutils_word32 *ptrOut;
++ mutils_word8 *ptr8In;
++ mutils_word8 *ptr8Out;
++ mutils_word8 tmp8;
+ mutils_word32 count = n * 4;
+
+ if (destructive == MUTILS_FALSE)
+@@ -295,10 +317,36 @@
+ * data on a little-endian machine.
+ */
+
+- for (loop = 0, ptrIn = x, ptrOut = buffer; loop < n; loop++, ptrOut++, ptrIn++)
++ if ((mutils_word32)x & 0x3)
+ {
+- *ptrOut = mutils_lend32(*ptrIn);
++ ptr8In = (mutils_word8 *) x;
++ ptr8Out = (mutils_word8 *) buffer;
++ for (loop = 0; loop < n; loop++)
++ {
++#ifdef WORDS_BIGENDIAN
++ tmp8 = ptr8In[0];
++ ptr8Out[0] = ptr8In[3];
++ ptr8Out[3] = tmp8;
++ tmp8 = ptr8In[1];
++ ptr8Out[1] = ptr8In[2];
++ ptr8Out[2] = tmp8;
++#else
++ ptr8Out[0] = ptr8In[0];
++ ptr8Out[1] = ptr8In[1];
++ ptr8Out[2] = ptr8In[2];
++ ptr8Out[3] = ptr8In[3];
++#endif
++ ptr8Out += 4;
++ ptr8In += 4;
++ }
+ }
++ else
++ {
++ for (loop = 0, ptrIn = x, ptrOut = buffer; loop < n; loop++, ptrOut++, ptrIn++)
++ {
++ *ptrOut = mutils_lend32(*ptrIn);
++ }
++ }
+
+ return(buffer);
+ }
diff --git a/app-crypt/mhash/files/mhash-0.9.9.9-align.patch b/app-crypt/mhash/files/mhash-0.9.9.9-align.patch
new file mode 100644
index 000000000000..04bb310aa772
--- /dev/null
+++ b/app-crypt/mhash/files/mhash-0.9.9.9-align.patch
@@ -0,0 +1,119 @@
+diff -up mhash-0.9.9.9/lib/stdfns.c.BAD mhash-0.9.9.9/lib/stdfns.c
+--- mhash-0.9.9.9/lib/stdfns.c.BAD 2009-07-02 16:38:43.217029623 -0400
++++ mhash-0.9.9.9/lib/stdfns.c 2009-07-02 16:41:58.647120391 -0400
+@@ -152,6 +152,18 @@ mutils_bzero(void *s, __const mutils_wor
+ }
+ }
+
++static void
++mutils_memset8(void *s, __const mutils_word8 c, __const mutils_word32 n)
++{
++ mutils_word8 *stmp = s;
++ mutils_word32 i;
++
++ for (i = 0; i < n; i++, stmp++)
++ {
++ *stmp = c;
++ }
++}
++
+ WIN32DLL_DEFINE
+ void
+ mutils_memset(void *s, __const mutils_word8 c, __const mutils_word32 n)
+@@ -160,8 +172,7 @@ mutils_memset(void *s, __const mutils_wo
+ /* Sparc needs 8-bit alignment - just use standard memset */
+ memset(s, (int) c, (size_t) n);
+ #else
+- mutils_word8 *stmp;
+- mutils_word32 *ltmp = (mutils_word32 *) s;
++ mutils_word32 *ltmp;
+ mutils_word32 lump;
+ mutils_word32 i;
+ mutils_word32 words;
+@@ -172,22 +183,30 @@ mutils_memset(void *s, __const mutils_wo
+ return;
+ }
+
++ if (n < 16)
++ {
++ return mutils_memset8(s, c, n);
++ }
++
++ /* unaligned portion at beginning */
++ remainder = (-(mutils_word32)s) & 0x3;
++ mutils_memset8(s, c, remainder);
++
++ /* aligned words in the middle */
++ ltmp = (mutils_word32 *) (s + remainder);
++
+ lump = (c << 24) + (c << 16) + (c << 8) + c;
+
+- words = n >> 2;
+- remainder = n - (words << 2);
++ words = (n - remainder) >> 2;
++ remainder = n - remainder - (words << 2);
+
+ for (i = 0; i < words; i++, ltmp++)
+ {
+ *ltmp = lump;
+ }
+
+- stmp = (mutils_word8 *) ltmp;
+-
+- for (i = 0; i < remainder; i++, stmp++)
+- {
+- *stmp = c;
+- }
++ /* unaligned portion at end */
++ return mutils_memset8(ltmp, c, remainder);
+ #endif
+ }
+
+@@ -281,6 +300,9 @@ mutils_word32nswap(mutils_word32 *x, mut
+ mutils_word32 *buffer;
+ mutils_word32 *ptrIn;
+ mutils_word32 *ptrOut;
++ mutils_word8 *ptr8In;
++ mutils_word8 *ptr8Out;
++ mutils_word8 tmp8;
+ mutils_word32 count = n * 4;
+
+ if (destructive == MUTILS_FALSE)
+@@ -301,9 +323,35 @@ mutils_word32nswap(mutils_word32 *x, mut
+ * data on a little-endian machine.
+ */
+
+- for (loop = 0, ptrIn = x, ptrOut = buffer; loop < n; loop++, ptrOut++, ptrIn++)
++ if ((mutils_word32)x & 0x3)
++ {
++ ptr8In = (mutils_word8 *) x;
++ ptr8Out = (mutils_word8 *) buffer;
++ for (loop = 0; loop < n; loop++)
++ {
++#ifdef WORDS_BIGENDIAN
++ tmp8 = ptr8In[0];
++ ptr8Out[0] = ptr8In[3];
++ ptr8Out[3] = tmp8;
++ tmp8 = ptr8In[1];
++ ptr8Out[1] = ptr8In[2];
++ ptr8Out[2] = tmp8;
++#else
++ ptr8Out[0] = ptr8In[0];
++ ptr8Out[1] = ptr8In[1];
++ ptr8Out[2] = ptr8In[2];
++ ptr8Out[3] = ptr8In[3];
++#endif
++ ptr8Out += 4;
++ ptr8In += 4;
++ }
++ }
++ else
+ {
+- *ptrOut = mutils_lend32(*ptrIn);
++ for (loop = 0, ptrIn = x, ptrOut = buffer; loop < n; loop++, ptrOut++, ptrIn++)
++ {
++ *ptrOut = mutils_lend32(*ptrIn);
++ }
+ }
+
+ return(buffer);
diff --git a/app-crypt/mhash/files/mhash-0.9.9.9-alignment.patch b/app-crypt/mhash/files/mhash-0.9.9.9-alignment.patch
new file mode 100644
index 000000000000..04df22167a3f
--- /dev/null
+++ b/app-crypt/mhash/files/mhash-0.9.9.9-alignment.patch
@@ -0,0 +1,16 @@
+diff -up mhash-0.9.9.9/lib/stdfns.c.BAD mhash-0.9.9.9/lib/stdfns.c
+--- mhash-0.9.9.9/lib/stdfns.c.BAD 2009-07-21 12:05:40.139461097 -0400
++++ mhash-0.9.9.9/lib/stdfns.c 2009-07-21 12:06:52.151190927 -0400
+@@ -378,6 +378,12 @@ mutils_memmove(void *dest, __const void
+ bigptr1 = (mutils_word32 *) dest;
+ bigptr2 = (mutils_word32 *) src;
+
++ /* copy byte-by-byte for small and/or unaligned copies */
++ if ((n < 16) || ((mutils_word32)dest & 0x3) || ((mutils_word32)src & 0x3))
++ {
++ return mutils_memcpy8(dest, src, n);
++ }
++
+ words = n >> 2;
+ remainder = n - (words << 2);
+
diff --git a/app-crypt/mhash/files/mhash-0.9.9.9-force64bit-tiger.patch b/app-crypt/mhash/files/mhash-0.9.9.9-force64bit-tiger.patch
new file mode 100644
index 000000000000..2248bcc6a308
--- /dev/null
+++ b/app-crypt/mhash/files/mhash-0.9.9.9-force64bit-tiger.patch
@@ -0,0 +1,14 @@
+diff -up mhash-0.9.9.9/lib/tiger.c.BAD mhash-0.9.9.9/lib/tiger.c
+--- mhash-0.9.9.9/lib/tiger.c.BAD 2009-07-02 16:42:47.683029940 -0400
++++ mhash-0.9.9.9/lib/tiger.c 2009-07-02 16:43:46.085049317 -0400
+@@ -252,7 +252,9 @@ void tiger_update(struct tiger_ctx *ctx,
+ void tiger_final(struct tiger_ctx *ctx)
+ {
+ register mutils_word64 i, j;
+- mutils_word8 temp[TIGER_DATASIZE];
++ /* Force 64-bit alignment */
++ mutils_word64 temp_64bit[TIGER_DATASIZE/8];
++ mutils_word8 *temp = temp_64bit;
+ i = ctx->index;
+
+ #if defined(WORDS_BIGENDIAN)
diff --git a/app-crypt/mhash/files/mhash-0.9.9.9-remove_premature_free.patch b/app-crypt/mhash/files/mhash-0.9.9.9-remove_premature_free.patch
new file mode 100644
index 000000000000..5ed4ecbe6292
--- /dev/null
+++ b/app-crypt/mhash/files/mhash-0.9.9.9-remove_premature_free.patch
@@ -0,0 +1,12 @@
+diff -ru mhash-0.9.9.9.orig/src/keygen_test.c mhash-0.9.9.9/src/keygen_test.c
+--- mhash-0.9.9.9.orig/src/keygen_test.c 2007-02-21 07:39:08.000000000 +0100
++++ mhash-0.9.9.9/src/keygen_test.c 2009-12-04 01:29:16.000000000 +0100
+@@ -121,8 +121,6 @@
+
+ mhash_keygen_ext(KEYGEN_S2K_SALTED, data, key, keysize, password, passlen);
+
+- mutils_memset(tmp, 0, keysize * 2);
+-
+ tmp = mutils_asciify(key, keysize);
+
+ result = mutils_strcmp((mutils_word8 *) KEY2, tmp);
diff --git a/app-crypt/mhash/metadata.xml b/app-crypt/mhash/metadata.xml
new file mode 100644
index 000000000000..e9f4f0002de5
--- /dev/null
+++ b/app-crypt/mhash/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>
+ <email>robbat2@gentoo.org</email>
+ <name>Robin H. Johnson</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">mhash</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/mhash/mhash-0.9.9.9-r1.ebuild b/app-crypt/mhash/mhash-0.9.9.9-r1.ebuild
new file mode 100644
index 000000000000..d5905960debf
--- /dev/null
+++ b/app-crypt/mhash/mhash-0.9.9.9-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils
+
+DESCRIPTION="library providing a uniform interface to a large number of hash algorithms"
+HOMEPAGE="http://mhash.sourceforge.net/"
+SRC_URI="mirror://sourceforge/mhash/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="static-libs"
+
+RDEPEND=""
+DEPEND="dev-lang/perl" # pod2html
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-0.9.9-fix-{mem-leak,snefru-segfault,whirlpool-segfault}.patch \
+ "${FILESDIR}"/${PN}-0.9.9-autotools-namespace-stomping.patch \
+ "${FILESDIR}"/${P}-remove_premature_free.patch \
+ "${FILESDIR}"/${P}-force64bit-tiger.patch \
+ "${FILESDIR}"/${P}-align.patch \
+ "${FILESDIR}"/${P}-alignment.patch
+ sed -i \
+ -e 's/--netscape//' \
+ "${S}"/doc/Makefile.in
+}
+
+src_configure() {
+ # https://sourceforge.net/p/mhash/patches/11/
+ export ac_cv_func_malloc_0_nonnull=yes
+
+ econf $(use_enable static-libs static)
+}
+
+src_compile() {
+ default
+ emake -C doc mhash.html
+}
+
+src_install() {
+ default
+
+ use static-libs || rm -f "${ED}"usr/lib*/libmhash.la
+ dodoc AUTHORS ChangeLog NEWS README THANKS TODO \
+ doc/{example.c,skid2-authentication}
+ dohtml doc/mhash.html
+}
diff --git a/app-crypt/mit-krb5-appl/Manifest b/app-crypt/mit-krb5-appl/Manifest
new file mode 100644
index 000000000000..fd7a28fe547e
--- /dev/null
+++ b/app-crypt/mit-krb5-appl/Manifest
@@ -0,0 +1 @@
+DIST krb5-appl-1.0.3-signed.tar 634880 SHA256 feb88581eba566554ad515a6fcf18cee11e8409a2c4755bf5188db96f0b7f039 SHA512 1d85be6eb39a01c21308f6b159a375ae4ee331de8052c3990c9252f708d717b8b518f92c424bd6beebe344d940b4813e6ea11dd18df5d7caa4b5effc2513dd23 WHIRLPOOL 091525cd162375b383f41f0627fa3dba2468459e2aa8fdaf8fff6c01f2bfd27af45990fc68ec0a0eea13288e3288c967e55346c53165ea1238ddea9b94a94364
diff --git a/app-crypt/mit-krb5-appl/files/mit-krb5-appl-sig_t.patch b/app-crypt/mit-krb5-appl/files/mit-krb5-appl-sig_t.patch
new file mode 100644
index 000000000000..ebdaf6b5b3d2
--- /dev/null
+++ b/app-crypt/mit-krb5-appl/files/mit-krb5-appl-sig_t.patch
@@ -0,0 +1,55 @@
+Bug #513762
+
+From 4b45a32ba7c4f7b447919de6ce28a14150584290 Mon Sep 17 00:00:00 2001
+From: Russ Allbery <rra@stanford.edu>
+Date: Wed, 21 Mar 2012 04:16:36 +0000
+Subject: [PATCH] Move redeclaration of sig_t after all system includes
+
+Move some internal messing about with sig_t done by gssftp/ftp/ftp_var.h
+after the last system include to keep from stomping on system headers.
+Required for kFreeBSD and Hurd.
+
+git-svn-id: svn://anonsvn.mit.edu/krb5-appl/trunk@3331 dc483132-0cff-0310-8789-dd5450dbe970
+---
+ gssftp/ftp/ftp_var.h | 18 +++++++++---------
+ 1 file changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/gssftp/ftp/ftp_var.h b/gssftp/ftp/ftp_var.h
+index 3efbdb1..e478961 100644
+--- a/gssftp/ftp/ftp_var.h
++++ b/gssftp/ftp/ftp_var.h
+@@ -53,15 +53,6 @@ FILE* fdopen_socket(SOCKET s, char* mode);
+ #define PERROR_SOCKET(str) perror(str)
+ #endif
+
+-#ifdef _WIN32
+-typedef void (*sig_t)(int);
+-typedef void sigtype;
+-#else
+-#define sig_t my_sig_t
+-#define sigtype krb5_sigtype
+-typedef sigtype (*sig_t)();
+-#endif
+-
+ /*
+ * FTP global variables.
+ */
+@@ -168,6 +159,15 @@ extern int macnum; /* number of defined macros */
+ extern struct macel macros[16];
+ extern char macbuf[4096];
+
++#ifdef _WIN32
++typedef void (*sig_t)(int);
++typedef void sigtype;
++#else
++#define sig_t my_sig_t
++#define sigtype krb5_sigtype
++typedef sigtype (*sig_t)();
++#endif
++
+ #ifdef DEFINITIONS
+ #undef extern
+ #endif
+--
+1.9.3
+
diff --git a/app-crypt/mit-krb5-appl/files/mit-krb5-appl-tinfo.patch b/app-crypt/mit-krb5-appl/files/mit-krb5-appl-tinfo.patch
new file mode 100644
index 000000000000..54c18665d336
--- /dev/null
+++ b/app-crypt/mit-krb5-appl/files/mit-krb5-appl-tinfo.patch
@@ -0,0 +1,12 @@
+--- configure.ac 2011-07-11 22:34:17.000000000 +0300
++++ configure.ac 2013-02-28 15:12:24.693841664 +0200
+@@ -152,7 +152,8 @@
+ [AC_DEFINE(TERMCAP,1,[Define if termcap library is available])
+ LIBS="$LIBS -ltermcap"])
+ AC_CHECK_LIB(curses,setupterm,LIBS="$LIBS -lcurses",
+- [AC_CHECK_LIB(ncurses,setupterm,LIBS="$LIBS -lncurses")])
++ [AC_CHECK_LIB(ncurses,setupterm,LIBS="$LIBS -lncurses",
++ [AC_CHECK_LIB(tinfo,setupterm,LIBS="$LIBS -lncurses")])])
+ AC_CHECK_FUNCS(setupterm)
+ TELNET_LIBS="$LIBS"
+ TELNETD_LIBS="$LIBS"
diff --git a/app-crypt/mit-krb5-appl/metadata.xml b/app-crypt/mit-krb5-appl/metadata.xml
new file mode 100644
index 000000000000..5ae9375e9391
--- /dev/null
+++ b/app-crypt/mit-krb5-appl/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>kerberos</herd>
+</pkgmetadata>
diff --git a/app-crypt/mit-krb5-appl/mit-krb5-appl-1.0.3.ebuild b/app-crypt/mit-krb5-appl/mit-krb5-appl-1.0.3.ebuild
new file mode 100644
index 000000000000..85cfd841a72b
--- /dev/null
+++ b/app-crypt/mit-krb5-appl/mit-krb5-appl-1.0.3.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit autotools eutils flag-o-matic toolchain-funcs versionator
+
+MY_P=${P/mit-}
+MAJOR_MINOR="$( get_version_component_range 1-2 )"
+DESCRIPTION="Kerberized applications split from the main MIT Kerberos V distribution"
+HOMEPAGE="http://web.mit.edu/kerberos/www/"
+SRC_URI="http://web.mit.edu/kerberos/dist/krb5-appl/${MAJOR_MINOR}/${MY_P}-signed.tar"
+
+LICENSE="openafs-krb5-a BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
+IUSE=""
+
+RDEPEND=">=app-crypt/mit-krb5-1.8.0
+ sys-libs/e2fsprogs-libs
+ sys-libs/ncurses"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+src_unpack() {
+ unpack ${A}
+ unpack ./"${MY_P}".tar.gz
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-tinfo.patch"
+ epatch "${FILESDIR}/${PN}-sig_t.patch"
+ sed -i -e "s/-lncurses/$($(tc-getPKG_CONFIG) --libs ncurses)/" configure.ac
+ eautoreconf
+}
+
+src_configure() {
+ append-cppflags "-I/usr/include/et"
+ append-cppflags -fno-strict-aliasing
+ append-cppflags -fno-strict-overflow
+ econf
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ for i in {telnetd,ftpd} ; do
+ mv "${D}"/usr/share/man/man8/${i}.8 "${D}"/usr/share/man/man8/k${i}.8 \
+ || die "mv failed (man)"
+ mv "${D}"/usr/sbin/${i} "${D}"/usr/sbin/k${i} || die "mv failed"
+ done
+
+ for i in {rcp,rlogin,rsh,telnet,ftp} ; do
+ mv "${D}"/usr/share/man/man1/${i}.1 "${D}"/usr/share/man/man1/k${i}.1 \
+ || die "mv failed (man)"
+ mv "${D}"/usr/bin/${i} "${D}"/usr/bin/k${i} || die "mv failed"
+ done
+
+ rm "${D}"/usr/share/man/man1/tmac.doc
+ dodoc README
+}
diff --git a/app-crypt/mit-krb5/Manifest b/app-crypt/mit-krb5/Manifest
new file mode 100644
index 000000000000..f4da33f3a369
--- /dev/null
+++ b/app-crypt/mit-krb5/Manifest
@@ -0,0 +1 @@
+DIST krb5-1.13.2-signed.tar 12113920 SHA256 e528c30b0209c741f6f320cb83122ded92f291802b6a1a1dc1a01dcdb3ff6de1 SHA512 d3f8dde220876bd24703c488122ba8e54ffaa7f8f2c7d325e5d198a4e171248673fc1d5d3c997c6d2e66c314e2b7f4609eb980a789c3556a79458ab4411e61b5 WHIRLPOOL 9f29f4d76b7b2225f18707a95b217ce0eab7ae963ba547460fa6e7ffdc43e3c350ae070265c52b9751a70f80a95086e39c29dc2c44e0a22d17f9b48f7bf838f7
diff --git a/app-crypt/mit-krb5/files/kpropd.xinetd b/app-crypt/mit-krb5/files/kpropd.xinetd
new file mode 100644
index 000000000000..af542fcf8a54
--- /dev/null
+++ b/app-crypt/mit-krb5/files/kpropd.xinetd
@@ -0,0 +1,11 @@
+service tell
+{
+ disable = yes
+ socket_type = stream
+ user = root
+ wait = no
+ server = /usr/sbin/kpropd
+ only_from = 0.0.0.0
+ log_on_success = PID HOST EXIT DURATION
+ log_on_failure = HOST
+}
diff --git a/app-crypt/mit-krb5/files/mit-krb5-1.12_warn_cflags.patch b/app-crypt/mit-krb5/files/mit-krb5-1.12_warn_cflags.patch
new file mode 100644
index 000000000000..53037d970214
--- /dev/null
+++ b/app-crypt/mit-krb5/files/mit-krb5-1.12_warn_cflags.patch
@@ -0,0 +1,11 @@
+gentoo bug #498794
+--- src/aclocal.m4 2014-01-16 00:44:15.000000000 +0000
++++ src/aclocal.m4 2014-03-26 10:20:54.000000000 +0000
+@@ -501,6 +501,7 @@
+ fi
+ if test "x$krb5_ac_warn_cflags_set" = xset ; then
+ AC_MSG_NOTICE(not adding extra gcc warning flags because WARN_CFLAGS was set)
++ WARN_CFLAGS=""
+ else
+ AC_MSG_NOTICE(adding extra warning flags for gcc)
+ WARN_CFLAGS="$WARN_CFLAGS $extra_gcc_warn_opts -Wmissing-prototypes"
diff --git a/app-crypt/mit-krb5/files/mit-krb5-config_LDFLAGS.patch b/app-crypt/mit-krb5/files/mit-krb5-config_LDFLAGS.patch
new file mode 100644
index 000000000000..8490e629a377
--- /dev/null
+++ b/app-crypt/mit-krb5/files/mit-krb5-config_LDFLAGS.patch
@@ -0,0 +1,12 @@
+Bug #448778
+--- a/src/build-tools/krb5-config.in 2012-12-18 02:47:04.000000000 +0000
++++ b/src/build-tools/krb5-config.in 2012-12-28 07:13:16.582693363 +0000
+@@ -217,7 +217,7 @@
+ -e 's#\$(PROG_RPATH)#'$libdir'#' \
+ -e 's#\$(PROG_LIBPATH)#'$libdirarg'#' \
+ -e 's#\$(RPATH_FLAG)#'"$RPATH_FLAG"'#' \
+- -e 's#\$(LDFLAGS)#'"$LDFLAGS"'#' \
++ -e 's#\$(LDFLAGS)##' \
+ -e 's#\$(PTHREAD_CFLAGS)#'"$PTHREAD_CFLAGS"'#' \
+ -e 's#\$(CFLAGS)##'`
+
diff --git a/app-crypt/mit-krb5/files/mit-krb5kadmind.initd-r1 b/app-crypt/mit-krb5/files/mit-krb5kadmind.initd-r1
new file mode 100644
index 000000000000..7b28fb2aee59
--- /dev/null
+++ b/app-crypt/mit-krb5/files/mit-krb5kadmind.initd-r1
@@ -0,0 +1,25 @@
+#!/sbin/runscript
+
+#---------------------------------------------------------------------------
+# This script starts/stops the MIT Kerberos 5 Admin daemon
+#---------------------------------------------------------------------------
+
+daemon="MIT Kerberos 5 Admin daemon"
+exec="/usr/sbin/kadmind"
+
+depend() {
+ need mit-krb5kdc
+ use net
+}
+
+start() {
+ ebegin "Starting $daemon"
+ start-stop-daemon --start --quiet --exec ${exec} 1>&2
+ eend $? "Error starting $daemon"
+}
+
+stop() {
+ ebegin "Stopping $daemon"
+ start-stop-daemon --stop --quiet --exec ${exec} 1>&2
+ eend $? "Error stopping $daemon"
+}
diff --git a/app-crypt/mit-krb5/files/mit-krb5kdc.initd-r1 b/app-crypt/mit-krb5/files/mit-krb5kdc.initd-r1
new file mode 100644
index 000000000000..94f1f7937902
--- /dev/null
+++ b/app-crypt/mit-krb5/files/mit-krb5kdc.initd-r1
@@ -0,0 +1,24 @@
+#!/sbin/runscript
+
+#---------------------------------------------------------------------------
+# This script starts/stops the MIT Kerberos 5 KDC
+#---------------------------------------------------------------------------
+
+daemon="MIT Kerberos 5 KDC"
+exec="/usr/sbin/krb5kdc"
+
+depend() {
+ use net
+}
+
+start() {
+ ebegin "Starting $daemon"
+ start-stop-daemon --start --quiet --exec ${exec} 1>&2
+ eend $? "Error starting $daemon"
+}
+
+stop() {
+ ebegin "Stopping $daemon"
+ start-stop-daemon --stop --quiet --exec ${exec} 1>&2
+ eend $? "Error stopping $daemon"
+}
diff --git a/app-crypt/mit-krb5/files/mit-krb5kpropd.initd-r1 b/app-crypt/mit-krb5/files/mit-krb5kpropd.initd-r1
new file mode 100644
index 000000000000..d800d666a585
--- /dev/null
+++ b/app-crypt/mit-krb5/files/mit-krb5kpropd.initd-r1
@@ -0,0 +1,24 @@
+#!/sbin/runscript
+
+#---------------------------------------------------------------------------
+# This script starts/stops the MIT Kerberos 5 kpropd
+#---------------------------------------------------------------------------
+
+daemon="MIT Kerberos 5 kpropd"
+exec="/usr/sbin/kpropd"
+
+depend() {
+ use net mit-krb5kdc mit-krb5kadmind
+}
+
+start() {
+ ebegin "Starting $daemon"
+ start-stop-daemon --start --quiet --exec ${exec} -- -S 1>&2
+ eend $? "Error starting $daemon"
+}
+
+stop() {
+ ebegin "Stopping $daemon"
+ start-stop-daemon --stop --quiet --exec ${exec} 1>&2
+ eend $? "Error stopping $daemon"
+}
diff --git a/app-crypt/mit-krb5/metadata.xml b/app-crypt/mit-krb5/metadata.xml
new file mode 100644
index 000000000000..2609e96c2f9d
--- /dev/null
+++ b/app-crypt/mit-krb5/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>kerberos</herd>
+<longdescription>Kerberos 5 reference implementation from MIT</longdescription>
+<use>
+ <flag name="doc">
+ Creates and installs the API and implementation
+ documentation. This is only useful if you want to develop software
+ which depends on kerberos.
+ </flag>
+ <flag name="keyutils">Enable for the keyring ccache using keyutils.</flag>
+ <flag name="pkinit">Enable pkinit support for the initial ticket.</flag>
+ <flag name="openldap">Enable support for ldap as a database backend.</flag>
+</use>
+</pkgmetadata>
diff --git a/app-crypt/mit-krb5/mit-krb5-1.13.2.ebuild b/app-crypt/mit-krb5/mit-krb5-1.13.2.ebuild
new file mode 100644
index 000000000000..bf128e0c92dc
--- /dev/null
+++ b/app-crypt/mit-krb5/mit-krb5-1.13.2.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools eutils flag-o-matic multilib-minimal python-any-r1 versionator
+
+MY_P="${P/mit-}"
+P_DIR=$(get_version_component_range 1-2)
+DESCRIPTION="MIT Kerberos V"
+HOMEPAGE="http://web.mit.edu/kerberos/www/"
+SRC_URI="http://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}-signed.tar"
+
+LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86"
+IUSE="doc +keyutils openldap +pkinit selinux +threads test xinetd"
+
+CDEPEND="
+ !!app-crypt/heimdal
+ >=sys-libs/e2fsprogs-libs-1.42.9[${MULTILIB_USEDEP}]
+ || (
+ >=dev-libs/libverto-0.2.5[libev,${MULTILIB_USEDEP}]
+ >=dev-libs/libverto-0.2.5[libevent,${MULTILIB_USEDEP}]
+ >=dev-libs/libverto-0.2.5[tevent,${MULTILIB_USEDEP}]
+ )
+ keyutils? ( >=sys-apps/keyutils-1.5.8[${MULTILIB_USEDEP}] )
+ openldap? ( >=net-nds/openldap-2.4.38-r1[${MULTILIB_USEDEP}] )
+ pkinit? ( >=dev-libs/openssl-1.0.1h-r2[${MULTILIB_USEDEP}] )
+ xinetd? ( sys-apps/xinetd )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20140508-r1
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )"
+DEPEND="${CDEPEND}
+ ${PYTHON_DEPS}
+ virtual/yacc
+ doc? ( virtual/latex-base )
+ test? (
+ ${PYTHON_DEPS}
+ dev-lang/tcl:0
+ dev-util/dejagnu
+ )"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-kerberos )"
+
+S=${WORKDIR}/${MY_P}/src
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/krb5-config
+)
+
+src_unpack() {
+ unpack ${A}
+ unpack ./"${MY_P}".tar.gz
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-1.12_warn_cflags.patch"
+ epatch "${FILESDIR}/${PN}-config_LDFLAGS.patch"
+
+ eautoreconf
+}
+
+src_configure() {
+ append-cppflags "-I${EPREFIX}/usr/include/et"
+ # QA
+ append-flags -fno-strict-aliasing
+ append-flags -fno-strict-overflow
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ use keyutils || export ac_cv_header_keyutils_h=no
+ ECONF_SOURCE=${S} \
+ WARN_CFLAGS="set" \
+ econf \
+ $(use_with openldap ldap) \
+ "$(multilib_native_use_with test tcl "${EPREFIX}/usr")" \
+ $(use_enable pkinit) \
+ $(use_enable threads thread-support) \
+ --without-hesiod \
+ --enable-shared \
+ --with-system-et \
+ --with-system-ss \
+ --enable-dns-for-realm \
+ --enable-kdc-lookaside-cache \
+ --with-system-verto \
+ --disable-rpath
+}
+
+multilib_src_compile() {
+ emake -j1
+}
+
+multilib_src_test() {
+ multilib_is_native_abi && emake -j1 check
+}
+
+multilib_src_install() {
+ emake \
+ DESTDIR="${D}" \
+ EXAMPLEDIR="${EPREFIX}/usr/share/doc/${PF}/examples" \
+ install
+}
+
+multilib_src_install_all() {
+ # default database dir
+ keepdir /var/lib/krb5kdc
+
+ cd ..
+ dodoc README
+
+ if use doc; then
+ dohtml -r doc/html/*
+ docinto pdf
+ dodoc doc/pdf/*.pdf
+ fi
+
+ newinitd "${FILESDIR}"/mit-krb5kadmind.initd-r1 mit-krb5kadmind
+ newinitd "${FILESDIR}"/mit-krb5kdc.initd-r1 mit-krb5kdc
+ newinitd "${FILESDIR}"/mit-krb5kpropd.initd-r1 mit-krb5kpropd
+
+ insinto /etc
+ newins "${ED}/usr/share/doc/${PF}/examples/krb5.conf" krb5.conf.example
+ insinto /var/lib/krb5kdc
+ newins "${ED}/usr/share/doc/${PF}/examples/kdc.conf" kdc.conf.example
+
+ if use openldap ; then
+ insinto /etc/openldap/schema
+ doins "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.schema"
+ fi
+
+ if use xinetd ; then
+ insinto /etc/xinetd.d
+ newins "${FILESDIR}/kpropd.xinetd" kpropd
+ fi
+}
+
+pkg_preinst() {
+ if has_version "<${CATEGORY}/${PN}-1.8.0" ; then
+ elog "MIT split the Kerberos applications from the base Kerberos"
+ elog "distribution. Kerberized versions of telnet, rlogin, rsh, rcp,"
+ elog "ftp clients and telnet, ftp deamons now live in"
+ elog "\"app-crypt/mit-krb5-appl\" package."
+ fi
+}
diff --git a/app-crypt/monkeysign/Manifest b/app-crypt/monkeysign/Manifest
new file mode 100644
index 000000000000..5f763a454965
--- /dev/null
+++ b/app-crypt/monkeysign/Manifest
@@ -0,0 +1 @@
+DIST monkeysign_2.0.2.tar.xz 1006592 SHA256 c883dc0c4f1dbd313239012e1c5984a6ef19b0e5040e613e1727085aa619bf63 SHA512 a7686708a0d1eae0586ba2847bfb788ae9a167462e596ac8486077eaa1d6e7a6495f837596724e84ccac91102f742cc9e8b5960254242a1e935205ac1f8c8b7c WHIRLPOOL 38ab35d2954ca8d0ef32357afbb4a12674ba04b5c8cebadba5ee180ed36d2871d2b49d23ffdfb302292200ad835d37f545cae841ba98c6b8ee163ecbe65eabd9
diff --git a/app-crypt/monkeysign/files/monkeysign-1.1-basename.patch b/app-crypt/monkeysign/files/monkeysign-1.1-basename.patch
new file mode 100644
index 000000000000..dd9011239f08
--- /dev/null
+++ b/app-crypt/monkeysign/files/monkeysign-1.1-basename.patch
@@ -0,0 +1,12 @@
+diff -r 954b8fe8cdb2 scripts/monkeyscan
+--- a/scripts/monkeyscan Tue Oct 01 00:02:17 2013 +0200
++++ b/scripts/monkeyscan Tue Oct 01 00:04:27 2013 +0200
+@@ -25,7 +25,7 @@
+ if directory == 'scripts':
+ sys.path.insert(0, os.path.dirname(__file__) + '/..')
+
+-if basename == 'monkeysign':
++if basename[:10] == 'monkeysign':
+ from monkeysign.cli import MonkeysignCli as ui
+ else:
+ try:
diff --git a/app-crypt/monkeysign/files/monkeysign-2.0.0-rst2s5.patch b/app-crypt/monkeysign/files/monkeysign-2.0.0-rst2s5.patch
new file mode 100644
index 000000000000..2c3c66c884ed
--- /dev/null
+++ b/app-crypt/monkeysign/files/monkeysign-2.0.0-rst2s5.patch
@@ -0,0 +1,17 @@
+diff -r 9cf95971dd10 monkeysign/documentation.py
+--- a/monkeysign/documentation.py Sun Oct 19 12:34:21 2014 -0400
++++ b/monkeysign/documentation.py Sun Oct 19 12:35:30 2014 -0400
+@@ -161,11 +161,11 @@
+ def run(self):
+ html = os.path.join(os.path.dirname(self.file), os.path.splitext(os.path.basename(self.file))[0] + '.html')
+ self.announce('processing slides from %s to %s' % (self.file, html), 2)
+- os.system('rst2s5 --theme default "%s" "%s"' % (self.file, html))
++ os.system('rst2s5.py --theme default "%s" "%s"' % (self.file, html))
+
+ def has_rst2s5(build):
+ """predicate for this class: do not fail if rst2s5 is missing"""
+- return (os.system('rst2s5 < /dev/null > /dev/null') == 0)
++ return (os.system('rst2s5.py < /dev/null > /dev/null') == 0)
+
+ # (function, predicate), see http://docs.python.org/2/distutils/apiref.html#distutils.cmd.Command.sub_commands
+ build.sub_commands.append(('build_manpage', None))
diff --git a/app-crypt/monkeysign/files/monkeysign-2.0.2-smtplib.patch b/app-crypt/monkeysign/files/monkeysign-2.0.2-smtplib.patch
new file mode 100644
index 000000000000..e920acfa3797
--- /dev/null
+++ b/app-crypt/monkeysign/files/monkeysign-2.0.2-smtplib.patch
@@ -0,0 +1,28 @@
+From 9e6699ec432b23d56a0728bb25fc2ed1a47a85e6 Mon Sep 17 00:00:00 2001
+From: Kristian Fiskerstrand <kf@sumptuouscapital.com>
+Date: Mon, 2 Feb 2015 20:38:07 +0100
+Subject: [PATCH] ui.py: Make sure to use smtplib namespace
+
+Make sure to properly use the smtplib namespace for SMTPException
+in order to avoid a NameError for undefined exception in global
+scope.
+---
+ monkeysign/ui.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/monkeysign/ui.py b/monkeysign/ui.py
+index c9b6a30..c2308c8 100644
+--- a/monkeysign/ui.py
++++ b/monkeysign/ui.py
+@@ -359,7 +359,7 @@ expects an EmailFactory email, but will not mail if nomail is set"""
+ self.abort(_('Unexpected SMTP server error while talking to %s, code: %s (%s)') % (self.options.smtpserver, code, srvmsg))
+ try:
+ server.starttls()
+- except SMTPException:
++ except smtplib.SMTPException:
+ self.warn(_('SMTP server does not support STARTTLS'))
+ if self.options.smtpuser: self.warn(_('authentication credentials will be sent in clear text'))
+ if self.options.smtpuser:
+--
+2.2.2
+
diff --git a/app-crypt/monkeysign/files/monkeysign.desktop b/app-crypt/monkeysign/files/monkeysign.desktop
new file mode 100644
index 000000000000..6289800f2e74
--- /dev/null
+++ b/app-crypt/monkeysign/files/monkeysign.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Version=1.0
+Name=Monkeyscan
+Comment=Monkeyscan part of monkeysign
+Categories=Network;GTK;GNOME;X-Internet;
+Exec=/usr/bin/monkeyscan
+Terminal=false
+Type=Application
+
diff --git a/app-crypt/monkeysign/metadata.xml b/app-crypt/monkeysign/metadata.xml
new file mode 100644
index 000000000000..fc6ccc280409
--- /dev/null
+++ b/app-crypt/monkeysign/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>
+ <email>k_f@gentoo.org</email>
+ <name>Kristian Fiskerstrand</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/monkeysign/monkeysign-2.0.2-r1.ebuild b/app-crypt/monkeysign/monkeysign-2.0.2-r1.ebuild
new file mode 100644
index 000000000000..e853118089f5
--- /dev/null
+++ b/app-crypt/monkeysign/monkeysign-2.0.2-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1
+
+DESCRIPTION="A user-friendly commandline tool to sign OpenGPG keys"
+HOMEPAGE="http://web.monkeysphere.info/monkeysign/"
+
+SRC_URI="mirror://debian/pool/main/m/monkeysign/monkeysign_${PV}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+CDEPEND="
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ media-gfx/zbar:0[python,gtk,imagemagick,${PYTHON_USEDEP}]
+ media-gfx/qrencode-python[${PYTHON_USEDEP}]
+ virtual/python-imaging[${PYTHON_USEDEP}]"
+
+DEPEND="
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ app-arch/xz-utils
+ ${CDEPEND}"
+
+RDEPEND="
+ app-crypt/gnupg
+ virtual/mta
+ ${CDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.1-basename.patch"
+ "${FILESDIR}/${PN}-2.0.0-rst2s5.patch"
+ "${FILESDIR}/${P}-smtplib.patch"
+ )
+
+python_test() {
+ "${PYTHON}" ./test.py || die "Tests fails"
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ domenu "${FILESDIR}/monkeysign.desktop"
+}
diff --git a/app-crypt/monkeysphere/Manifest b/app-crypt/monkeysphere/Manifest
new file mode 100644
index 000000000000..e905342e9707
--- /dev/null
+++ b/app-crypt/monkeysphere/Manifest
@@ -0,0 +1,2 @@
+DIST monkeysphere_0.36.orig.tar.gz 98876 SHA256 6ae4edeff2cc29b6913346e15b61500ea7cc06d761a9f42e67de83b7d2607be7 SHA512 eb6776bd9996db8a5d6a1d16b5b06e6733069cbb3cb35f4e3965508575e084c6f08576f31c71429432daf93910d145804ecf155c3d7550a0f4550a056cb4f0c8 WHIRLPOOL c163d0be77d3c6d838f752c8f53d967b17aeafd798e4fca694a31bf55628fb57d18b6a4664ca9552bd3daf3b89b6f86452d430529985ca0a31c3c4aa48470bc0
+DIST monkeysphere_0.37.orig.tar.gz 99557 SHA256 b510b8a414fb400356e80f1f882488785df72ac54078410b54d4c50a84686e59 SHA512 ebf636caaa0985a2495314375a9d78d131173ccedc116993e02b7bbc0ddc8c43c718dc65cb725619ecf7e72e0b7e11b941f3eb342d7c23d17ca0507b2ab28512 WHIRLPOOL d27a3712ce4cd529986c4ac0af7398f8d69d66c1b5aed9842d3b21f417bab5d2b3afc7be9e069ce0e9f307b17ad33ef9e8d49d7624ec0d7d2aab60949982b9c1
diff --git a/app-crypt/monkeysphere/files/monkeysphere-0.36_default_shell.patch b/app-crypt/monkeysphere/files/monkeysphere-0.36_default_shell.patch
new file mode 100644
index 000000000000..f979114181d1
--- /dev/null
+++ b/app-crypt/monkeysphere/files/monkeysphere-0.36_default_shell.patch
@@ -0,0 +1,12 @@
+diff -r d0c02fe6a949 src/share/common
+--- a/src/share/common Sun Oct 06 19:21:18 2013 +0200
++++ b/src/share/common Sun Oct 06 19:21:49 2013 +0200
+@@ -108,7 +108,7 @@
+ # if root, su command as monkeysphere user
+ 'root')
+ # requote arguments using bash builtin feature (see "help printf"):
+- su "$MONKEYSPHERE_USER" -c "$(printf "%q " "$@")"
++ su -s /bin/bash "$MONKEYSPHERE_USER" -c "$(printf "%q " "$@")"
+ ;;
+
+ # otherwise, fail
diff --git a/app-crypt/monkeysphere/files/monkeysphere-0.36_hd_od.patch b/app-crypt/monkeysphere/files/monkeysphere-0.36_hd_od.patch
new file mode 100644
index 000000000000..7cdaa74b5735
--- /dev/null
+++ b/app-crypt/monkeysphere/files/monkeysphere-0.36_hd_od.patch
@@ -0,0 +1,14 @@
+diff -r 6150774ec7f4 tests/keytrans
+--- a/tests/keytrans Sun Feb 16 20:11:02 2014 +0100
++++ b/tests/keytrans Sun Feb 16 20:11:40 2014 +0100
+@@ -104,8 +104,8 @@
+ <(gpg --list-packets < "$TEMPDIR"/converted.secret.key)
+
+ diff -u \
+- <(hd "$TEMPDIR"/secret.key) \
+- <(hd "$TEMPDIR"/converted.secret.key)
++ <(od -xc "$TEMPDIR"/secret.key) \
++ <(od -xc "$TEMPDIR"/converted.secret.key)
+
+ KEYFPR=$(gpg --fingerprint --with-colons --list-keys | grep ^fpr | cut -f10 -d:)
+ KEYID=$(printf "%s" "$KEYFPR" | cut -b25-40)
diff --git a/app-crypt/monkeysphere/files/monkeysphere-0.36_non_default_port.patch b/app-crypt/monkeysphere/files/monkeysphere-0.36_non_default_port.patch
new file mode 100644
index 000000000000..f14550280fcf
--- /dev/null
+++ b/app-crypt/monkeysphere/files/monkeysphere-0.36_non_default_port.patch
@@ -0,0 +1,14 @@
+diff -r 5f7ee764ec1f src/share/common
+--- a/src/share/common Mon Oct 07 19:22:36 2013 +0200
++++ b/src/share/common Mon Oct 07 19:22:58 2013 +0200
+@@ -863,6 +863,10 @@
+ ;;
+ ('known_hosts')
+ host=${userID#ssh://}
++ if [[ "${host}" == *:* ]]; then
++ IFS=':' read -a ARR <<< "${host}"
++ host="[${ARR[0]}]:${ARR[1]}"
++ fi
+ remove_line "$keyFile" "$host" "$sshKey"
+ ;;
+ esac
diff --git a/app-crypt/monkeysphere/files/monkeysphere-0.36_openpgp2ssh_sanity_check.patch b/app-crypt/monkeysphere/files/monkeysphere-0.36_openpgp2ssh_sanity_check.patch
new file mode 100644
index 000000000000..aec90eb07661
--- /dev/null
+++ b/app-crypt/monkeysphere/files/monkeysphere-0.36_openpgp2ssh_sanity_check.patch
@@ -0,0 +1,34 @@
+diff --git a/src/monkeysphere-authentication b/src/monkeysphere-authentication
+index edc7995..2711ff2 100755
+--- a/src/monkeysphere-authentication
++++ b/src/monkeysphere-authentication
+@@ -84,6 +84,13 @@ gpg_sphere() {
+ su_monkeysphere_user gpg --fixed-list-mode --no-greeting --quiet --no-tty "$@"
+ }
+
++check_openpgp2ssh_sanity() {
++ if [[ `su_monkeysphere_user openpgp2ssh ABC &>/dev/null || echo $?` != "255" ]]; then
++ echo "openpgp2ssh command gives unexpected return code. This can lead to a scenario where no authorized keys are populated, even though they are otherwise valid. Aborting!"
++ exit 1
++ fi;
++}
++
+ # output to stdout the core fingerprint from the gpg core secret
+ # keyring
+ core_fingerprint() {
+@@ -163,6 +170,7 @@ case $COMMAND in
+ 'update-users'|'update-user'|'update'|'u')
+ source "${MASHAREDIR}/setup"
+ setup
++ check_openpgp2ssh_sanity
+ source "${MASHAREDIR}/update_users"
+ OUTPUT_STDOUT= update_users "$@"
+ ;;
+@@ -171,6 +179,7 @@ case $COMMAND in
+ (( $# > 0 )) || failure "Must specify user."
+ source "${MASHAREDIR}/setup"
+ setup
++ check_openpgp2ssh_sanity
+ source "${MASHAREDIR}/update_users"
+ OUTPUT_STDOUT=true update_users "$1"
+ ;;
diff --git a/app-crypt/monkeysphere/files/monkeysphere-0.36_tests_gnupg2.patch b/app-crypt/monkeysphere/files/monkeysphere-0.36_tests_gnupg2.patch
new file mode 100644
index 000000000000..712734459054
--- /dev/null
+++ b/app-crypt/monkeysphere/files/monkeysphere-0.36_tests_gnupg2.patch
@@ -0,0 +1,50 @@
+diff -r c13f4b11061e tests/keytrans
+--- a/tests/keytrans Sun Feb 16 19:24:08 2014 +0100
++++ b/tests/keytrans Sun Feb 16 19:27:42 2014 +0100
+@@ -131,9 +131,9 @@
+ cat >"$TEMPDIR"/expectedout <<EOF
+ pub:u:1024:1:$KEYID:$timestamp:::u:::scSC:
+ uid:u::::$timestamp::E90EC72E68C6C2A0751DADC70F54F60D27B88C3D::monkeymonkey:
+-sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:
++sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:::::8:
+ uid:u::::$timestamp::8200BD0425CC70C7D698DF3FE412044EAAB83F94::testtest:
+-sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:
++sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:::::8:
+ EOF
+
+ diff -u "$TEMPDIR"/expectedout <(gpg --check-sigs --with-colons | grep -v ^tru)
+@@ -159,10 +159,10 @@
+ cat >"$TEMPDIR"/expectedout <<EOF
+ pub:u:1024:1:$KEYID:$timestamp:::u:::scSC:
+ uid:u::::$timestamp::E90EC72E68C6C2A0751DADC70F54F60D27B88C3D::monkeymonkey:
+-sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:
++sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:::::8:
+ uid:r::::::8200BD0425CC70C7D698DF3FE412044EAAB83F94::testtest:
+-sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:
+-rev:!::1:$KEYID:$revtime::::monkeymonkey:30x:
++sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:::::8:
++rev:!::1:$KEYID:$revtime::::monkeymonkey:30x:::::8:
+ EOF
+
+
+@@ -190,15 +190,15 @@
+ cat >"$TEMPDIR"/expectedout <<EOF
+ pub:u:1024:1:$KEYID:$timestamp:::u:::scSC:
+ uid:u::::$timestamp::E90EC72E68C6C2A0751DADC70F54F60D27B88C3D::monkeymonkey:
+-sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:
++sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:::::8:
+ uid:r::::::8200BD0425CC70C7D698DF3FE412044EAAB83F94::testtest:
+-sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:
+-rev:!::1:$KEYID:$revtime::::monkeymonkey:30x:
++sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:::::8:
++rev:!::1:$KEYID:$revtime::::monkeymonkey:30x:::::8:
+ uid:u::::$timestamp::EDDC32D783E7F4C7B6982D9AE5DC4A61000648BA::baz:
+-sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:
++sig:!::1:$KEYID:$timestamp::::monkeymonkey:13x:::::8:
+ pub:-:1024:1:$NEWKEYID:$(($timestamp + 1)):::-:::caCA:
+ uid:-::::$(($timestamp + 1))::A0D708F51CC257DEFC01AEDE1E0A5F329DFD8F16::fubar:
+-sig:!::1:$NEWKEYID:$(($timestamp + 1))::::fubar:13x:
++sig:!::1:$NEWKEYID:$(($timestamp + 1))::::fubar:13x:::::8:
+ EOF
+
+ echo "test: diff expected gpg list output"
diff --git a/app-crypt/monkeysphere/files/monkeysphere-0.36_userid_empty_line.patch b/app-crypt/monkeysphere/files/monkeysphere-0.36_userid_empty_line.patch
new file mode 100644
index 000000000000..70c7cffe7dc4
--- /dev/null
+++ b/app-crypt/monkeysphere/files/monkeysphere-0.36_userid_empty_line.patch
@@ -0,0 +1,12 @@
+diff -r 2315bb7781c6 src/share/common
+--- a/src/share/common Thu Oct 10 19:25:10 2013 +0200
++++ b/src/share/common Thu Oct 10 19:25:50 2013 +0200
+@@ -917,7 +917,7 @@
+ IFS=$'\n'
+ while read line ; do
+ case "$line" in
+- ("#"*)
++ ("#"*|"")
+ continue
+ ;;
+ (" "*|$'\t'*)
diff --git a/app-crypt/monkeysphere/files/monkeysphere-0.37_default_shell.patch b/app-crypt/monkeysphere/files/monkeysphere-0.37_default_shell.patch
new file mode 100644
index 000000000000..f979114181d1
--- /dev/null
+++ b/app-crypt/monkeysphere/files/monkeysphere-0.37_default_shell.patch
@@ -0,0 +1,12 @@
+diff -r d0c02fe6a949 src/share/common
+--- a/src/share/common Sun Oct 06 19:21:18 2013 +0200
++++ b/src/share/common Sun Oct 06 19:21:49 2013 +0200
+@@ -108,7 +108,7 @@
+ # if root, su command as monkeysphere user
+ 'root')
+ # requote arguments using bash builtin feature (see "help printf"):
+- su "$MONKEYSPHERE_USER" -c "$(printf "%q " "$@")"
++ su -s /bin/bash "$MONKEYSPHERE_USER" -c "$(printf "%q " "$@")"
+ ;;
+
+ # otherwise, fail
diff --git a/app-crypt/monkeysphere/files/monkeysphere-0.37_hd_od.patch b/app-crypt/monkeysphere/files/monkeysphere-0.37_hd_od.patch
new file mode 100644
index 000000000000..7cdaa74b5735
--- /dev/null
+++ b/app-crypt/monkeysphere/files/monkeysphere-0.37_hd_od.patch
@@ -0,0 +1,14 @@
+diff -r 6150774ec7f4 tests/keytrans
+--- a/tests/keytrans Sun Feb 16 20:11:02 2014 +0100
++++ b/tests/keytrans Sun Feb 16 20:11:40 2014 +0100
+@@ -104,8 +104,8 @@
+ <(gpg --list-packets < "$TEMPDIR"/converted.secret.key)
+
+ diff -u \
+- <(hd "$TEMPDIR"/secret.key) \
+- <(hd "$TEMPDIR"/converted.secret.key)
++ <(od -xc "$TEMPDIR"/secret.key) \
++ <(od -xc "$TEMPDIR"/converted.secret.key)
+
+ KEYFPR=$(gpg --fingerprint --with-colons --list-keys | grep ^fpr | cut -f10 -d:)
+ KEYID=$(printf "%s" "$KEYFPR" | cut -b25-40)
diff --git a/app-crypt/monkeysphere/metadata.xml b/app-crypt/monkeysphere/metadata.xml
new file mode 100644
index 000000000000..fc6ccc280409
--- /dev/null
+++ b/app-crypt/monkeysphere/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>
+ <email>k_f@gentoo.org</email>
+ <name>Kristian Fiskerstrand</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/monkeysphere/monkeysphere-0.36-r1.ebuild b/app-crypt/monkeysphere/monkeysphere-0.36-r1.ebuild
new file mode 100644
index 000000000000..962b46e6c56e
--- /dev/null
+++ b/app-crypt/monkeysphere/monkeysphere-0.36-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils user
+
+DESCRIPTION="Leverage the OpenPGP web of trust for OpenSSH and Web authentication"
+HOMEPAGE="http://web.monkeysphere.info/"
+SRC_URI="http://archive.${PN}.info/debian/pool/${PN}/${PN::1}/${PN}/${PN}_${PV}.orig.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="test"
+
+# Tests do weird things with network and fail OOTB.
+RESTRICT="test"
+
+RDEPEND="
+ app-crypt/gnupg
+ app-misc/lockfile-progs
+ dev-perl/Crypt-OpenSSL-RSA
+ dev-perl/Digest-SHA1
+ || ( net-analyzer/netcat net-misc/socat )"
+DEPEND="${RDEPEND}
+ test? ( net-misc/socat )"
+
+pkg_setup()
+{
+ einfo "Creating named group and user"
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 /var/lib/${PN} ${PN}
+}
+
+src_prepare()
+{
+ epatch "${FILESDIR}/${P}_default_shell.patch" \
+ "${FILESDIR}/${P}_non_default_port.patch" \
+ "${FILESDIR}/${P}_userid_empty_line.patch"
+
+ sed -i "s#share/doc/${PN}#share/doc/${PF}#" Makefile || die
+}
+
+src_install()
+{
+ default
+
+ dodir /var/lib/${PN}
+ fowners root:${PN} /var/lib/${PN}
+ fperms 751 /var/lib/${PN}
+}
+
+pkg_postinst()
+{
+ ${PN}-authentication setup || die
+}
diff --git a/app-crypt/monkeysphere/monkeysphere-0.36-r2.ebuild b/app-crypt/monkeysphere/monkeysphere-0.36-r2.ebuild
new file mode 100644
index 000000000000..fc78d127ba42
--- /dev/null
+++ b/app-crypt/monkeysphere/monkeysphere-0.36-r2.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils user
+
+DESCRIPTION="Leverage the OpenPGP web of trust for OpenSSH and Web authentication"
+HOMEPAGE="http://web.monkeysphere.info/"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE=""
+SRC_URI="mirror://debian/pool/monkeysphere/m/monkeysphere/monkeysphere_${PV}.orig.tar.gz"
+KEYWORDS="~amd64 ~arm ~x86"
+
+DOCS=( README Changelog )
+
+# Tests fail upstream for SSH connection. Issue has been reported.
+RESTRICT="test"
+
+DEPEND="app-crypt/gnupg
+ net-misc/socat
+ dev-perl/Crypt-OpenSSL-RSA
+ dev-perl/Digest-SHA1
+ app-misc/lockfile-progs"
+
+RDEPEND="${DEPEND}"
+
+pkg_setup()
+{
+ einfo "Creating named group and user"
+ enewgroup monkeysphere
+ enewuser monkeysphere -1 -1 /var/lib/monkeysphere monkeysphere
+ # Using fperms and fowner in src_install leave unusable config with error
+ # Authentication refused: bad ownership or modes for directory /var/lib/monkeysphere
+ chown root:monkeysphere /var/lib/monkeysphere
+ chmod 751 /var/lib/monkeysphere
+}
+
+src_prepare()
+{
+ epatch "${FILESDIR}/${P}_default_shell.patch"\
+ "${FILESDIR}/${P}_non_default_port.patch"\
+ "${FILESDIR}/${P}_userid_empty_line.patch"\
+ "${FILESDIR}/${P}_openpgp2ssh_sanity_check.patch"\
+ "${FILESDIR}/${P}_hd_od.patch"
+
+ sed -i "s#share/doc/monkeysphere#share/doc/${PF}#" Makefile || die
+
+ # Output format of gpg --check-sigs differ between 1.4 and 2.0 so test
+ # needs to be updated if 2.0 is used
+ if has_version '>=app-crypt/gnupg-2.0.0:0'; then
+ epatch "${FILESDIR}/${P}_tests_gnupg2.patch"
+ fi;
+}
+
+src_install()
+{
+ default
+ dodir /var/lib/monkeysphere
+}
+
+pkg_postinst()
+{
+ #This function is idempotent, make sure it is run at least once.
+ monkeysphere-authentication setup || die
+}
diff --git a/app-crypt/monkeysphere/monkeysphere-0.37.ebuild b/app-crypt/monkeysphere/monkeysphere-0.37.ebuild
new file mode 100644
index 000000000000..a06860bbd94b
--- /dev/null
+++ b/app-crypt/monkeysphere/monkeysphere-0.37.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils user
+
+DESCRIPTION="Leverage the OpenPGP web of trust for OpenSSH and Web authentication"
+HOMEPAGE="http://web.monkeysphere.info/"
+
+LICENSE="GPL-3"
+SLOT="0/0"
+IUSE=""
+SRC_URI="mirror://debian/pool/monkeysphere/m/monkeysphere/monkeysphere_${PV}.orig.tar.gz http://archive.monkeysphere.info/debian/pool/monkeysphere/m/monkeysphere/monkeysphere_${PV}.orig.tar.gz"
+KEYWORDS="~amd64 ~arm ~x86"
+
+DOCS=( README Changelog )
+
+# Tests fail upstream for SSH connection. Issue has been reported.
+RESTRICT="test"
+
+DEPEND="app-crypt/gnupg:0=
+ net-misc/socat:0=
+ dev-perl/Crypt-OpenSSL-RSA:0=
+ dev-perl/Digest-SHA1:0=
+ app-misc/lockfile-progs:0="
+
+RDEPEND="${DEPEND}"
+
+pkg_setup()
+{
+ einfo "Creating named group and user"
+ enewgroup monkeysphere
+ enewuser monkeysphere -1 -1 /var/lib/monkeysphere monkeysphere
+ # Using fperms and fowner in src_install leave unusable config with error
+ # Authentication refused: bad ownership or modes for directory /var/lib/monkeysphere
+ chown root:monkeysphere /var/lib/monkeysphere
+ chmod 751 /var/lib/monkeysphere
+}
+
+src_prepare()
+{
+ epatch "${FILESDIR}/${P}_default_shell.patch"\
+ "${FILESDIR}/${P}_hd_od.patch"
+
+ sed -i "s#share/doc/monkeysphere#share/doc/${PF}#" Makefile || die
+}
+
+src_install()
+{
+ default
+ dodir /var/lib/monkeysphere
+}
+
+pkg_postinst()
+{
+ monkeysphere-authentication setup || die
+}
diff --git a/app-crypt/nasty/Manifest b/app-crypt/nasty/Manifest
new file mode 100644
index 000000000000..2cae4c193562
--- /dev/null
+++ b/app-crypt/nasty/Manifest
@@ -0,0 +1 @@
+DIST nasty-0.6.tgz 3811 SHA256 7607256d4672f1c52f2603d7b9691e7250bfe3a9b4f219fcbb61227172a7f6b7 SHA512 6803c1ccb843934ab6d2bd173c4cf154124926ee493a79072b351167f7fbbc08f90226ba63d2c591f2ae122d33d7cf1dc6b60e8684dc7ec650c8bcf3f04b3e07 WHIRLPOOL 77f03804ae4f3f8ea91f86cd70da2f63adc105cc50a985a667ec063066205fc388acb33a1464fc748901983ed6fd523b235c572906ff1fd7b7b43b7046e22bb9
diff --git a/app-crypt/nasty/files/nasty-0.6-flags.patch b/app-crypt/nasty/files/nasty-0.6-flags.patch
new file mode 100644
index 000000000000..271bbaab4984
--- /dev/null
+++ b/app-crypt/nasty/files/nasty-0.6-flags.patch
@@ -0,0 +1,22 @@
+--- Makefile
++++ Makefile
+@@ -1,15 +1,16 @@
+ VERSION=0.6
+
+ DEBUG=-g # -pg
+-CFLAGS+=-Wall -O2 -DVERSION=\"${VERSION}\" $(DEBUG)
+-LDFLAGS=-lgpgme $(DEBUG)
++CPPFLAGS+=-DVERSION=\"${VERSION}\" -D_FILE_OFFSET_BITS=64
++CFLAGS+=-Wall $(DEBUG) `gpgme-config --cflags`
++LIBS=`gpgme-config --libs`
+
+ OBJS=nasty.o
+
+ all: nasty
+
+ nasty: $(OBJS)
+- $(CC) -Wall -W $(OBJS) $(LDFLAGS) -o nasty
++ $(CC) $(LDFLAGS) $(OBJS) -o nasty $(LIBS)
+
+ install: nasty
+ cp nasty /usr/bin
diff --git a/app-crypt/nasty/metadata.xml b/app-crypt/nasty/metadata.xml
new file mode 100644
index 000000000000..f08d14f4a08f
--- /dev/null
+++ b/app-crypt/nasty/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<maintainer>
+ <email>robbat2@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-crypt/nasty/nasty-0.6-r1.ebuild b/app-crypt/nasty/nasty-0.6-r1.ebuild
new file mode 100644
index 000000000000..35c3375ccb50
--- /dev/null
+++ b/app-crypt/nasty/nasty-0.6-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Proof-of-concept GPG passphrase recovery tool"
+HOMEPAGE="http://www.vanheusden.com/nasty/"
+SRC_URI="http://www.vanheusden.com/nasty/${P}.tgz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+RDEPEND="app-crypt/gpgme"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-flags.patch"
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" DEBUG= || die "emake failed"
+}
+
+src_install() {
+ dobin nasty || die "dobin nasty failed"
+ dodoc readme.txt
+}
diff --git a/app-crypt/nistp224/Manifest b/app-crypt/nistp224/Manifest
new file mode 100644
index 000000000000..b2e8dbc68fb3
--- /dev/null
+++ b/app-crypt/nistp224/Manifest
@@ -0,0 +1 @@
+DIST nistp224-0.75.tar.gz 204747 SHA256 4e033b1bd0bb906229ed8c42cf87aa03cdc54ad40593ca262c7178fe3425351d SHA512 1f15000e2d62b4a550599632949728b8c81cae61a91c28685c808263d363ef6985fda343ba982ea6ce48314bc4c245b3f099c5e05d2ebac81a0410f4960ffb88 WHIRLPOOL 6ff0b608d33e9c46c017e66346b1bc67ec011a316ee7620a497a8962b2466d3799d0fdcfbf255713395f692ce45497a6e208206154e224792a743df977953c3b
diff --git a/app-crypt/nistp224/files/nistp224-0.75-asmfix.patch b/app-crypt/nistp224/files/nistp224-0.75-asmfix.patch
new file mode 100644
index 000000000000..fd6bfa17109a
--- /dev/null
+++ b/app-crypt/nistp224/files/nistp224-0.75-asmfix.patch
@@ -0,0 +1,39 @@
+diff -ru math.orig/nistp224-0.75/src/opt-idea64.c math/nistp224-0.75/src/opt-idea64.c
+--- math.orig/nistp224-0.75/src/opt-idea64.c 2001-10-19 06:39:19.000000000 +1000
++++ math/nistp224-0.75/src/opt-idea64.c 2007-01-30 11:30:08.000000000 +1100
+@@ -2,7 +2,8 @@
+
+ static void fpmode(void)
+ {
+- asm volatile("fldcw %0"::"m"(0x137f));
++ static short int x=0x137f;
++ asm volatile("fldcw %0"::"m"(*&x));
+ }
+
+ #define T0 1.0
+diff -ru math.orig/nistp224-0.75/src/opt-pentium.c math/nistp224-0.75/src/opt-pentium.c
+--- math.orig/nistp224-0.75/src/opt-pentium.c 2001-10-19 06:39:19.000000000 +1000
++++ math/nistp224-0.75/src/opt-pentium.c 2007-01-30 11:30:44.000000000 +1100
+@@ -129,7 +129,8 @@
+
+ static inline void fpmode(void)
+ {
+- asm volatile("fldcw %0"::"m"(0x137f));
++ static short int x=0x137f;
++ asm volatile("fldcw %0"::"m"(*&x));
+ }
+
+ static void p_sqrt(double out[8],const double in[8])
+diff -ru math.orig/nistp224-0.75/src/opt-ppro.c math/nistp224-0.75/src/opt-ppro.c
+--- math.orig/nistp224-0.75/src/opt-ppro.c 2001-10-19 06:39:19.000000000 +1000
++++ math/nistp224-0.75/src/opt-ppro.c 2007-01-30 11:30:27.000000000 +1100
+@@ -120,7 +120,8 @@
+
+ static inline void fpmode(void)
+ {
+- asm volatile("fldcw %0"::"m"(0x137f));
++ static short int x=0x137f;
++ asm volatile("fldcw %0"::"m"(*&x));
+ }
+
+ static void p_sqrt(double out[8],const double in[8])
diff --git a/app-crypt/nistp224/files/nistp224-0.75-declare-exit.patch b/app-crypt/nistp224/files/nistp224-0.75-declare-exit.patch
new file mode 100644
index 000000000000..a1ecb432a022
--- /dev/null
+++ b/app-crypt/nistp224/files/nistp224-0.75-declare-exit.patch
@@ -0,0 +1,18 @@
+diff -Naur nistp224-0.75.orig/src/main.c nistp224-0.75/src/main.c
+--- math.orig/nistp224-0.75/src/main.c 2008-01-26 21:56:34.000000000 +0100
++++ math/nistp224-0.75/src/main.c 2008-01-26 22:05:17.000000000 +0100
+@@ -1,4 +1,5 @@
+ #include <stdio.h>
++#include <stdlib.h>
+ #include "nistp224.h"
+
+ unsigned char e[28];
+diff -Naur nistp224-0.75.orig/src/nistp224-56.c nistp224-0.75/src/nistp224-56.c
+--- math.orig/nistp224-0.75/src/nistp224-56.c 2008-01-26 21:56:34.000000000 +0100
++++ math/nistp224-0.75/src/nistp224-56.c 2008-01-26 21:57:10.000000000 +0100
+@@ -1,4 +1,5 @@
+ #include <stdio.h>
++#include <stdlib.h>
+ #include "nistp224.h"
+
+ unsigned char e[28];
diff --git a/app-crypt/nistp224/files/nistp224-0.75-honour-CC.patch b/app-crypt/nistp224/files/nistp224-0.75-honour-CC.patch
new file mode 100644
index 000000000000..1f5a938c2cc3
--- /dev/null
+++ b/app-crypt/nistp224/files/nistp224-0.75-honour-CC.patch
@@ -0,0 +1,79 @@
+--- Makefile.orig 2008-11-04 22:36:26.000000000 +0100
++++ Makefile 2008-11-04 22:40:08.000000000 +0100
+@@ -1,3 +1,5 @@
++CC=`head -n 1 conf-cc`
++
+ default: it
+
+ clean:
+@@ -108,7 +110,7 @@
+ hasrpcc.h load rts rts.exp speed systype
+ rm -f sysdeps
+ echo nistp224 0.75 >> sysdeps
+- gcc --version >> sysdeps
++ ${CC} --version >> sysdeps
+ cat systype compile load >> sysdeps
+ grep sysdep hasgethr.h >> sysdeps
+ grep sysdep hasrdtsc.h >> sysdeps
+--- find-systype.sh.orig 2008-11-04 22:35:18.000000000 +0100
++++ find-systype.sh 2008-11-04 22:36:51.000000000 +0100
+@@ -79,8 +79,8 @@
+ ;;
+ esac
+ else
+- gcc -c trycpp.c
+- gcc -o trycpp trycpp.o
++ ${CC} -c trycpp.c
++ ${CC} -o trycpp trycpp.o
+ case `./trycpp` in
+ nextstep)
+ oper="nextstep-`hostinfo | sed -n 's/^[ ]*NeXT Mach \([^:]*\):.*$/\1/p'`"
+--- print-cc.sh.orig 2008-11-04 22:34:51.000000000 +0100
++++ print-cc.sh 2008-11-04 22:35:04.000000000 +0100
+@@ -1,46 +1,5 @@
+ cc="`head -n 1 conf-cc`"
+ systype="`cat systype`"
+
+-
+-gcc -c trycpp.c -malign-double >/dev/null 2>&1 \
+-&& gccad="-malign-double"
+-
+-gcc -c trycpp.c -mcpu=ultrasparc >/dev/null 2>&1 \
+-&& gccus="-mcpu=ultrasparc"
+-
+-gcc -c trycpp.c -mcpu=powerpc >/dev/null 2>&1 \
+-&& gccpp="-mcpu=powerpc"
+-
+-gcc -c trycpp.c -mcpu=21164 >/dev/null 2>&1 \
+-&& gcc21="-mcpu=21164"
+-
+-rm -f trycpp.o
+-
+-
+-gccbase="gcc -fomit-frame-pointer -Wimplicit -Wunused -Wcomment -Wchar-subscripts -Wuninitialized -Wshadow -Wcast-qual -Wcast-align -Wwrite-strings"
+-
+-
+-case "$cc:$systype" in
+- auto:*:i386-*:*)
+- cc="$gccbase -O1 $gccad"
+- ;;
+- auto:*:sparc-*:*:*:*)
+- cc="$gccbase -O1 $gccus"
+- ;;
+- auto:*:ppc-*:*:*:*)
+- cc="$gccbase -O2 $gccpp"
+- ;;
+- auto:*:alpha-*:*:*:*)
+- cc="$gccbase -O2 $gcc21"
+- ;;
+- auto:aix-*:-:-:*:-)
+- cc="$gccbase -O2 $gccpp"
+- ;;
+- auto:*)
+- cc="$gccbase -O2"
+- ;;
+-esac
+-
+-
+ cat warn-auto.sh
+ echo exec "$cc" '-c ${1+"$@"}'
diff --git a/app-crypt/nistp224/metadata.xml b/app-crypt/nistp224/metadata.xml
new file mode 100644
index 000000000000..8252e95f836a
--- /dev/null
+++ b/app-crypt/nistp224/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>
+ <email>maintainer-needed@gentoo.org</email>
+</maintainer>
+<longdescription lang="en">
+nistp224 performs compressed Diffie-Hellman key exchange on the NIST P-224
+elliptic curve at record-setting speeds. It includes an easy-to-use C library
+and a command-line tool. nistp224 also supports uncompressed Diffie-Hellman key
+exchange on the same curve, with 56-byte public keys, at slightly higher speeds.
+</longdescription>
+</pkgmetadata>
diff --git a/app-crypt/nistp224/nistp224-0.75-r1.ebuild b/app-crypt/nistp224/nistp224-0.75-r1.ebuild
new file mode 100644
index 000000000000..81d2ed987811
--- /dev/null
+++ b/app-crypt/nistp224/nistp224-0.75-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils toolchain-funcs flag-o-matic fixheadtails
+
+DESCRIPTION="nistp224 performs compressed Diffie-Hellman key exchange on the NIST P-224 elliptic curve"
+HOMEPAGE="http://cr.yp.to/nistp224.html"
+SRC_URI="http://cr.yp.to/${PN}/${P}.tar.gz"
+
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE=""
+RESTRICT="mirror bindist"
+
+DEPEND=""
+RDEPEND=${DEPEND}
+S="${WORKDIR}/math/${P}/src"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-asmfix.patch
+ epatch "${FILESDIR}"/${P}-declare-exit.patch
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-honour-CC.patch
+ ht_fix_file Makefile print*.sh
+}
+
+src_configure() {
+ append-flags -fPIC
+ echo -n "$(tc-getCC) ${CFLAGS}" > conf-cc
+ echo -n "$(tc-getCC) ${LDFLAGS}" > conf-ld
+ if use ppc; then
+ # untested
+ echo -n "powerpc" > conf-opt
+ elif use sparc; then
+ # untested
+ echo -n "sparc" > conf-opt
+ else
+ # optiminations for ppro and pentium fail
+ echo -n "idea64" > conf-opt
+ fi
+}
+
+src_compile() {
+ emake || die "emake failed"
+}
+
+src_install() {
+ dobin nistp224 nistp224-56
+ mv nistp224.a libnistp224.a
+ dolib.a libnistp224.a
+ insinto /usr/include
+ doins nistp224.h
+}
diff --git a/app-crypt/nwipe/Manifest b/app-crypt/nwipe/Manifest
new file mode 100644
index 000000000000..852c9150ed96
--- /dev/null
+++ b/app-crypt/nwipe/Manifest
@@ -0,0 +1,3 @@
+DIST nwipe-0.12.tar.gz 147380 SHA256 da70976acad36c8f500ecd27b1b0ac4beb81e909f8a761753cd23da37534596a SHA512 c05def96418824fdf372c24323d40c9b4e9fe7ce946af37d8d5bf4dff618c3af2d70dfec6819b89f1dedea835bab66cec2cf4206247c6c7c095aaa18c1bfbb2c WHIRLPOOL 243f840b98994e02dfa9f3737a297b68c754fa0c93f94b7c3799271605501f850f2392edea9e4e33828d15ea05d1d89012c221f073210b9b2e8ef607730201bd
+DIST nwipe-0.13.tar.gz 150344 SHA256 371177edc3784f8dac1b283bfd07cb764f6f8ac0d2cdea2a7030c8e7bd86cac4 SHA512 311142f606cdada7136244adcce8aaeba37fd06a2dc496759ce635db72e9b3d5183e91793f0b5a68d4748b0d3ff00a8663b97ff8118e02b950198edbfcf04382 WHIRLPOOL 4e1c25109179f1a780cbed10c3f344ca0605872899e3f6a4e2954264156c4a39d20e77b8b0dc9a9cf7581cc3f49581b298442e2d5b4e8a1bee95a3d0bc762e99
+DIST nwipe-0.14.tar.gz 150685 SHA256 2fa879256bad5e2369e325e6cb047651b85eb1e8bc88ce9fc89c1db3f4067a2a SHA512 f218f4c9d1add4f9decff5657767cfc0c38bfc57e834dca1759fa44d3a20d108bb9e9addf810fabc576aeaff5a6cb61ace0eb5199d29f69c18251046ab3a2a52 WHIRLPOOL b5d304b8bbf0e32438d128de30a5506179adac5f37b35be997f5e7deface65c00d1a05ef991c9621c924632575b9c3b6c4a1968125abefc11894ead2120a6de2
diff --git a/app-crypt/nwipe/files/nwipe-0.12-ncurses.patch b/app-crypt/nwipe/files/nwipe-0.12-ncurses.patch
new file mode 100644
index 000000000000..7cb8131fb0bc
--- /dev/null
+++ b/app-crypt/nwipe/files/nwipe-0.12-ncurses.patch
@@ -0,0 +1,59 @@
+From 0176793f19a368c3786c231042b87c3a2ef3de2b Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sun, 3 Feb 2013 00:40:57 +0200
+Subject: [PATCH] build: detect ncurses using pkg-config
+
+---
+ configure.ac | 32 ++++++++++++++++++++------------
+ 1 file changed, 20 insertions(+), 12 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index a551913..a84680f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -10,22 +10,30 @@ AC_CONFIG_HEADERS([config.h])
+
+ # Checks for programs.
+ AC_PROG_CC
++PKG_PROG_PKG_CONFIG
+
+ # Checks for libraries.
+
+-# Check for ncurses. If we find the library then we check to see if it's
+-# in a ncurses directory inside the include directory.
+-# The assumption is made in the source code that panel.h will be in the same place
+-AC_CHECK_LIB([ncurses], [delscreen], [
+- LIBS="-lncurses $LIBS"
+- AC_CHECK_HEADERS(ncurses.h,, [
+- AC_CHECK_HEADERS(ncurses/ncurses.h, [
+- AC_DEFINE([NCURSES_IN_SUBDIR], [ncurses/], [Look for ncurses headers in subdir])
+- ], [AC_MSG_ERROR([ncurses headers not found])])
+- ])
+- ], [AC_MSG_ERROR([ncurses development library not found])]
++PKG_CHECK_MODULES(
++ [PANEL],
++ [panel],
++ [
++ CFLAGS="${CFLAGS} ${PANEL_CFLAGS}"
++ LIBS="${LIBS} ${PANEL_LIBS}"
++ ],
++ [
++ AC_CHECK_LIB([ncurses], [delscreen], [
++ LIBS="-lncurses $LIBS"
++ AC_CHECK_HEADERS(ncurses.h,, [
++ AC_CHECK_HEADERS(ncurses/ncurses.h, [
++ AC_DEFINE([NCURSES_IN_SUBDIR], [ncurses/], [Look for ncurses headers in subdir])
++ ], [AC_MSG_ERROR([ncurses headers not found])])
++ ])
++ ], [AC_MSG_ERROR([ncurses development library not found])]
++ )
++ AC_CHECK_LIB([panel], [main], ,[AC_MSG_ERROR([ncurses panel library not found])])
++ ]
+ )
+-AC_CHECK_LIB([panel], [main], ,[AC_MSG_ERROR([ncurses panel library not found])])
+
+ AC_CHECK_LIB([parted], [ped_device_probe_all], ,[AC_MSG_ERROR([parted development library not found])])
+ AC_CHECK_LIB([pthread], [main], ,[AC_MSG_ERROR([pthread development library not found])])
+--
+1.7.12.4
+
diff --git a/app-crypt/nwipe/metadata.xml b/app-crypt/nwipe/metadata.xml
new file mode 100644
index 000000000000..1da17f136e47
--- /dev/null
+++ b/app-crypt/nwipe/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <maintainer>
+ <email>ssuominen@gentoo.org</email>
+ <name>Samuli Suominen</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">nwipe</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/nwipe/nwipe-0.12-r1.ebuild b/app-crypt/nwipe/nwipe-0.12-r1.ebuild
new file mode 100644
index 000000000000..54d6eb844989
--- /dev/null
+++ b/app-crypt/nwipe/nwipe-0.12-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils autotools
+
+DESCRIPTION="Securely erase disks using a variety of recognized methods"
+HOMEPAGE="http://sourceforge.net/projects/nwipe/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=sys-block/parted-2.3
+ >=sys-libs/ncurses-5.7-r7"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+DOCS="README"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-ncurses.patch"
+ eautoreconf
+}
diff --git a/app-crypt/nwipe/nwipe-0.12.ebuild b/app-crypt/nwipe/nwipe-0.12.ebuild
new file mode 100644
index 000000000000..a60367e42928
--- /dev/null
+++ b/app-crypt/nwipe/nwipe-0.12.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools
+
+DESCRIPTION="Securely erase disks using a variety of recognized methods"
+HOMEPAGE="http://sourceforge.net/projects/nwipe/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=sys-block/parted-2.3
+ >=sys-libs/ncurses-5.7-r7"
+DEPEND=${RDEPEND}
+
+DOCS="README"
+
+src_prepare() { eautoreconf; } # prevent maintainer mode
diff --git a/app-crypt/nwipe/nwipe-0.13.ebuild b/app-crypt/nwipe/nwipe-0.13.ebuild
new file mode 100644
index 000000000000..457c3ee575d9
--- /dev/null
+++ b/app-crypt/nwipe/nwipe-0.13.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Securely erase disks using a variety of recognized methods"
+HOMEPAGE="http://sourceforge.net/projects/nwipe/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=sys-block/parted-2.3
+ >=sys-libs/ncurses-5.7-r7"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+DOCS="README"
diff --git a/app-crypt/nwipe/nwipe-0.14.ebuild b/app-crypt/nwipe/nwipe-0.14.ebuild
new file mode 100644
index 000000000000..457c3ee575d9
--- /dev/null
+++ b/app-crypt/nwipe/nwipe-0.14.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Securely erase disks using a variety of recognized methods"
+HOMEPAGE="http://sourceforge.net/projects/nwipe/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=sys-block/parted-2.3
+ >=sys-libs/ncurses-5.7-r7"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+DOCS="README"
diff --git a/app-crypt/oclhashcat-lite-bin/Manifest b/app-crypt/oclhashcat-lite-bin/Manifest
new file mode 100644
index 000000000000..ee8ff31a351c
--- /dev/null
+++ b/app-crypt/oclhashcat-lite-bin/Manifest
@@ -0,0 +1 @@
+DIST oclHashcat-lite-0.15.7z 6026598 SHA256 40fd6f5410e1c0d5d5e7c9d60c173d838289025a2fc36b86690fb26657ed5796 SHA512 b70738a40cdbc5062cb72f1de93a2d29cdd824b7f3cb0f5bc42e3a7e83246d2247385040efe230afffa26ddf26823ecefabf16f31b1925c7460e7cd8933342b8 WHIRLPOOL b53ce94f04dd464fd6727641726aa56620ec6dcf5c557887c7346955b08b33f187b59db27debf98210c477299ef13c8f7334e8c3b2234b27edf0fe97b1438235
diff --git a/app-crypt/oclhashcat-lite-bin/metadata.xml b/app-crypt/oclhashcat-lite-bin/metadata.xml
new file mode 100644
index 000000000000..8006cb0e3265
--- /dev/null
+++ b/app-crypt/oclhashcat-lite-bin/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<maintainer>
+<email>zerochaos@gentoo.org</email>
+<name>Rick Farina</name>
+</maintainer>
+<use><flag name="virtualcl">Support for Mosix VirtualCL Clustering Platform</flag></use>
+</pkgmetadata>
+
diff --git a/app-crypt/oclhashcat-lite-bin/oclhashcat-lite-bin-0.15.ebuild b/app-crypt/oclhashcat-lite-bin/oclhashcat-lite-bin-0.15.ebuild
new file mode 100644
index 000000000000..caf544ad8bf3
--- /dev/null
+++ b/app-crypt/oclhashcat-lite-bin/oclhashcat-lite-bin-0.15.ebuild
@@ -0,0 +1,150 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils pax-utils
+
+DESCRIPTION="An opencl hash cracker"
+HOMEPAGE="http://hashcat.net/oclhashcat-lite/"
+MY_P="oclHashcat-lite-${PV}"
+SRC_URI="http://hashcat.net/files/${MY_P}.7z"
+
+#license applies to this version per http://hashcat.net/forum/thread-1348.html
+LICENSE="hashcat"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+
+IUSE_VIDEO_CARDS="video_cards_fglrx
+ video_cards_nvidia"
+
+IUSE="virtualcl ${IUSE_VIDEO_CARDS}"
+
+RDEPEND="sys-libs/zlib
+ video_cards_nvidia? ( >=x11-drivers/nvidia-drivers-310.32 )
+ video_cards_fglrx? ( >=x11-drivers/ati-drivers-13.1 )"
+DEPEND="${RDEPEND}
+ app-arch/p7zip"
+
+S="${WORKDIR}/${MY_P}"
+
+RESTRICT="strip"
+QA_PREBUILT="*Hashcat-lite*.bin"
+
+src_prepare() {
+ if use x86; then
+ rm oclHashcat-lite64.bin || die
+ rm cudaHashcat-lite64.bin || die
+ fi
+ if use amd64; then
+ rm oclHashcat-lite32.bin || die
+ rm cudaHashcat-lite32.bin || die
+ fi
+ if ! use video_cards_fglrx; then
+ rm -r kernels/4098 || die
+ rm oclHashcat-lite*.bin || die
+ fi
+ if ! use video_cards_nvidia; then
+ rm -r kernels/4318 || die
+ rm cudaHashcat-lite*.bin || die
+ fi
+ use virtualcl || { rm vclHashcat-lite* || die; }
+
+ pax-mark r *Hashcat-lite*.bin
+}
+
+src_test() {
+ printf "%02x" ${PV#0.} > "${S}"/eula.accepted
+ if use video_cards_nvidia; then
+ addwrite /dev/nvidia0
+ addwrite /dev/nvidiactl
+ if [ ! -w /dev/nvidia0 ]; then
+ einfo "To run these tests, portage likely must be in the video group."
+ einfo "Please run \"passwd -a portage video\" if the tests will fail"
+ fi
+ if use amd64; then
+ ./cudaHashcat-lite64.bin 6fc33db981c6c55189bbda9625eacd6d
+ elif use x86; then
+ ./cudaHashcat-lite32.bin 6fc33db981c6c55189bbda9625eacd6d
+ fi
+ fi
+ if use video_cards_fglrx; then
+ addwrite /dev/ati
+ if use amd64; then
+ ./oclHashcat-lite64.bin 6fc33db981c6c55189bbda9625eacd6d
+ elif use x86; then
+ ./oclHashcat-lite32.bin 6fc33db981c6c55189bbda9625eacd6d
+ fi
+ fi
+ rm eula.accepted cudaHashcat-lite.restore
+}
+
+src_install() {
+ dodoc docs/*
+ rm -r "${S}"/*.exe "${S}"/*.cmd "${S}"/docs || die
+
+ insinto /opt/${PN}
+ doins -r "${S}"/*
+
+ dodir /opt/bin
+
+ cat <<-EOF > "${ED}"/opt/bin/oclhashcat-lite
+ #! /bin/sh
+ echo "oclHashcat-lite and all related files have been installed in /opt/${PN}"
+ echo "Please run one of the following binaries to use gpu accelerated hashcat:"
+ EOF
+
+ for x in oclHashcat-lite64.bin oclHashcat-lite32.bin cudaHashcat-lite64.bin cudaHashcat-lite32.bin vclHashcat-lite64.bin vclHashcat-lite32.bin
+ do
+ if [ -f "${ED}"/opt/${PN}/${x} ]
+ then
+ case "${x}" in
+ oclHashcat-lite64.bin)
+ echo "echo '64 bit ATI accelerated \"oclHashcat-lite64.bin\"'" >> "${ED}"/opt/bin/oclhashcat-lite
+ ;;
+ oclHashcat-lite32.bin)
+ echo "echo '32 bit ATI accelerated \"oclHashcat-lite32.bin\"'" >> "${ED}"/opt/bin/oclhashcat-lite
+ ;;
+ cudaHashcat-lite64.bin)
+ echo "echo '64 bit NVIDIA accelerated \"cudaHashcat-lite64.bin\"'" >> "${ED}"/opt/bin/oclhashcat-lite
+ ;;
+ cudaHashcat-lite32.bin)
+ echo "echo '32 bit NVIDIA accelerated \"cudaHashcat-lite32.bin\"'" >> "${ED}"/opt/bin/oclhashcat-lite
+ ;;
+ vclHashcat-lite64.bin)
+ echo "echo '64 bit VirtualCL Cluster support \"vclHashcat-lite64.bin\"'" >> "${ED}"/opt/bin/oclhashcat-lite
+ ;;
+ vclHashcat-lite32.bin)
+ echo "echo '32 bit VirtualCL Cluster support \"vclHashcat-lite32.bin\"'" >> "${ED}"/opt/bin/oclhashcat-lite
+ ;;
+ esac
+
+ fperms +x /opt/${PN}/${x}
+
+ cat <<-EOF > "${ED}"/opt/bin/${x}
+ #! /bin/sh
+ cd /opt/${PN}
+ echo "Warning: ${x} is running from /opt/${PN} so be careful of relative paths."
+ exec ./${x} "\$@"
+ EOF
+
+ fperms +x /opt/bin/${x}
+
+ fi
+ done
+
+ fperms +x /opt/bin/oclhashcat-lite
+ fowners -R root:video /opt/${PN}
+ fperms g+w /opt/${PN}
+ einfo "oclhashcat-lite can be run as user if you are in the video group"
+}
+
+pkg_preinst() {
+ #I feel so dirty doing this
+ #first we remove the eula.accepted because it cannot properly handle and empty or old one (crash or doesn't run at all)
+ rm -f "${EROOT}"/opt/${PN}/eula.accepted
+ #next we remove any compiled kernel files as these get built on first run only if they aren't there because there are no timestamp checks
+ rm -f "${EROOT}"/opt/${PN}/kernels/{4318,4098}/"*.kernel"
+ #have mercy on my soul
+}
diff --git a/app-crypt/oclhashcat-plus-bin/Manifest b/app-crypt/oclhashcat-plus-bin/Manifest
new file mode 100644
index 000000000000..7037fa24213d
--- /dev/null
+++ b/app-crypt/oclhashcat-plus-bin/Manifest
@@ -0,0 +1 @@
+DIST oclHashcat-plus-0.15.7z 71543716 SHA256 545bbaa4ea4fb45a4c4af365e880c56dce8d8bd9c8d73ad2f9cdc16b5df47f14 SHA512 0b11aa805b186a432ee8a9f6ff5823235986d2552fc99b5365150c165bd10232a76408b375887483375cf1e29d8e78de2dadf2e046863061c7ce8722c7591da4 WHIRLPOOL 1a8e52990831ed113c06d702f0de4e5a82f0d3250c630fde8b3b11e5c4d48a0361a1fd8513ce0f183513c3329aa4aa7dd276789f2b04bde44226a16d7e86829a
diff --git a/app-crypt/oclhashcat-plus-bin/metadata.xml b/app-crypt/oclhashcat-plus-bin/metadata.xml
new file mode 100644
index 000000000000..8006cb0e3265
--- /dev/null
+++ b/app-crypt/oclhashcat-plus-bin/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<maintainer>
+<email>zerochaos@gentoo.org</email>
+<name>Rick Farina</name>
+</maintainer>
+<use><flag name="virtualcl">Support for Mosix VirtualCL Clustering Platform</flag></use>
+</pkgmetadata>
+
diff --git a/app-crypt/oclhashcat-plus-bin/oclhashcat-plus-bin-0.15.ebuild b/app-crypt/oclhashcat-plus-bin/oclhashcat-plus-bin-0.15.ebuild
new file mode 100644
index 000000000000..b45527e33d5a
--- /dev/null
+++ b/app-crypt/oclhashcat-plus-bin/oclhashcat-plus-bin-0.15.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils pax-utils
+
+DESCRIPTION="An opencl multihash cracker"
+HOMEPAGE="http://hashcat.net/oclhashcat-plus/"
+
+MY_P="oclHashcat-plus-${PV}"
+SRC_URI="http://hashcat.net/files/${MY_P}.7z"
+
+LICENSE="hashcat"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+
+IUSE_VIDEO_CARDS="video_cards_fglrx
+ video_cards_nvidia"
+
+IUSE="virtualcl ${IUSE_VIDEO_CARDS}"
+
+RDEPEND="sys-libs/zlib
+ video_cards_nvidia? ( >=x11-drivers/nvidia-drivers-319.37 )
+ video_cards_fglrx? ( >=x11-drivers/ati-drivers-13.4 )"
+DEPEND="${RDEPEND}
+ app-arch/p7zip"
+
+S="${WORKDIR}/${MY_P}"
+
+RESTRICT="strip"
+QA_PREBUILT="*Hashcat-plus*.bin
+ opt/${PN}/kernels/4098/*.llvmir"
+
+src_prepare() {
+ use x86 && rm *Hashcat-plus64*
+ use amd64 && rm *Hashcat-plus32*
+ use virtualcl || rm vclHashcat-plus*
+
+ if ! use video_cards_fglrx; then
+ rm -r kernels/4098 || die
+ rm oclHashcat-plus*.bin || die
+ fi
+ if ! use video_cards_nvidia; then
+ rm -r kernels/4318 || die
+ rm cudaHashcat-plus*.bin || die
+ fi
+
+ #paxmark goes here so test and install works
+ pax-mark r *Hashcat-plus*.bin
+}
+
+src_test() {
+ printf "%02x" ${PV#0.} > "${S}"/eula.accepted
+ if use video_cards_nvidia; then
+ addwrite /dev/nvidia0
+ addwrite /dev/nvidiactl
+ if [ ! -w /dev/nvidia0 ]; then
+ einfo "To run these tests, portage likely must be in the video group."
+ einfo "Please run \"gpasswd -a portage video\" if the tests will fail"
+ fi
+ if use amd64; then
+ ./cudaHashcat-plus64.bin -a 3 -m 1500 nQCk49SiErOgk || die
+ elif use x86; then
+ ./cudaHashcat-plus32.bin -a 3 -m 1500 nQCk49SiErOgk || die
+ fi
+ fi
+ if use video_cards_fglrx; then
+ addwrite /dev/ati
+ if use amd64; then
+ ./oclHashcat-plus64.bin -a 3 -m 1500 nQCk49SiErOgk || die
+ elif use x86; then
+ ./oclHashcat-plus32.bin -a 3 -m 1500 nQCk49SiErOgk || die
+ fi
+ fi
+ rm eula.accepted hashcat.pot hashcat.dictstat
+}
+
+src_install() {
+ dodoc docs/*
+ rm -r "${S}"/*.exe "${S}"/*.cmd "${S}"/docs || die
+
+ insinto /opt/${PN}
+ doins -r "${S}"/* || die "Copy files failed"
+
+ dodir /opt/bin
+
+ cat <<-EOF > "${ED}"/opt/bin/oclhashcat-plus
+ #! /bin/sh
+ echo "oclHashcat-plus and all related files have been installed in /opt/${PN}"
+ echo "Please run one of the following binaries to use gpu accelerated hashcat:"
+ EOF
+
+ for x in oclHashcat-plus64.bin oclHashcat-plus32.bin cudaHashcat-plus64.bin cudaHashcat-plus32.bin vclHashcat-plus64.bin vclHashcat-plus32.bin
+ do
+ if [ -f "${ED}"/opt/${PN}/${x} ]
+ then
+ case "${x}" in
+ oclHashcat-plus64.bin)
+ echo "echo '64 bit ATI accelerated \"oclHashcat-plus64.bin\"'" >> "${ED}"/opt/bin/oclhashcat-plus
+ ;;
+ oclHashcat-plus32.bin)
+ echo "echo '32 bit ATI accelerated \"oclHashcat-plus32.bin\"'" >> "${ED}"/opt/bin/oclhashcat-plus
+ ;;
+ cudaHashcat-plus64.bin)
+ echo "echo '64 bit NVIDIA accelerated \"cudaHashcat-plus64.bin\"'" >> "${ED}"/opt/bin/oclhashcat-plus
+ ;;
+ cudaHashcat-plus32.bin)
+ echo "echo '32 bit NVIDIA accelerated \"cudaHashcat-plus32.bin\"'" >> "${ED}"/opt/bin/oclhashcat-plus
+ ;;
+ vclHashcat-plus64.bin)
+ echo "echo '64 bit VirtualCL Cluster support \"vclHashcat-plus64.bin\"'" >> "${ED}"/opt/bin/oclhashcat-plus
+ ;;
+ vclHashcat-plus32.bin)
+ echo "echo '32 bit VirtualCL Cluster support \"vclHashcat-plus32.bin\"'" >> "${ED}"/opt/bin/oclhashcat-plus
+ ;;
+ esac
+
+ fperms +x /opt/${PN}/${x}
+
+ cat <<-EOF > "${ED}"/opt/bin/${x}
+ #! /bin/sh
+ cd /opt/${PN}
+ echo "Warning: ${x} is running from /opt/${PN} so be careful of relative paths."
+ exec ./${x} "\$@"
+ EOF
+
+ fperms +x /opt/bin/${x}
+
+ fi
+ done
+
+ fperms +x /opt/bin/oclhashcat-plus
+ fowners -R root:video /opt/${PN}
+ fperms g+w /opt/${PN}
+ einfo "oclhashcat-plus can be run as user if you are in the video group"
+}
+
+pkg_preinst() {
+ #I feel so dirty doing this
+ #first we remove the eula.accepted because it cannot properly handle and empty or old one (crash or doesn't run at all)
+ rm -f "${EROOT}"/opt/${PN}/eula.accepted
+ #next we remove any compiled kernel files as these get built on first run only if they aren't there because there are no timestamp checks
+ rm -f "${EROOT}"/opt/${PN}/kernels/{4318,4098}/"*.kernel"
+ #have mercy on my soul
+}
diff --git a/app-crypt/onak/Manifest b/app-crypt/onak/Manifest
new file mode 100644
index 000000000000..6aaef69d56bf
--- /dev/null
+++ b/app-crypt/onak/Manifest
@@ -0,0 +1 @@
+DIST onak-0.4.0.tar.gz 230996 SHA256 e402042d2cbcbe34cfac1d737a564054fea84ad5c00386ab0c877698c3076ecd SHA512 0cf8960652cda242fde2e834953581312431136fe380076bc3b76b42ef11ff1c83975d6d4fc8463466ce37b84c71c83fbbdfb08cd5eefb9928814b550c08ce67 WHIRLPOOL 7a56f17a856e297853e3872ac7b7f712c07e44d071d71f198785ddd5e61300b471e70b6829193ec0c01fb883f5668151f157f229d979df883ae9178cb3834177
diff --git a/app-crypt/onak/files/onak-0.3.7-berkdb-5.0.patch b/app-crypt/onak/files/onak-0.3.7-berkdb-5.0.patch
new file mode 100644
index 000000000000..e30c8c7a1488
--- /dev/null
+++ b/app-crypt/onak/files/onak-0.3.7-berkdb-5.0.patch
@@ -0,0 +1,13 @@
+http://bugs.gentoo.org/319677
+
+--- configure.ac
++++ configure.ac
+@@ -17,7 +17,7 @@
+ printf "#include <db.h>\nDB_VERSION_MAJOR DB_VERSION_MINOR\n" >conftest.c
+ set `eval $ac_cpp conftest.c | egrep '^ *[[0-9]] *'`; v="$1"; vv="$2"
+ AC_MSG_RESULT($v.$vv)
+-if test "$v" -eq 4; then
++if test "$v" -ge 4; then
+ for db in "db-$v.$vv" "db$v.$vv" "db-$v" "db$v" "db"; do
+ AC_MSG_CHECKING(for db_create in lib$db)
+ oldLIBS="$LIBS"
diff --git a/app-crypt/onak/metadata.xml b/app-crypt/onak/metadata.xml
new file mode 100644
index 000000000000..f08d14f4a08f
--- /dev/null
+++ b/app-crypt/onak/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<maintainer>
+ <email>robbat2@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-crypt/onak/onak-0.4.0.ebuild b/app-crypt/onak/onak-0.4.0.ebuild
new file mode 100644
index 000000000000..8275c1c33100
--- /dev/null
+++ b/app-crypt/onak/onak-0.4.0.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=2
+inherit autotools eutils
+
+DESCRIPTION="onak is an OpenPGP keyserver"
+HOMEPAGE="http://www.earth.li/projectpurple/progs/onak.html"
+SRC_URI="http://www.earth.li/projectpurple/files/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="berkdb postgres"
+
+DEPEND="berkdb? ( >=sys-libs/db-4 )
+ postgres? ( dev-db/postgresql[server] )"
+
+src_prepare() {
+ # Merged upstream
+ #epatch "${FILESDIR}"/${P}-berkdb-5.0.patch
+ eautoreconf
+}
+
+src_configure() {
+ local backend="fs"
+ use berkdb && backend="db4"
+ use postgres && backend="pg"
+ if use berkdb && use postgres; then
+ ewarn "berkdb and postgres requested, postgres was preferred"
+ fi
+ econf --enable-backend="${backend}"
+}
+
+src_install() {
+ keepdir /var/lib/onak
+ dosbin onak maxpath sixdegrees onak-mail.pl
+ dobin splitkeys stripkey
+ doman *.[1-8]
+ insinto /etc
+ doins onak.conf
+ dodir /var/lib/onak/doc
+ insinto /var/lib/onak/doc
+ doins apache2 README LICENSE onak.sql
+ dodir /usr/lib/cgi-bin/pks
+ insinto /usr/lib/cgi-bin/pks
+ doins add gpgwww lookup
+
+ sed -i \
+ -e 's,^www_port 11371,www_port 0,g' \
+ -e 's,^db_dir /var/lib/lib/onak,db_dir /var/lib/onak,g' \
+ -e 's,^logfile /var/lib/log/onak.log,logfile /var/log/onak.log,g' \
+ -e 's,^max_last 1,max_last 0,g' \
+ "${D}/etc/onak.conf"
+}
diff --git a/app-crypt/openssl-blacklist/Manifest b/app-crypt/openssl-blacklist/Manifest
new file mode 100644
index 000000000000..5cefbb0be831
--- /dev/null
+++ b/app-crypt/openssl-blacklist/Manifest
@@ -0,0 +1,2 @@
+DIST openssl-blacklist_0.5-3.diff.gz 20228 SHA256 caf34380fce6f4b31d958a176f8f5d0a4d1e9da66ceaed2e5a20c7929d341942 SHA512 5e5b7fdc97248ccc44f3ffa306a23f9d3ed9585cee15f1ad55dffcf4e70a50463c05382b393bc07e4bd18ea530eea7d36a508f40c1e03b0932eb3cde43f886bd WHIRLPOOL 4d7dd96e4c0b8ff780d64848cf15e1be9c0c97651b4aeefb502093a4436ab706f23f0399972e8f3fea28413efd7c76964034d335ca1c0a1b23153bbf1d6d8cd5
+DIST openssl-blacklist_0.5.orig.tar.gz 32908393 SHA256 d194cafbbad9ba10b6dd1721ee241c1a645552d206203f764fe4f059b29175bb SHA512 b0ecab15f4357b56508b048a0648263f118aa8eeda8ad6a15caab8c38b2270a5daf897026daf376a561b292c64c2651269182732e0ae3e4bbac455cc1d3985ab WHIRLPOOL dbbcd44db10dba96390ae7d32ca008ce62a43c2764aa582009b4b8d809be8241553cab5a8cb778401b88ad88da1edd1125775d74ada61b73a2d3b812a1ed8b5f
diff --git a/app-crypt/openssl-blacklist/metadata.xml b/app-crypt/openssl-blacklist/metadata.xml
new file mode 100644
index 000000000000..bc1e2719c4da
--- /dev/null
+++ b/app-crypt/openssl-blacklist/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>
+ <email>hanno@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="launchpad">ubuntu/+source/openssl-blacklist</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/openssl-blacklist/openssl-blacklist-0.5.3.ebuild b/app-crypt/openssl-blacklist/openssl-blacklist-0.5.3.ebuild
new file mode 100644
index 000000000000..204b5ea0919c
--- /dev/null
+++ b/app-crypt/openssl-blacklist/openssl-blacklist-0.5.3.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils versionator python-single-r1
+
+MY_PV=$(get_version_component_range 1-2)
+MY_P="${PN}-${MY_PV}"
+DEB_P="${PN}_${MY_PV}"
+DEB_PVER=$(get_version_component_range 3)
+DEB_PATCH="${DEB_P}-${DEB_PVER}.diff"
+
+DESCRIPTION="Detection of weak ssl keys produced by certain debian versions between 2006 and 2008"
+HOMEPAGE="https://launchpad.net/ubuntu/+source/openssl-blacklist/"
+SRC_URI="mirror://debian/pool/main/o/${PN}/${DEB_P}.orig.tar.gz
+ mirror://debian/pool/main/o/${PN}/${DEB_PATCH}.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 hppa x86 ~x86-fbsd"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ EPATCH_OPTS="-p1" epatch "${WORKDIR}"/${DEB_PATCH}
+}
+
+src_install() {
+ dobin openssl-vulnkey
+ doman openssl-vulnkey.1
+ insinto /usr/share/openssl-blacklist
+
+ # ripped from debian/rules "install" target
+ local keysize
+ for keysize in 512 1024 2048 4096 ; do
+ (
+ cat debian/blacklist.prefix
+ cat blacklists/{be32,le32,le64}/blacklist-${keysize}.db \
+ | cut -d ' ' -f 5 | cut -b21- | sort
+ ) > blacklist.RSA-${keysize}
+ doins blacklist.RSA-${keysize}
+ done
+
+ python_fix_shebang "${ED}/usr/bin/openssl-vulnkey"
+}
diff --git a/app-crypt/openssl-tpm-engine/Manifest b/app-crypt/openssl-tpm-engine/Manifest
new file mode 100644
index 000000000000..73f7b0a8a849
--- /dev/null
+++ b/app-crypt/openssl-tpm-engine/Manifest
@@ -0,0 +1 @@
+DIST openssl_tpm_engine-0.4.1.tar.gz 648249 SHA256 01d1244f1985d5ba1720a64d04de9080acd9b1c08cc04a2f1b7beb6850deae67 SHA512 5904f268cb3ecf2243ed87d4813597418b8df27bf3dc20ba2af4b30c2fd946584581fb108eee490649700fc1d491a439e5bbc1514aa6b44ce2bed75b289c7485 WHIRLPOOL d0e59c85276657f421d650a387f57541f9e4f0b67805d6181417670763ca9e5dbbbcfc0c64f83411960b20dd143c6f1d43e775994f34826037c711b2231eb4d6
diff --git a/app-crypt/openssl-tpm-engine/metadata.xml b/app-crypt/openssl-tpm-engine/metadata.xml
new file mode 100644
index 000000000000..4df7fbfabf49
--- /dev/null
+++ b/app-crypt/openssl-tpm-engine/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <upstream>
+ <remote-id type="sourceforge">trousers</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/openssl-tpm-engine/openssl-tpm-engine-0.4.1.ebuild b/app-crypt/openssl-tpm-engine/openssl-tpm-engine-0.4.1.ebuild
new file mode 100644
index 000000000000..fef16a4c5a1c
--- /dev/null
+++ b/app-crypt/openssl-tpm-engine/openssl-tpm-engine-0.4.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+MY_P="${P/-tpm-/_tpm_}"
+
+DESCRIPTION="This provides a OpenSSL engine that uses private keys stored in TPM hardware"
+HOMEPAGE="http://trousers.sourceforge.net"
+SRC_URI="mirror://sourceforge/trousers/${MY_P}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE=""
+RDEPEND=">=dev-libs/openssl-0.9.8
+ >=app-crypt/trousers-0.2.8"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ # autotools way too old to fix it properly
+ sed -i 's/^\(create_tpm_key_LDADD.*\)/\1 -L@OPENSSL_LIB_DIR@ -lcrypto/' Makefile.in
+}
+
+src_configure() {
+ econf --with-openssl=/usr
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc openssl.cnf.sample README
+}
diff --git a/app-crypt/openvpn-blacklist/Manifest b/app-crypt/openvpn-blacklist/Manifest
new file mode 100644
index 000000000000..8f42e2e0a1f0
--- /dev/null
+++ b/app-crypt/openvpn-blacklist/Manifest
@@ -0,0 +1 @@
+DIST openvpn-blacklist_0.4.tar.gz 1808103 SHA256 01d0cddab3db957661dc8019c1b672068699f1f7cf8633748b6222601ecb0108 SHA512 3301f7425520eb086306acb30bd718465208b5aa5606e879b65f936161d1955b93254d9c1dd6f5d66ec6480850652afadabb05db2a0df9fd5acb73a5ed5c19e3 WHIRLPOOL 7eba98ff8e1281e5008f01a360aa37aba87a494d187ef1a83599aa57d16cb2980e021af4ee25abc92c83eee1a8c287b4567f671a4bca0753ef1ea68120aa2600
diff --git a/app-crypt/openvpn-blacklist/metadata.xml b/app-crypt/openvpn-blacklist/metadata.xml
new file mode 100644
index 000000000000..8cb548491f4e
--- /dev/null
+++ b/app-crypt/openvpn-blacklist/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><email>hanno@gentoo.org</email></maintainer>
+</pkgmetadata>
diff --git a/app-crypt/openvpn-blacklist/openvpn-blacklist-0.4-r1.ebuild b/app-crypt/openvpn-blacklist/openvpn-blacklist-0.4-r1.ebuild
new file mode 100644
index 000000000000..a7fb81d908ff
--- /dev/null
+++ b/app-crypt/openvpn-blacklist/openvpn-blacklist-0.4-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+inherit python-single-r1
+
+DESCRIPTION="Detection of weak openvpn keys produced by certain debian versions between 2006 and 2008"
+HOMEPAGE="http://packages.debian.org/sid/openvpn-blacklist"
+SRC_URI="mirror://debian/pool/main/o/${PN}/${PN}_${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=${PYTHON_DEPS}
+REQUIRED_USE=${PYTHON_REQUIRED_USE}
+
+src_prepare() {
+ python_fix_shebang openvpn-vulnkey
+}
+
+src_install() {
+ dobin openvpn-vulnkey
+ doman openvpn-vulnkey.1
+ dodir /usr/share/openvpn-blacklist
+ cat "${S}/debian/blacklist.prefix" > "${D}/usr/share/openssl-blacklist/blacklist.RSA-2048"
+ cut "${S}/blacklist.RSA-2048" -d ' ' -f 2 | cut -b13- | sort \
+ >> "${D}/usr/share/openvpn-blacklist/blacklist.RSA-2048"
+}
diff --git a/app-crypt/ophcrack-tables/Manifest b/app-crypt/ophcrack-tables/Manifest
new file mode 100644
index 000000000000..b2c44a5c19ad
--- /dev/null
+++ b/app-crypt/ophcrack-tables/Manifest
@@ -0,0 +1,3 @@
+DIST tables_vista_free.zip 410609902 SHA256 d3559f3c8e79f83c057b168f1c6b0f6127cea1f73da218a8f5219ebb256caf63 SHA512 daadc06411a528d338862294ed5e9c5162c86bb7c784e2ae572af0d441afe4bf81844432bb543a9f711dd632271ed89e14ded515d1ef1befad8c44a1a7eb14db WHIRLPOOL 5f84b158876e2fde0be56af0d2a4ce7fc694d2e94abc374b85118db561de0f9fa755b09e27ee296bf40e214fa8cac05f65d9e4c7ac0d0f4c3b5c80d081697f52
+DIST tables_xp_free_fast.zip 701901509 SHA256 6d72beed100f75a61d331ac3e4a9b3d1a6789017099201aa077d50f7ef33bd05 SHA512 d2849b2a48508bea830ecf1b39893f734e8bf1bcb6f71358ad344c0f584a3a9c9795e5c0d12851e44c332aeecf00e2da0c55b31fe0491d3bbd527058e45797a3 WHIRLPOOL ab491d38d0bed4c9d4e6d8fb3886f4832e59b10adc7df93a99477840b70b72c1d234c3c363a4bd667dec92acc4be6d2b549166bd457a1b143d610134122f4ceb
+DIST tables_xp_free_small.zip 370848194 SHA256 00ab596334339555ece136a9c5852590bfaf9869961f997861b653ceec9e8212 SHA512 50d0761a0d950d6492acb083b05c3e33dab905ab10f24a70fd8e25006ea583e871ae8d7908eabc2fed65b106f3ba994973ee881e40b147a6aa8ba297bf14ba61 WHIRLPOOL 600c5005c9221aeeeaf192477895bf3ae7e811dd64efb7f3bc8989e888a6aea868fd65658066fa6b6ba00a3de2b85e8213ed3b190761b06c1f3e355430293ab0
diff --git a/app-crypt/ophcrack-tables/metadata.xml b/app-crypt/ophcrack-tables/metadata.xml
new file mode 100644
index 000000000000..313e0c3144ec
--- /dev/null
+++ b/app-crypt/ophcrack-tables/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>
+ <email>ikelos@gentoo.org</email>
+ <name>Mike Auty</name>
+ </maintainer>
+ <use>
+ <flag name="vistafree">Installs the free Vista ophcrack tables</flag>
+ <flag name="xpfast">Installs the fast XP ophcrack tables</flag>
+ <flag name="xpsmall">Installs the small free XP ophcrack tables</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">ophcrack</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/ophcrack-tables/ophcrack-tables-1.0-r2.ebuild b/app-crypt/ophcrack-tables/ophcrack-tables-1.0-r2.ebuild
new file mode 100644
index 000000000000..d924f514fe47
--- /dev/null
+++ b/app-crypt/ophcrack-tables/ophcrack-tables-1.0-r2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+DESCRIPTION="Tables available for ophcrack"
+HOMEPAGE="http://ophcrack.sourceforge.net/"
+SRC_URI="xpfast? ( mirror://sourceforge/ophcrack/tables_xp_free_fast.zip )
+ xpsmall? ( mirror://sourceforge/ophcrack/tables_xp_free_small.zip )
+ vistafree? ( mirror://sourceforge/ophcrack/tables_vista_free.zip )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64 ~ppc"
+IUSE="+xpfast xpsmall +vistafree"
+
+REQUIRED_USE="|| ( xpfast xpsmall vistafree )"
+
+DEPEND="app-arch/unzip"
+RDEPEND=""
+
+S=${WORKDIR}
+
+src_unpack() {
+ for i in ${A};
+ do
+ table=${i#tables_}
+ table=${table%.zip}
+ mkdir "${S}/${table}"
+ cd $_ || die
+ unpack "${i}"
+ done
+}
+
+src_install() {
+ dodir /usr/share/ophcrack/
+ cp -r "${S}"/* "${ED}"/usr/share/ophcrack/ || die
+}
diff --git a/app-crypt/ophcrack/Manifest b/app-crypt/ophcrack/Manifest
new file mode 100644
index 000000000000..99faa1e96711
--- /dev/null
+++ b/app-crypt/ophcrack/Manifest
@@ -0,0 +1,5 @@
+DIST ophcrack-3.1.0.tar.bz2 238869 SHA256 706bee5d11d246ae16cbca87436a70f0e6f6dbc7d49d14318c1c71e74f5e069d SHA512 7292ba86f4a346644f9b35fef34693315315ef2ce105d9159bb7958527d62cb57f40f7acb7140c7103f729e2d29d6c009d6f29ec25e9d649963e071adb96e1ad WHIRLPOOL c403b84957d9d6037e7e035aaca0215e6c7749c899d35edad5740ff5d370a7fda2faf6c067eef5b793d156e965642ac64f0c8ec2a2c41f344aff9bbd1be15c16
+DIST ophcrack-3.3.0.tar.bz2 255049 SHA256 4c46f839cc752e6e9c69196574fa1fd17ff4e1bc4c1d1c0faa4b9228a3509a92 SHA512 91bcaf73d1dd22f6a0895c54dcaab48fe2157a9ef44110401bf507cca7bf599506e263a01f4539a81b3f4484af8a1c465d8eb90ea13c35383166b2e1822a1231 WHIRLPOOL 81597fa07b02d88159bd3c6e98d4d4f264066f24eae1e4b908006d544c605e32c02de8738535ff0e61d3b64a759d6d2a27981cf76fb095a6979e77d4ecd9184f
+DIST ophcrack-3.3.1.tar.bz2 255238 SHA256 4e23bfccde7962a873cd0c44f4da626795aec17fcfb078f4329ec7145b218d18 SHA512 e5e889cbf6493d56afe0c76e0bccd5c544665057ed7cfc46a9f636b1660351fedb704e5b76f8a3ed76c70be4ab0d8c855b0d7b58aa949b12e513e3ad08db8ad0 WHIRLPOOL 8b14e4e04199b3a258f7914bafea3a13a1061ebb20614ead0dbb02a14f2dc2ba6d59affacc91e5f6ff837cb5e65bf16ac94d483d083445d8a2d45200843a1f04
+DIST ophcrack-3.4.0.tar.bz2 279806 SHA256 06cb22d95a8ded79eebb99ac19bd21b27321e85fe0f22f32407d0b925b66d3e3 SHA512 38c3b41e76be1b2990cbf6a8ddbe776df3d7821696e42939c759d554a7a52d40555f7e1c8f11e3ab7dc20b553f43d814e271d7519a3b4bb4f84b70468c123df0 WHIRLPOOL 887d9f397c061b06072cd48e15b89596c81c893d0cc1fb8eb960f0561249b0085025cfd88482aba8549414d3d634685503be14b9f97b16edc248859095a3a1dc
+DIST ophcrack-3.6.0.tar.bz2 288830 SHA256 79219baa03afd7e52bc6d365dd5a445bc73dfac2e88216e7b050ad7749191893 SHA512 caa9090b622acac1114f5635c2c58a2c32453ae21a96fc4f424cbc197b056872c282cf9d41142e316a1ffbc9523832b8bc7355c1503c15ac8579470de407a5c9 WHIRLPOOL 5e492257aa504883892cc5bf19e123330963257874f2b1ad3ed53895161987012c6bd23f449c72de81e68ac0ebcb7adbff77883f1a0d976c0aa99654c87d342e
diff --git a/app-crypt/ophcrack/metadata.xml b/app-crypt/ophcrack/metadata.xml
new file mode 100644
index 000000000000..e0d1ea68d0d6
--- /dev/null
+++ b/app-crypt/ophcrack/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>
+ <email>ikelos@gentoo.org</email>
+ <name>Mike Auty</name>
+ </maintainer>
+ <use>
+ <flag name="tables">Require the additional tables used to carry out cracking (<pkg>app-crypt/ophcrack-tables</pkg>)</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">ophcrack</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/ophcrack/ophcrack-3.1.0-r2.ebuild b/app-crypt/ophcrack/ophcrack-3.1.0-r2.ebuild
new file mode 100644
index 000000000000..0bcf27d01533
--- /dev/null
+++ b/app-crypt/ophcrack/ophcrack-3.1.0-r2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+inherit eutils
+
+DESCRIPTION="A time-memory-trade-off-cracker"
+HOMEPAGE="http://ophcrack.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="qt4 debug"
+
+CDEPEND="dev-libs/openssl
+ net-libs/netwib
+ qt4? ( dev-qt/qtcore:4 dev-qt/qtgui:4 )"
+DEPEND="app-arch/unzip
+ virtual/pkgconfig
+ ${CDEPEND}"
+RDEPEND="app-crypt/ophcrack-tables
+ ${CDEPEND}"
+
+src_configure() {
+ econf $(use_enable qt4 gui) $(use_enable debug)
+}
+
+src_install() {
+ default
+
+ newicon src/gui/pixmaps/os.xpm ${PN}.xpm
+ make_desktop_entry "${PN}" OphCrack ${PN}
+}
diff --git a/app-crypt/ophcrack/ophcrack-3.3.0.ebuild b/app-crypt/ophcrack/ophcrack-3.3.0.ebuild
new file mode 100644
index 000000000000..0bcf27d01533
--- /dev/null
+++ b/app-crypt/ophcrack/ophcrack-3.3.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+inherit eutils
+
+DESCRIPTION="A time-memory-trade-off-cracker"
+HOMEPAGE="http://ophcrack.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="qt4 debug"
+
+CDEPEND="dev-libs/openssl
+ net-libs/netwib
+ qt4? ( dev-qt/qtcore:4 dev-qt/qtgui:4 )"
+DEPEND="app-arch/unzip
+ virtual/pkgconfig
+ ${CDEPEND}"
+RDEPEND="app-crypt/ophcrack-tables
+ ${CDEPEND}"
+
+src_configure() {
+ econf $(use_enable qt4 gui) $(use_enable debug)
+}
+
+src_install() {
+ default
+
+ newicon src/gui/pixmaps/os.xpm ${PN}.xpm
+ make_desktop_entry "${PN}" OphCrack ${PN}
+}
diff --git a/app-crypt/ophcrack/ophcrack-3.3.1.ebuild b/app-crypt/ophcrack/ophcrack-3.3.1.ebuild
new file mode 100644
index 000000000000..22aa37c1e377
--- /dev/null
+++ b/app-crypt/ophcrack/ophcrack-3.3.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+inherit eutils
+
+DESCRIPTION="A time-memory-trade-off-cracker"
+HOMEPAGE="http://ophcrack.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="qt4 debug +tables"
+
+CDEPEND="dev-libs/openssl
+ net-libs/netwib
+ qt4? ( dev-qt/qtgui:4 )"
+DEPEND="app-arch/unzip
+ virtual/pkgconfig
+ ${CDEPEND}"
+RDEPEND="tables? ( app-crypt/ophcrack-tables )
+ ${CDEPEND}"
+
+src_configure() {
+
+ local myconf
+
+ myconf="$(use_enable qt4 gui)"
+ myconf="${myconf} $(use_enable debug)"
+
+ econf ${myconf} || die "Failed to compile"
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die "Installation failed."
+
+ cd "${S}"
+ newicon src/gui/pixmaps/os.xpm ophcrack.xpm
+ make_desktop_entry "${PN}" OphCrack ophcrack
+}
diff --git a/app-crypt/ophcrack/ophcrack-3.4.0.ebuild b/app-crypt/ophcrack/ophcrack-3.4.0.ebuild
new file mode 100644
index 000000000000..22aa37c1e377
--- /dev/null
+++ b/app-crypt/ophcrack/ophcrack-3.4.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+inherit eutils
+
+DESCRIPTION="A time-memory-trade-off-cracker"
+HOMEPAGE="http://ophcrack.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="qt4 debug +tables"
+
+CDEPEND="dev-libs/openssl
+ net-libs/netwib
+ qt4? ( dev-qt/qtgui:4 )"
+DEPEND="app-arch/unzip
+ virtual/pkgconfig
+ ${CDEPEND}"
+RDEPEND="tables? ( app-crypt/ophcrack-tables )
+ ${CDEPEND}"
+
+src_configure() {
+
+ local myconf
+
+ myconf="$(use_enable qt4 gui)"
+ myconf="${myconf} $(use_enable debug)"
+
+ econf ${myconf} || die "Failed to compile"
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die "Installation failed."
+
+ cd "${S}"
+ newicon src/gui/pixmaps/os.xpm ophcrack.xpm
+ make_desktop_entry "${PN}" OphCrack ophcrack
+}
diff --git a/app-crypt/ophcrack/ophcrack-3.6.0.ebuild b/app-crypt/ophcrack/ophcrack-3.6.0.ebuild
new file mode 100644
index 000000000000..bf6912108a04
--- /dev/null
+++ b/app-crypt/ophcrack/ophcrack-3.6.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+inherit eutils
+
+DESCRIPTION="A time-memory-trade-off-cracker"
+HOMEPAGE="http://ophcrack.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="qt4 debug +tables"
+
+CDEPEND="dev-libs/openssl
+ net-libs/netwib
+ qt4? ( dev-qt/qtgui:4 )"
+DEPEND="app-arch/unzip
+ virtual/pkgconfig
+ ${CDEPEND}"
+RDEPEND="tables? ( app-crypt/ophcrack-tables )
+ ${CDEPEND}"
+
+src_configure() {
+
+ local myconf
+
+ myconf="$(use_enable qt4 gui)"
+ myconf="${myconf} $(use_enable debug)"
+
+ econf ${myconf} || die "Failed to compile"
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die "Installation failed."
+
+ cd "${S}"
+ newicon src/gui/pixmaps/os.xpm ophcrack.xpm
+ make_desktop_entry "${PN}" OphCrack ophcrack
+}
diff --git a/app-crypt/osslsigncode/Manifest b/app-crypt/osslsigncode/Manifest
new file mode 100644
index 000000000000..e6a197de88cb
--- /dev/null
+++ b/app-crypt/osslsigncode/Manifest
@@ -0,0 +1 @@
+DIST osslsigncode-1.4.tar.gz 96512 SHA256 721eddade1571fcde54e7f5c21f961dacb990c19f9bdb05c4a7aaeb269979069 SHA512 89f82b5cbab5952b7bb0b1a3ea230db0c38d171924e5150e9cd157158e52d312cc10093ac719265d03a097f995bd3a438fe874c50263659859c625482ef0239f WHIRLPOOL a3fadd7e9e4e8bb295d33b6e7696fe5e7ba32f252656fef3faa59bcd86ddf6ceec2e5532cc136e078af6eaf74c169edfaa18635151e993061f071b7cdb0807c6
diff --git a/app-crypt/osslsigncode/metadata.xml b/app-crypt/osslsigncode/metadata.xml
new file mode 100644
index 000000000000..f8958dea6d9d
--- /dev/null
+++ b/app-crypt/osslsigncode/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>
+ <email>vapier@gentoo.org</email>
+ <description>do whatever</description>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">osslsigncode</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/osslsigncode/osslsigncode-1.4.ebuild b/app-crypt/osslsigncode/osslsigncode-1.4.ebuild
new file mode 100644
index 000000000000..40c7df0e2359
--- /dev/null
+++ b/app-crypt/osslsigncode/osslsigncode-1.4.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+DESCRIPTION="Platform-independent tool for Authenticode signing of EXE/CAB files"
+HOMEPAGE="https://sourceforge.net/projects/osslsigncode"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="curl"
+
+RDEPEND="dev-libs/openssl
+ curl? ( net-misc/curl )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_configure() {
+ econf $(use_with curl)
+}
diff --git a/app-crypt/p11-kit/Manifest b/app-crypt/p11-kit/Manifest
new file mode 100644
index 000000000000..2db7cf37649a
--- /dev/null
+++ b/app-crypt/p11-kit/Manifest
@@ -0,0 +1,4 @@
+DIST p11-kit-0.20.7.tar.gz 986731 SHA256 68405492fe466b33927d461302aa98e703db3b8a596411585508bc33084484d2 SHA512 f2d6f8de22101af55605cd4df1f6b78271ae30e7f4d8c7a78879bc3934a0894a9c59b0342eae58a8cd3addbe970c63c88dbfdd080c346f2847a1fc46f5ee6a63 WHIRLPOOL 898a0e1b959b4448b32577c096a9038004df569c426510efccf0bc5c9b1fdc8e64bfbc02e9f6a5252fa410dc67e28dead33a4fe335adf382b0f179739366bd2b
+DIST p11-kit-0.22.0.tar.gz 983924 SHA256 cf652b1d79513583a07b454bb82bc1529d911161048d5420ad7ce2d48e892299 SHA512 aae37235c7fb3e75eb5d86da9094d3eddcd7d9cdcbead97f36ab84db673ec5f34b7c8f47004d7075d7902a9f7a2e7a0e72074a6d5edea2553a4d88f6e27a494b WHIRLPOOL 059083f97b88768e4e57b2ea26f0798e2e5e3ab2f6c6710e962de5a70afed3d2ba86e8c8f633895e41f40dd11946b829279b016b621c9914434933418688edcf
+DIST p11-kit-0.22.1.tar.gz 992099 SHA256 ef3a339fcf6aa0e32c8c23f79ba7191e57312be2bda8b24e6d121c2670539a5c SHA512 500b0c922e98ed2d28133f93629bf762b873c8f6c638ccb4ba2b4f2df548c519f8ce27f1efae66193f88027d1b548908dbe3f5e84106a52ab972e29771c1d37b WHIRLPOOL 2f618ddf0ffa91942577dc1fa2fdacbacc0dd2be346c3d34e19ff844a43f33c0fd8dae2013bd25b4bc5e12751b9ff624d778403ce0f3edb0d64cf14377971676
+DIST p11-kit-0.23.1.tar.gz 992924 SHA256 e57371669f3b157141b86c429bd9c29741994b2f5ff115fcb8a03e751b0f6ac4 SHA512 eb01dac7687df1b6dfe3fab320de580f12bcbc0716074c9b08b62c1af3a823a25f03dbece34e18aba765ff7067877c8cc93523f6341bdb18a8c21f44fc8acddc WHIRLPOOL 70605211e988f4284b5ffdd9c5899e563b185ed46b09c671654e1710fe6c21b80a81bb6177f0fbe46f0c20ddf1ab1d71d94c1ffdb1dcaa674c96b3c54b9b595c
diff --git a/app-crypt/p11-kit/metadata.xml b/app-crypt/p11-kit/metadata.xml
new file mode 100644
index 000000000000..b756e0a0fc71
--- /dev/null
+++ b/app-crypt/p11-kit/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <use>
+ <flag name="asn1">Enable ASN.1 certificate support</flag>
+ <flag name="trust">Build the trust policy module</flag>
+ </use>
+</pkgmetadata>
diff --git a/app-crypt/p11-kit/p11-kit-0.20.7.ebuild b/app-crypt/p11-kit/p11-kit-0.20.7.ebuild
new file mode 100644
index 000000000000..8644bb40a438
--- /dev/null
+++ b/app-crypt/p11-kit/p11-kit-0.20.7.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib-minimal
+
+DESCRIPTION="Provides a standard configuration setup for installing PKCS#11"
+HOMEPAGE="http://p11-glue.freedesktop.org/p11-kit.html"
+SRC_URI="http://p11-glue.freedesktop.org/releases/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="+asn1 debug +libffi +trust"
+REQUIRED_USE="trust? ( asn1 )"
+
+RDEPEND="asn1? ( >=dev-libs/libtasn1-3.4[${MULTILIB_USEDEP}] )
+ libffi? ( >=dev-libs/libffi-3.0.0[${MULTILIB_USEDEP}] )
+ trust? ( app-misc/ca-certificates )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+pkg_setup() {
+ # disable unsafe tests, bug#502088
+ export FAKED_MODE=1
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf \
+ $(use_enable trust trust-module) \
+ $(use_with trust trust-paths ${EPREFIX}/etc/ssl/certs/ca-certificates.crt) \
+ $(use_enable debug) \
+ $(use_with libffi) \
+ $(use_with asn1 libtasn1)
+
+ if multilib_is_native_abi; then
+ # re-use provided documentation
+ ln -s "${S}"/doc/manual/html doc/manual/html || die
+ fi
+}
+
+multilib_src_install_all() {
+ prune_libtool_files --modules
+}
diff --git a/app-crypt/p11-kit/p11-kit-0.22.0.ebuild b/app-crypt/p11-kit/p11-kit-0.22.0.ebuild
new file mode 100644
index 000000000000..e4efc8eeae17
--- /dev/null
+++ b/app-crypt/p11-kit/p11-kit-0.22.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib-minimal
+
+DESCRIPTION="Provides a standard configuration setup for installing PKCS#11"
+HOMEPAGE="http://p11-glue.freedesktop.org/p11-kit.html"
+SRC_URI="http://p11-glue.freedesktop.org/releases/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="+asn1 debug +libffi +trust"
+REQUIRED_USE="trust? ( asn1 )"
+
+RDEPEND="asn1? ( >=dev-libs/libtasn1-3.4[${MULTILIB_USEDEP}] )
+ libffi? ( >=dev-libs/libffi-3.0.0[${MULTILIB_USEDEP}] )
+ trust? ( app-misc/ca-certificates )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+pkg_setup() {
+ # disable unsafe tests, bug#502088
+ export FAKED_MODE=1
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf \
+ $(use_enable trust trust-module) \
+ $(use_with trust trust-paths ${EPREFIX}/etc/ssl/certs/ca-certificates.crt) \
+ $(use_enable debug) \
+ $(use_with libffi) \
+ $(use_with asn1 libtasn1)
+
+ if multilib_is_native_abi; then
+ # re-use provided documentation
+ ln -s "${S}"/doc/manual/html doc/manual/html || die
+ fi
+}
+
+multilib_src_install_all() {
+ prune_libtool_files --modules
+}
diff --git a/app-crypt/p11-kit/p11-kit-0.22.1.ebuild b/app-crypt/p11-kit/p11-kit-0.22.1.ebuild
new file mode 100644
index 000000000000..1823dc397377
--- /dev/null
+++ b/app-crypt/p11-kit/p11-kit-0.22.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib-minimal
+
+DESCRIPTION="Provides a standard configuration setup for installing PKCS#11"
+HOMEPAGE="http://p11-glue.freedesktop.org/p11-kit.html"
+SRC_URI="http://p11-glue.freedesktop.org/releases/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="+asn1 debug +libffi +trust"
+REQUIRED_USE="trust? ( asn1 )"
+
+RDEPEND="asn1? ( >=dev-libs/libtasn1-3.4[${MULTILIB_USEDEP}] )
+ libffi? ( >=dev-libs/libffi-3.0.0[${MULTILIB_USEDEP}] )
+ trust? ( app-misc/ca-certificates )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+pkg_setup() {
+ # disable unsafe tests, bug#502088
+ export FAKED_MODE=1
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf \
+ $(use_enable trust trust-module) \
+ $(use_with trust trust-paths ${EPREFIX}/etc/ssl/certs/ca-certificates.crt) \
+ $(use_enable debug) \
+ $(use_with libffi) \
+ $(use_with asn1 libtasn1)
+
+ if multilib_is_native_abi; then
+ # re-use provided documentation
+ ln -s "${S}"/doc/manual/html doc/manual/html || die
+ fi
+}
+
+multilib_src_install_all() {
+ prune_libtool_files --modules
+}
diff --git a/app-crypt/p11-kit/p11-kit-0.23.1.ebuild b/app-crypt/p11-kit/p11-kit-0.23.1.ebuild
new file mode 100644
index 000000000000..1823dc397377
--- /dev/null
+++ b/app-crypt/p11-kit/p11-kit-0.23.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib-minimal
+
+DESCRIPTION="Provides a standard configuration setup for installing PKCS#11"
+HOMEPAGE="http://p11-glue.freedesktop.org/p11-kit.html"
+SRC_URI="http://p11-glue.freedesktop.org/releases/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="+asn1 debug +libffi +trust"
+REQUIRED_USE="trust? ( asn1 )"
+
+RDEPEND="asn1? ( >=dev-libs/libtasn1-3.4[${MULTILIB_USEDEP}] )
+ libffi? ( >=dev-libs/libffi-3.0.0[${MULTILIB_USEDEP}] )
+ trust? ( app-misc/ca-certificates )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+pkg_setup() {
+ # disable unsafe tests, bug#502088
+ export FAKED_MODE=1
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf \
+ $(use_enable trust trust-module) \
+ $(use_with trust trust-paths ${EPREFIX}/etc/ssl/certs/ca-certificates.crt) \
+ $(use_enable debug) \
+ $(use_with libffi) \
+ $(use_with asn1 libtasn1)
+
+ if multilib_is_native_abi; then
+ # re-use provided documentation
+ ln -s "${S}"/doc/manual/html doc/manual/html || die
+ fi
+}
+
+multilib_src_install_all() {
+ prune_libtool_files --modules
+}
diff --git a/app-crypt/paperkey/Manifest b/app-crypt/paperkey/Manifest
new file mode 100644
index 000000000000..04e75d660403
--- /dev/null
+++ b/app-crypt/paperkey/Manifest
@@ -0,0 +1 @@
+DIST paperkey-1.3.tar.gz 250153 SHA256 5b57d7522336fb65c4c398eec27bf44ec0aaa35926157b79a76423231792cbfb SHA512 240a57b43084b91758d19a2ef6804651db32118f7578f48445014b7ab91caadcbd6b08df4a95ba8788691456e802f3ebb8455e212aac0679c12df8d567894acd WHIRLPOOL 719538c16880089d7da154773ca1046445981894343c6435590e707627c71bd4252e2415e6f00cf81a32fd23bbde7cd4714a3547f19171e031eeb369ffb6f3b1
diff --git a/app-crypt/paperkey/metadata.xml b/app-crypt/paperkey/metadata.xml
new file mode 100644
index 000000000000..bfcb6974f1c4
--- /dev/null
+++ b/app-crypt/paperkey/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>
+ <email>mrueg@gentoo.org</email>
+ <name>Manuel Rüger</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/paperkey/paperkey-1.3.ebuild b/app-crypt/paperkey/paperkey-1.3.ebuild
new file mode 100644
index 000000000000..a1a5ecfd9f87
--- /dev/null
+++ b/app-crypt/paperkey/paperkey-1.3.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="OpenPGP key archiver"
+HOMEPAGE="http://www.jabberwocky.com/software/paperkey/"
+SRC_URI="http://www.jabberwocky.com/software/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+IUSE=""
+
+DOCS="README"
diff --git a/app-crypt/pdfcrack/Manifest b/app-crypt/pdfcrack/Manifest
new file mode 100644
index 000000000000..6e46f19b199e
--- /dev/null
+++ b/app-crypt/pdfcrack/Manifest
@@ -0,0 +1,2 @@
+DIST pdfcrack-0.13.tar.gz 32359 SHA256 2afce56766bfbe869cb6d920ca0c9acf23d73872924bb62e2f4eb47bb43c96e8 SHA512 3ec993746649649ab5ddffdf6ae15d087ba6b52bbf3379bb022f33078968f1434788e5f3e6078a4342410094acfc022d5955faee0a35be878516908356513d35 WHIRLPOOL 0b98ec8ce74e2dbd6879c30f28bb79daa0f6e9f4254bdf291086ace9d65039ef9d3dc0c5304d0334aec7249476e4bf21365059999d7caac9e2f19929d0ab0be4
+DIST pdfcrack-0.14.tar.gz 33387 SHA256 ac88eca576cebb40c4a63cd90542664de7d8f1b39885db5a7ac021d8b0c6a95c SHA512 2da2b7bc37db49f55c6cdd45f837bc509b217fcd36cd57212c2508618996038e21bf391a20f5adece312e9a5f7d892fe254dac8438222f158e4ce7019cbac3f2 WHIRLPOOL 4d8fd5052bc165e3f058856a814832b010d1b2ce7fc6c630b04e797bff5658a784e7fb096d68792ce54282d0a4ace9d03a6458b85820f92b8e88215d461393a4
diff --git a/app-crypt/pdfcrack/files/pdfcrack-0.13-build.patch b/app-crypt/pdfcrack/files/pdfcrack-0.13-build.patch
new file mode 100644
index 000000000000..5f39e2695fec
--- /dev/null
+++ b/app-crypt/pdfcrack/files/pdfcrack-0.13-build.patch
@@ -0,0 +1,22 @@
+just use implicit rules so correct variables get used
+
+--- pdfcrack-0.13/Makefile
++++ pdfcrack-0.13/Makefile
+@@ -1,16 +1,11 @@
+-CFLAGS= -Wall -Wextra -O3 -g
++CFLAGS+= -Wall -Wextra
+
+ all: pdfcrack
+
+ pdfcrack: main.o sha256.o rc4.o md5.o pdfcrack.o pdfparser.o passwords.o common.o \
+ benchmark.o
+- gcc $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $@ $+
+
+ pdfreader: pdfparser.o pdfreader.o common.o
+- gcc $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $@ $+
+
+ clean:
+ rm -f pdfcrack pdfreader testreader *.o
+-
+-%.o: %.c
+- gcc $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -c -o $@ $+
diff --git a/app-crypt/pdfcrack/files/pdfcrack-0.14-cflags.patch b/app-crypt/pdfcrack/files/pdfcrack-0.14-cflags.patch
new file mode 100644
index 000000000000..7ea168878d1e
--- /dev/null
+++ b/app-crypt/pdfcrack/files/pdfcrack-0.14-cflags.patch
@@ -0,0 +1,8 @@
+--- pdfcrack-0.14/Makefile
++++ pdfcrack-0.14/Makefile
+@@ -1,4 +1,4 @@
+-CFLAGS += -Wall -Wextra -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -O3 -g
++CFLAGS += -Wall -Wextra -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
+
+ all: pdfcrack
+
diff --git a/app-crypt/pdfcrack/metadata.xml b/app-crypt/pdfcrack/metadata.xml
new file mode 100644
index 000000000000..d810cd613bf3
--- /dev/null
+++ b/app-crypt/pdfcrack/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <upstream>
+ <remote-id type="sourceforge">pdfcrack</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/pdfcrack/pdfcrack-0.13.ebuild b/app-crypt/pdfcrack/pdfcrack-0.13.ebuild
new file mode 100644
index 000000000000..c4b086e972ab
--- /dev/null
+++ b/app-crypt/pdfcrack/pdfcrack-0.13.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Tool for recovering passwords and content from PDF-files"
+HOMEPAGE="http://pdfcrack.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-build.patch
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ dobin pdfcrack
+ dodoc changelog README
+}
diff --git a/app-crypt/pdfcrack/pdfcrack-0.14.ebuild b/app-crypt/pdfcrack/pdfcrack-0.14.ebuild
new file mode 100644
index 000000000000..44836e8fbf0c
--- /dev/null
+++ b/app-crypt/pdfcrack/pdfcrack-0.14.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Tool for recovering passwords and content from PDF-files"
+HOMEPAGE="http://pdfcrack.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-cflags.patch
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ dobin pdfcrack
+ dodoc changelog README
+}
diff --git a/app-crypt/pesign/Manifest b/app-crypt/pesign/Manifest
new file mode 100644
index 000000000000..4d114926bda6
--- /dev/null
+++ b/app-crypt/pesign/Manifest
@@ -0,0 +1 @@
+DIST pesign-0.108.tar.gz 96838 SHA256 2019882be0286df1c58efa8c588332106b89418a6bd0fce3de8da4ca16636986 SHA512 f72fb9c3e843341300b68e06bb153690734f6e506cdd9f0d9362c760ff48194ed1ed29e0b58a5050e7331069ad47a9902cc9e34bf616667baf84208f2b69a918 WHIRLPOOL 0af005d0b6dbdff23787c009153cae07c6907d111f57831611e85c49656e29e150ffd71683f349880cfb8975547ea3a3e655cdce31b047b355ecf097e7c7ba77
diff --git a/app-crypt/pesign/files/destdir.patch b/app-crypt/pesign/files/destdir.patch
new file mode 100644
index 000000000000..70332410a3c8
--- /dev/null
+++ b/app-crypt/pesign/files/destdir.patch
@@ -0,0 +1,10 @@
+diff --git a/Make.defaults b/Make.defaults
+index 864f98b..e2c967b 100644
+--- a/Make.defaults
++++ b/Make.defaults
+@@ -1,4 +1,4 @@
+-INSTALLROOT:= /
++INSTALLROOT:= $(DESTDIR)
+ PREFIX := /usr
+
+ HOSTARCH = $(shell uname -m | sed s,i[3456789]86,ia32,)
diff --git a/app-crypt/pesign/metadata.xml b/app-crypt/pesign/metadata.xml
new file mode 100644
index 000000000000..3d054ecd92f9
--- /dev/null
+++ b/app-crypt/pesign/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>
+ <email>gregkh@gentoo.org</email>
+ <description>do whatever</description>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">vathpela/pesign</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/pesign/pesign-0.108.ebuild b/app-crypt/pesign/pesign-0.108.ebuild
new file mode 100644
index 000000000000..a17c46449a83
--- /dev/null
+++ b/app-crypt/pesign/pesign-0.108.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib
+
+DESCRIPTION="Tools for manipulating signed PE-COFF binaries"
+HOMEPAGE="https://github.com/vathpela/pesign"
+SRC_URI="https://github.com/vathpela/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ dev-libs/nspr
+ dev-libs/openssl:0
+ sys-apps/util-linux
+"
+DEPEND="${RDEPEND}
+ sys-apps/help2man
+ sys-boot/gnu-efi
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/destdir.patch
+}
+
+src_install() {
+ default
+
+ # remove some files that don't make sense for Gentoo installs
+ rm -rf "${ED}/etc/" "${ED}/usr/share/doc/pesign/" || die
+
+ # create .so symlink
+ ln -s libdpe.so "${ED}/usr/$(get_libdir)/libdpe.so.0"
+}
+#
+#src_prepare() {
+# local iarch
+# case ${ARCH} in
+# ia64) iarch=ia64 ;;
+# x86) iarch=ia32 ;;
+# amd64) iarch=x86_64 ;;
+# *) die "unsupported architecture: ${ARCH}" ;;
+# esac
+# sed -i "/^EFI_ARCH=/s:=.*:=${iarch}:" configure || die
+# sed -i 's/-m64$/& -march=x86-64/' tests/Makefile.in || die
+#}
diff --git a/app-crypt/pgpdump/Manifest b/app-crypt/pgpdump/Manifest
new file mode 100644
index 000000000000..50e1ab616993
--- /dev/null
+++ b/app-crypt/pgpdump/Manifest
@@ -0,0 +1,2 @@
+DIST pgpdump-0.28.tar.gz 62346 SHA256 38b531cc6dbab947016c15988b7abe34a1feec7eeaf4798a6ff5b8ebe5e96a5e SHA512 c48c1e1ffc868316dea1d1520feb036d3c7fbc4e3ebaceb76c623e7cf5798c9ea191712117a28a140df102474c8321c4ab27a4161a0897d0eabe5963ce97d4c6 WHIRLPOOL 6c50a1546324036496c305d957aa3a0a248c04b7aed5c92038e5d91493e3d9b3663eec888ab1e7478368516534ac6dce3b2dbb2ebfc215193ce3f7740bf50482
+DIST pgpdump-0.29.tar.gz 62779 SHA256 6215d9af806399fec73d81735cf20ce91033a7a89a82c4318c4d1659083ff663 SHA512 ef948791c864d871e30c92ae1bf3dbb5cb09b9665ca97c4644412410266cd82b8509683ce55406192d7d70179d6eeb81f92ee2efd29443a44285df9e21010292 WHIRLPOOL f38f823132ed1e06bf9e7c87ee4b208abc7c2666fed8567434e496ee6032a19b5febaab3f34a27fbbaead99da91963c899ba873e6fe11b76ec3ad8d1227d8d79
diff --git a/app-crypt/pgpdump/files/pgpdump-0.28-respect-ldflags.patch b/app-crypt/pgpdump/files/pgpdump-0.28-respect-ldflags.patch
new file mode 100644
index 000000000000..1e0f0c6f266c
--- /dev/null
+++ b/app-crypt/pgpdump/files/pgpdump-0.28-respect-ldflags.patch
@@ -0,0 +1,42 @@
+From 087f54f29dd679a9c6eb5cce075d9f4c6ccbc57f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Manuel=20R=C3=BCger?= <mrueg@rueg.eu>
+Date: Sun, 11 Aug 2013 00:42:06 +0200
+Subject: [PATCH] Respect LDFLAGS, minor other improvements
+
+---
+ Makefile.in | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index a0269a3..d174393 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -3,7 +3,8 @@ exec_prefix = @exec_prefix@
+ bindir = @bindir@
+ mandir = @mandir@
+ LIBS = @LIBS@
+-CFLAGS = @CFLAGS@ -O -Wall
++CC = @CC@
++CFLAGS = @CFLAGS@ -Wall
+ LDFLAGS = @LDFLAGS@
+ VERSION = `git tag | tail -1 | sed -e 's/v//'`
+
+@@ -22,13 +23,13 @@ MAN = pgpdump.1
+ CNF = config.h config.status config.cache config.log
+ MKF = Makefile
+
+-.c.o:
++%.o : %.c
+ $(CC) -c $(CFLAGS) $<
+
+ all: $(PROG)
+
+ $(PROG): $(OBJS)
+- $(CC) $(CFLAGS) -o $(PROG) $(OBJS) $(LIBS) $(LDFLAGS)
++ $(CC) $(LDFLAGS) -o $(PROG) $(OBJS) $(LIBS)
+
+ clean:
+ $(RM) $(OBJS) $(PROG)
+--
+1.8.1.6
+
diff --git a/app-crypt/pgpdump/metadata.xml b/app-crypt/pgpdump/metadata.xml
new file mode 100644
index 000000000000..37437f1622ac
--- /dev/null
+++ b/app-crypt/pgpdump/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>
+ <email>mrueg@gentoo.org</email>
+ <name>Manuel Rüger</name>
+</maintainer>
+</pkgmetadata>
diff --git a/app-crypt/pgpdump/pgpdump-0.28-r1.ebuild b/app-crypt/pgpdump/pgpdump-0.28-r1.ebuild
new file mode 100644
index 000000000000..81d1d1862ba5
--- /dev/null
+++ b/app-crypt/pgpdump/pgpdump-0.28-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="A PGP packet visualizer"
+HOMEPAGE="http://www.mew.org/~kazu/proj/pgpdump/"
+SRC_URI="http://www.mew.org/~kazu/proj/pgpdump/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ppc sparc x86"
+IUSE=""
+
+DEPEND="sys-libs/zlib
+ app-arch/bzip2"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-respect-ldflags.patch
+}
+
+src_install() {
+ dobin pgpdump
+ doman pgpdump.1
+ dodoc CHANGES README.md
+}
diff --git a/app-crypt/pgpdump/pgpdump-0.29.ebuild b/app-crypt/pgpdump/pgpdump-0.29.ebuild
new file mode 100644
index 000000000000..f45c49c5617d
--- /dev/null
+++ b/app-crypt/pgpdump/pgpdump-0.29.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="A PGP packet visualizer"
+HOMEPAGE="http://www.mew.org/~kazu/proj/pgpdump/"
+SRC_URI="http://www.mew.org/~kazu/proj/pgpdump/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ppc sparc x86"
+IUSE=""
+
+DEPEND="sys-libs/zlib
+ app-arch/bzip2"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.28-respect-ldflags.patch
+}
+
+src_install() {
+ dobin pgpdump
+ doman pgpdump.1
+ dodoc CHANGES README.md
+}
diff --git a/app-crypt/pinentry/Manifest b/app-crypt/pinentry/Manifest
new file mode 100644
index 000000000000..b4d26ceefb95
--- /dev/null
+++ b/app-crypt/pinentry/Manifest
@@ -0,0 +1,2 @@
+DIST pinentry-0.9.0.tar.bz2 464272 SHA256 90045a07ab8e1a8e1ecf5d19b51691f195525e579fa5d71d7e92c120b05490ab SHA512 2cc53a5c3852edaf6e940228d9b43fe4709344eba5fe230b7afd22b2c0239d0b258917d75661d80590b2d61c6fe9dac8ad15a0b4a0a0e7fba90a9e1c07364edd WHIRLPOOL 3f77a8aa2d44c7206d877e31088ec927473441e61f06e788330545d75ac489e6e9d5bf0026b23d0824304dad54ce8e61c4571d186df7ad0edc2d644ca3af04ac
+DIST pinentry-0.9.5.tar.bz2 514677 SHA256 6a57fd3afc0d8aaa5599ffcb3ea4e7c42c113a181e8870122203ea018384688c SHA512 31a190cacf45fd3ff5128a6a1a9f317fb09850fd595d5985392ea306ed65fa9232e2203458a9989eaac3b6e9d07199e01557912051f00a9a395cd1db61b44c39 WHIRLPOOL 52e9664d7cf0e804bb14b9586a89aca4037d3324261ac8931ed26365c32ae038b45eca9b7b6637b46f9231ff2db6a9e0a96a611404e48659c7ba009b84c40727
diff --git a/app-crypt/pinentry/files/pinentry-0.8.2-ncurses.patch b/app-crypt/pinentry/files/pinentry-0.8.2-ncurses.patch
new file mode 100644
index 000000000000..3bb92c63d00c
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-0.8.2-ncurses.patch
@@ -0,0 +1,25 @@
+From bafe8608fc525ef103b3d1f3048ca28958bef596 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sun, 5 May 2013 02:23:08 +0300
+Subject: [PATCH] ncurses: link with optional tinfo
+
+---
+ m4/curses.m4 | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/m4/curses.m4 b/m4/curses.m4
+index 3a01881..ffb6bd1 100644
+--- a/m4/curses.m4
++++ b/m4/curses.m4
+@@ -36,6 +36,8 @@ AC_DEFUN([IU_LIB_NCURSES], [
+ have_ncursesw=no
+ fi
+ if test "$LIBNCURSES"; then
++ AC_CHECK_LIB(tinfow, curs_set, LIBNCURSES="${LIBNCURSES} -ltinfow",
++ AC_CHECK_LIB(tinfo, curs_set, LIBNCURSES="${LIBNCURSES} -ltinfo"))
+ # Use ncurses header files instead of the ordinary ones, if possible;
+ # is there a better way of doing this, that avoids looking in specific
+ # directories?
+--
+1.8.1.5
+
diff --git a/app-crypt/pinentry/files/pinentry-0.8.2-texi.patch b/app-crypt/pinentry/files/pinentry-0.8.2-texi.patch
new file mode 100644
index 000000000000..f036fa93a1c2
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-0.8.2-texi.patch
@@ -0,0 +1,20 @@
+--- doc/gpl.texi 2013-06-09 10:50:53.990704797 +1200
++++ doc/gpl.texi 2013-06-09 10:51:25.310432565 +1200
+@@ -12,7 +12,7 @@
+ of this license document, but changing it is not allowed.
+ @end display
+
+-@appendixsubsec Preamble
++@appendixsec Preamble
+
+ The licenses for most software are designed to take away your
+ freedom to share and change it. By contrast, the GNU General Public
+@@ -63,7 +63,7 @@
+ modification follow.
+
+ @iftex
+-@appendixsubsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
++@appendixsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+ @end iftex
+ @ifinfo
+ @center TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
diff --git a/app-crypt/pinentry/files/pinentry-0.9.0-accessibility.patch b/app-crypt/pinentry/files/pinentry-0.9.0-accessibility.patch
new file mode 100644
index 000000000000..20d6130978b1
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-0.9.0-accessibility.patch
@@ -0,0 +1,82 @@
+diff --git a/qt4/main.cpp b/qt4/main.cpp
+index 106999e..b2a69f2 100644
+--- a/qt4/main.cpp
++++ b/qt4/main.cpp
+@@ -217,8 +217,9 @@ qt_cmd_handler (pinentry_t pe)
+ for ( size_t i = 0 ; i < sizeof buttonLabels / sizeof *buttonLabels ; ++i )
+ if ( (buttons & buttonLabels[i].button) && !buttonLabels[i].label.isEmpty() ) {
+ box.button( buttonLabels[i].button )->setText( buttonLabels[i].label );
++#ifndef QT_NO_ACCESSIBILITY
+ box.button( buttonLabels[i].button )->setAccessibleDescription ( buttonLabels[i].label );
+-
++#endif
+ }
+
+ box.setIconPixmap( icon() );
+diff --git a/qt4/pinentryconfirm.cpp b/qt4/pinentryconfirm.cpp
+index dfbd19f..6b3d545 100644
+--- a/qt4/pinentryconfirm.cpp
++++ b/qt4/pinentryconfirm.cpp
+@@ -30,8 +30,10 @@ PinentryConfirm::PinentryConfirm(Icon icon, int timeout, const QString &title,
+ connect(_timer, SIGNAL(timeout()), this, SLOT(slotTimeout()));
+ _timer->start(timeout*1000);
+ }
++#ifndef QT_NO_ACCESSIBILITY
+ setAccessibleDescription (desc);
+ setAccessibleName (title);
++#endif
+ raiseWindow (this);
+ }
+
+diff --git a/qt4/pinentrydialog.cpp b/qt4/pinentrydialog.cpp
+index 3a6dacc..456f022 100644
+--- a/qt4/pinentrydialog.cpp
++++ b/qt4/pinentrydialog.cpp
+@@ -217,7 +217,9 @@ void PinEntryDialog::setDescription( const QString& txt )
+ {
+ _desc->setVisible( !txt.isEmpty() );
+ _desc->setText( txt );
++#ifndef QT_NO_ACCESSIBILITY
+ _desc->setAccessibleDescription ( txt );
++#endif
+ _icon->setPixmap( icon() );
+ setError( QString::null );
+ }
+@@ -231,7 +233,9 @@ void PinEntryDialog::setError( const QString& txt )
+ {
+ if( !txt.isNull() )_icon->setPixmap( icon( QStyle::SP_MessageBoxCritical ) );
+ _error->setText( txt );
++#ifndef QT_NO_ACCESSIBILITY
+ _error->setAccessibleDescription ( txt );
++#endif
+ _error->setVisible( !txt.isEmpty() );
+ }
+
+@@ -264,14 +268,18 @@ QString PinEntryDialog::prompt() const
+ void PinEntryDialog::setOkText( const QString& txt )
+ {
+ _ok->setText( txt );
++#ifndef QT_NO_ACCESSIBILITY
+ _ok->setAccessibleDescription ( txt );
++#endif
+ _ok->setVisible( !txt.isEmpty() );
+ }
+
+ void PinEntryDialog::setCancelText( const QString& txt )
+ {
+ _cancel->setText( txt );
++#ifndef QT_NO_ACCESSIBILITY
+ _cancel->setAccessibleDescription ( txt );
++#endif
+ _cancel->setVisible( !txt.isEmpty() );
+ }
+
+@@ -279,7 +287,9 @@ void PinEntryDialog::setQualityBar( const QString& txt )
+ {
+ if (_have_quality_bar) {
+ _quality_bar_label->setText( txt );
++#ifndef QT_NO_ACCESSIBILITY
+ _quality_bar_label->setAccessibleDescription ( txt );
++#endif
+ }
+ }
diff --git a/app-crypt/pinentry/files/pinentry-0.9.4-actually_respect_users_pm.patch b/app-crypt/pinentry/files/pinentry-0.9.4-actually_respect_users_pm.patch
new file mode 100644
index 000000000000..cfc96a3be814
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-0.9.4-actually_respect_users_pm.patch
@@ -0,0 +1,49 @@
+From 444598586d0abf70d5a27d2aafcd6c14989621db Mon Sep 17 00:00:00 2001
+From: "Neal H. Walfield" <neal@gnu.org>
+Date: Sun, 7 Jun 2015 14:36:39 +0200
+Subject: [PATCH] gnome3: Actually respect the user's choice of using a
+ password manager.
+
+* gnome3/pinentry-gnome3.c (create_prompt) [HAVE_LIBSECRET]: Only show
+the libsecret prompt in this case.
+(gnome3_cmd_handler) [HAVE_LIBSECRET]: Set PE->MAY_CACHE_PASSWORD
+according to the user's choice.
+---
+ gnome3/pinentry-gnome3.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/gnome3/pinentry-gnome3.c b/gnome3/pinentry-gnome3.c
+index 74ec89c..0fea8f0 100644
+--- a/gnome3/pinentry-gnome3.c
++++ b/gnome3/pinentry-gnome3.c
+@@ -145,6 +145,7 @@ create_prompt (pinentry_t pe, int confirm)
+ /* XXX: gcr expects a string; we have a int. */
+ // gcr_prompt_set_caller_window (prompt, pe->parent_wid);
+
++#ifdef HAVE_LIBSECRET
+ if (! confirm && pe->allow_external_password_cache && pe->keyinfo)
+ {
+ if (pe->default_pwmngr)
+@@ -157,6 +158,7 @@ create_prompt (pinentry_t pe, int confirm)
+ gcr_prompt_set_choice_label
+ (prompt, "Automatically unlock this key, whenever I'm logged in");
+ }
++#endif
+
+ return prompt;
+ }
+@@ -203,6 +205,11 @@ gnome3_cmd_handler (pinentry_t pe)
+ if (pe->repeat_passphrase)
+ pe->repeat_okay = 1;
+
++#ifdef HAVE_LIBSECRET
++ if (pe->allow_external_password_cache && pe->keyinfo)
++ pe->may_cache_password = gcr_prompt_get_choice_chosen (prompt);
++#endif
++
+ ret = 1;
+ }
+ }
+--
+2.1.4
+
diff --git a/app-crypt/pinentry/files/pinentry-0.9.5-build.patch b/app-crypt/pinentry/files/pinentry-0.9.5-build.patch
new file mode 100644
index 000000000000..2ef9a6779ee3
--- /dev/null
+++ b/app-crypt/pinentry/files/pinentry-0.9.5-build.patch
@@ -0,0 +1,52 @@
+From 29384a828ad83644df9093bb292194d1ac6e689b Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 18 Jul 2015 10:14:49 +0300
+Subject: [PATCH] build: add pkg-config initialization and modify detection
+
+add PKG_PROG_PKG_CONFIG as the qt4 detection and curses detection are
+already using pkg.m4 which require proper initialization.
+
+modify the manual detection of pkg-config based on the error value of
+the PKG_PROG_PKG_CONFIG and not the manual one as there is a conflict
+between empty and 'no'.
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ configure.ac | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index b71cb17..7afa318 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -85,6 +85,7 @@ AC_PROG_RANLIB
+ # for Qt and autoconf does does not allow that.
+ AC_PROG_CXX
+ AC_PROG_LN_S
++PKG_PROG_PKG_CONFIG
+ AC_CHECK_TOOL(WINDRES, windres, :)
+ AC_CHECK_PROGS(GITLOG_TO_CHANGELOG, gitlog-to-changelog,
+ [build-aux/gitlog-to-changelog])
+@@ -430,8 +431,7 @@ AC_ARG_ENABLE(pinentry-gnome3,
+
+ dnl check for pkg-config
+ if test "$pinentry_gtk_2" != "no" -o "$pinentry_gnome_3" != "no"; then
+- AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
+- if test x"${PKG_CONFIG}" = xno ; then
++ if test -z "${PKG_CONFIG}"; then
+ pinentry_gtk_2=no
+ pinentry_gnome_3=no
+ fi
+@@ -504,8 +504,7 @@ AC_ARG_ENABLE(libsecret,
+
+ dnl check for pkg-config
+ if test "$libsecret" != "no"; then
+- AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
+- if test x"${PKG_CONFIG}" = xno ; then
++ if test -z "${PKG_CONFIG}" ; then
+ libsecret=no
+ fi
+ fi
+--
+2.3.6
+
diff --git a/app-crypt/pinentry/metadata.xml b/app-crypt/pinentry/metadata.xml
new file mode 100644
index 000000000000..3c50ec9eb99a
--- /dev/null
+++ b/app-crypt/pinentry/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<use>
+ <flag name='clipboard'>Enable clipboard integration</flag>
+</use>
+</pkgmetadata>
diff --git a/app-crypt/pinentry/pinentry-0.9.0-r3.ebuild b/app-crypt/pinentry/pinentry-0.9.0-r3.ebuild
new file mode 100644
index 000000000000..336343c0dffc
--- /dev/null
+++ b/app-crypt/pinentry/pinentry-0.9.0-r3.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit qmake-utils autotools multilib eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
+HOMEPAGE="http://gnupg.org/aegypten2/index.html"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="clipboard gtk ncurses qt4 caps static"
+
+RDEPEND="
+ app-eselect/eselect-pinentry
+ caps? ( sys-libs/libcap )
+ gtk? ( x11-libs/gtk+:2 )
+ ncurses? ( sys-libs/ncurses )
+ qt4? ( >=dev-qt/qtgui-4.4.1:4 )
+ static? ( >=sys-libs/ncurses-5.7-r5[static-libs,-gpm] )
+"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ gtk? ( virtual/pkgconfig )
+ qt4? ( virtual/pkgconfig )
+ ppc-aix? ( dev-libs/gnulib )
+"
+REQUIRED_USE="
+ || ( ncurses gtk qt4 )
+ gtk? ( !static )
+ qt4? ( !static )
+ static? ( ncurses )
+"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
+
+src_prepare() {
+ if use qt4; then
+ local f
+ for f in qt4/*.moc; do
+ "$(qt4_get_bindir)"/moc ${f/.moc/.h} > ${f} || die
+ done
+ fi
+ epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
+ epatch "${FILESDIR}/${PN}-0.8.2-texi.patch"
+ epatch "${FILESDIR}/${PN}-0.9.0-accessibility.patch"
+ eautoreconf
+}
+
+src_configure() {
+ use static && append-ldflags -static
+ [[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
+
+ if [[ ${CHOST} == *-aix* ]] ; then
+ append-flags -I"${EPREFIX}/usr/$(get_libdir)/gnulib/include"
+ append-ldflags -L"${EPREFIX}/usr/$(get_libdir)/gnulib/$(get_libdir)"
+ append-libs -lgnu
+ fi
+
+ # Issues finding qt on multilib systems
+ export QTLIB="${QTDIR}/$(get_libdir)"
+
+ econf \
+ --enable-pinentry-tty \
+ $(use_enable gtk pinentry-gtk2) \
+ $(use_enable ncurses pinentry-curses) \
+ $(use_enable ncurses fallback-curses) \
+ $(use_enable qt4 pinentry-qt4) \
+ $(use qt4 && use_enable clipboard pinentry-qt4-clipboard) \
+ $(use_with caps libcap)
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
+
+src_install() {
+ default
+ rm -f "${ED}"/usr/bin/pinentry || die
+}
+
+pkg_postinst() {
+ if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
+ elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
+ elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
+ elog "The soft resource limit for memory locking specifies the limit an"
+ elog "unprivileged process may lock into memory. You can also use POSIX"
+ elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
+ elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
+ elog "your users."
+ fi
+ eselect pinentry update ifunset
+}
+
+pkg_postrm() {
+ eselect pinentry update ifunset
+}
diff --git a/app-crypt/pinentry/pinentry-0.9.0.ebuild b/app-crypt/pinentry/pinentry-0.9.0.ebuild
new file mode 100644
index 000000000000..c77222115468
--- /dev/null
+++ b/app-crypt/pinentry/pinentry-0.9.0.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools multilib eutils flag-o-matic
+
+DESCRIPTION="Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
+HOMEPAGE="http://gnupg.org/aegypten2/index.html"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="gtk ncurses qt4 caps static"
+
+RDEPEND="
+ app-eselect/eselect-pinentry
+ caps? ( sys-libs/libcap )
+ gtk? ( x11-libs/gtk+:2 )
+ ncurses? ( sys-libs/ncurses )
+ qt4? ( >=dev-qt/qtgui-4.4.1:4 )
+ static? ( >=sys-libs/ncurses-5.7-r5[static-libs,-gpm] )
+"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ gtk? ( virtual/pkgconfig )
+ qt4? ( virtual/pkgconfig )
+ ppc-aix? ( dev-libs/gnulib )
+"
+REQUIRED_USE="
+ || ( ncurses gtk qt4 )
+ gtk? ( !static )
+ qt4? ( !static )
+ static? ( ncurses )
+"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
+
+src_prepare() {
+ if use qt4; then
+ local f
+ for f in qt4/*.moc; do
+ "${EPREFIX}"/usr/bin/moc ${f/.moc/.h} > ${f} || die
+ done
+ fi
+ epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
+ epatch "${FILESDIR}/${PN}-0.8.2-texi.patch"
+ eautoreconf
+}
+
+src_configure() {
+ use static && append-ldflags -static
+
+ if [[ ${CHOST} == *-aix* ]] ; then
+ append-flags -I"${EPREFIX}/usr/$(get_libdir)/gnulib/include"
+ append-ldflags -L"${EPREFIX}/usr/$(get_libdir)/gnulib/$(get_libdir)"
+ append-libs -lgnu
+ fi
+
+ # Issues finding qt on multilib systems
+ export QTLIB="${QTDIR}/$(get_libdir)"
+
+ econf \
+ --enable-pinentry-tty \
+ $(use_enable gtk pinentry-gtk2) \
+ $(use_enable ncurses pinentry-curses) \
+ $(use_enable ncurses fallback-curses) \
+ $(use_enable qt4 pinentry-qt4) \
+ $(use_with caps libcap)
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
+
+src_install() {
+ default
+ rm -f "${ED}"/usr/bin/pinentry || die
+}
+
+pkg_postinst() {
+ if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
+ elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
+ elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
+ elog "The soft resource limit for memory locking specifies the limit an"
+ elog "unprivileged process may lock into memory. You can also use POSIX"
+ elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
+ elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
+ elog "your users."
+ fi
+ eselect pinentry update ifunset
+}
+
+pkg_postrm() {
+ eselect pinentry update ifunset
+}
diff --git a/app-crypt/pinentry/pinentry-0.9.5.ebuild b/app-crypt/pinentry/pinentry-0.9.5.ebuild
new file mode 100644
index 000000000000..ef825c21e56b
--- /dev/null
+++ b/app-crypt/pinentry/pinentry-0.9.5.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools qmake-utils multilib eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
+HOMEPAGE="http://gnupg.org/aegypten2/index.html"
+SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="clipboard emacs gtk ncurses qt4 caps gnome-keyring static"
+
+RDEPEND="
+ >=dev-libs/libgpg-error-1.17
+ >=dev-libs/libassuan-2
+ app-eselect/eselect-pinentry
+ caps? ( sys-libs/libcap )
+ gtk? ( x11-libs/gtk+:2 )
+ ncurses? ( sys-libs/ncurses )
+ qt4? ( >=dev-qt/qtgui-4.4.1:4 )
+ static? ( >=sys-libs/ncurses-5.7-r5[static-libs,-gpm] )
+"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ virtual/pkgconfig
+ gnome-keyring? ( app-crypt/libsecret )
+"
+REQUIRED_USE="
+ || ( ncurses gtk qt4 )
+ gtk? ( !static )
+ qt4? ( !static )
+ static? ( ncurses )
+"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-0.8.2-ncurses.patch"
+ epatch "${FILESDIR}/${P}-build.patch"
+ eautoreconf
+}
+
+src_configure() {
+ use static && append-ldflags -static
+ [[ "$(gcc-major-version)" -ge 5 ]] && append-cxxflags -std=gnu++11
+
+ # Issues finding qt on multilib systems
+ export QTLIB="${QTDIR}/$(get_libdir)"
+
+ econf \
+ --enable-pinentry-tty \
+ $(use_enable emacs pinentry-emacs) \
+ $(use_enable gtk pinentry-gtk2) \
+ $(use_enable ncurses pinentry-curses) \
+ $(use_enable ncurses fallback-curses) \
+ $(use_enable qt4 pinentry-qt4) \
+ $(use qt4 && use_enable clipboard pinentry-qt4-clipboard) \
+ $(use_with caps libcap) \
+ $(use_enable gnome-keyring libsecret) \
+ $(use_enable gnome-keyring pinentry-gnome3) \
+ MOC="$(qt4_get_bindir)"/moc
+}
+
+src_install() {
+ default
+ rm -f "${ED}"/usr/bin/pinentry || die
+}
+
+pkg_postinst() {
+ if ! has_version 'app-crypt/pinentry' || has_version '<app-crypt/pinentry-0.7.3'; then
+ elog "We no longer install pinentry-curses and pinentry-qt SUID root by default."
+ elog "Linux kernels >=2.6.9 support memory locking for unprivileged processes."
+ elog "The soft resource limit for memory locking specifies the limit an"
+ elog "unprivileged process may lock into memory. You can also use POSIX"
+ elog "capabilities to allow pinentry to lock memory. To do so activate the caps"
+ elog "USE flag and add the CAP_IPC_LOCK capability to the permitted set of"
+ elog "your users."
+ fi
+ eselect pinentry update ifunset
+}
+
+pkg_postrm() {
+ eselect pinentry update ifunset
+}
diff --git a/app-crypt/pius/Manifest b/app-crypt/pius/Manifest
new file mode 100644
index 000000000000..d795ac3117ec
--- /dev/null
+++ b/app-crypt/pius/Manifest
@@ -0,0 +1,3 @@
+DIST pius-2.0.10.tar.bz2 30872 SHA256 ce4f7804af2806310d3be890361997fa110d94568a33e2a2413f04032639198e SHA512 5c8ed483e8abf70389eaa6c87ccfe4702c6eb31d6e4f5a84507cc4841857785019e4910baf1a7d85e65ed5192e6cec44eaf5681cd581d971dd2e747dd6ce15f5 WHIRLPOOL 1405e98e875be074c4e38c44d766c6626e69c9f2475b8075ff7ca5413dfb7567f5bebd266c714da69b1e589e822ab24d42587ce1220f05ca7a6ccbf2b9fc3dcf
+DIST pius-2.0.11.tar.bz2 31351 SHA256 aeb8ef25fb59074532e380e70c71d1f5d6c9fcd13aa0cf040a7581693ef6ab5d SHA512 b7d4fd701b9629e8544221d4f2bbd73308bf3d7281104857dbfed37b8f35427df6dc08f4d8b000e3b3ed085088d989aeca34a1ce81b0eee2e8fee1134e5b47b7 WHIRLPOOL d9eb18a2a7db0cf241f97174217747e3c7100a0bb0176c1ff4dff50b4b0c80f351d88b6b5c0214d1d1546b1555937e8fe39416649a3071c4104e840937544f51
+DIST pius-2.0.9.tar.bz2 30225 SHA256 6d2cd48207a76e530b0082bc1cd21ffb44c204f5cfcfe611347a12ca87a732bc SHA512 37deb8ec30d937cc8ac9600eeb4b8f1952628dbc4b2e5ba8ed1a875f3083a1dd456efd198ee5b256412a945d7424c0ff9d262b553fe23d39dc9fc0ed05f88981 WHIRLPOOL 2a5a0b7d7cd3eb19a46442ca6573117f4b7b83598f013d6bfff993045c61538ed9dbdc41f3e8d7057996090fe2b1c0d2dbe2d8cc6dcdbc73a200e2a98a6f7b83
diff --git a/app-crypt/pius/metadata.xml b/app-crypt/pius/metadata.xml
new file mode 100644
index 000000000000..bf95fd0f85bd
--- /dev/null
+++ b/app-crypt/pius/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <maintainer>
+ <email>tomk@gentoo.org</email>
+ <name>Tom Knight</name>
+ </maintainer>
+ <longdescription lang="en">
+ The PGP Individual UID Signer (PIUS) is a tool for individually
+ signing all of the UIDs on a set of keys and encrypt-emailing each
+ one to it's respective email address. This drastically reduces the time
+ and errors involved in signing keys after a keysigning party.
+ </longdescription>
+ <upstream>
+ <remote-id type="sourceforge">pgpius</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/pius/pius-2.0.10.ebuild b/app-crypt/pius/pius-2.0.10.ebuild
new file mode 100644
index 000000000000..bb9cb7890598
--- /dev/null
+++ b/app-crypt/pius/pius-2.0.10.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+PYTHON_DEPEND="2"
+
+inherit python
+
+DESCRIPTION="A tool for signing and email all UIDs on a set of PGP keys"
+HOMEPAGE="http://www.phildev.net/pius/"
+SRC_URI="mirror://sourceforge/pgpius/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="app-crypt/gnupg"
+RDEPEND="${DEPEND}
+ dev-lang/perl"
+
+src_prepare() {
+ python_convert_shebangs 2 ${PN} ${PN}-keyring-mgr
+}
+
+src_install() {
+ dobin ${PN} ${PN}-keyring-mgr ${PN}-party-worksheet
+ dodoc Changelog README README.keyring-mgr
+}
diff --git a/app-crypt/pius/pius-2.0.11.ebuild b/app-crypt/pius/pius-2.0.11.ebuild
new file mode 100644
index 000000000000..44b471e6ea6c
--- /dev/null
+++ b/app-crypt/pius/pius-2.0.11.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit python-r1
+
+DESCRIPTION="A tool for signing and email all UIDs on a set of PGP keys"
+HOMEPAGE="http://www.phildev.net/pius/"
+SRC_URI="mirror://sourceforge/pgpius/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="app-crypt/gnupg
+ ${PYTHON_DEPS}"
+RDEPEND="${DEPEND}
+ dev-lang/perl"
+
+src_install() {
+ python_foreach_impl python_doscript ${PN} ${PN}-keyring-mgr
+ dobin ${PN}-party-worksheet
+ dodoc Changelog README README.keyring-mgr
+}
diff --git a/app-crypt/pius/pius-2.0.9.ebuild b/app-crypt/pius/pius-2.0.9.ebuild
new file mode 100644
index 000000000000..fce34ea5a5af
--- /dev/null
+++ b/app-crypt/pius/pius-2.0.9.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+PYTHON_DEPEND="2"
+
+inherit python
+
+DESCRIPTION="A tool for signing and email all UIDs on a set of PGP keys"
+HOMEPAGE="http://www.phildev.net/pius/"
+SRC_URI="mirror://sourceforge/pgpius/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="app-crypt/gnupg"
+RDEPEND="${DEPEND}
+ dev-lang/perl"
+
+src_prepare() {
+ python_convert_shebangs 2 ${PN} ${PN}-keyring-mgr
+}
+
+src_install() {
+ dobin ${PN} ${PN}-keyring-mgr ${PN}-party-worksheet
+ dodoc Changelog README README.keyring-mgr
+}
diff --git a/app-crypt/pkcrack/Manifest b/app-crypt/pkcrack/Manifest
new file mode 100644
index 000000000000..66426e85d482
--- /dev/null
+++ b/app-crypt/pkcrack/Manifest
@@ -0,0 +1 @@
+DIST pkcrack-1.2.2.tar.gz 174208 SHA256 4d2dc193ffa4342ac2ed3a6311fdf770ae6a0771226b3ef453dca8d03e43895a SHA512 5c64fb9ae09dedc70fb20cd689f432059fcd64f689072b529b4045c3241760fee273ee921da081bc08be2e0594d27101c5d89d99cb2b84e16f80c011419b7200 WHIRLPOOL 40ba854bdb81e3c04b91fa2b9c05a7b6a500a7a697c4384852b1fd5c153a4834ffabe942a249db52cdd32bd39989c97ecb206a866a3b577b7eb9f540cbfd59aa
diff --git a/app-crypt/pkcrack/metadata.xml b/app-crypt/pkcrack/metadata.xml
new file mode 100644
index 000000000000..18d7c93b8f4e
--- /dev/null
+++ b/app-crypt/pkcrack/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<longdescription>
+pkcrack is a password cracking program for zip files. It works using a plain text cipher attack.
+</longdescription>
+</pkgmetadata>
diff --git a/app-crypt/pkcrack/pkcrack-1.2.2-r1.ebuild b/app-crypt/pkcrack/pkcrack-1.2.2-r1.ebuild
new file mode 100644
index 000000000000..ad00a6942af4
--- /dev/null
+++ b/app-crypt/pkcrack/pkcrack-1.2.2-r1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+inherit toolchain-funcs
+
+DESCRIPTION="PkZip cipher breaker"
+HOMEPAGE="http://www.unix-ag.uni-kl.de/~conrad/krypto/pkcrack.html"
+SRC_URI="http://www.unix-ag.uni-kl.de/~conrad/krypto/pkcrack/${P}.tar.gz"
+
+LICENSE="pkcrack"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="test"
+
+DEPEND="test? ( app-arch/zip[crypt] )"
+RDEPEND="!<app-text/html-xml-utils-5.3"
+
+src_prepare() {
+ cd "${S}/src"
+ sed -i -e "s/^CC=.*/CC=$(tc-getCC)/" \
+ -e "/^CFLAGS=.*/d" \
+ -e "s/CFLAGS/LDFLAGS/" \
+ Makefile
+ sed -i -e "s:void main:int main:" *.c
+}
+
+src_compile() {
+ cd "${S}/src"
+ emake
+}
+
+src_test() {
+ cd "${S}/test"
+ make CC="$(tc-getCC)" all
+}
+
+src_install() {
+ cd "${S}/src"
+ dobin pkcrack zipdecrypt findkey makekey
+ newbin extract "$PN-extract"
+ dodoc "${S}/doc/"*
+}
+
+pkg_postinst() {
+ elog "Author DEMANDS :-) a postcard be sent to:"
+ elog
+ elog " Peter Conrad"
+ elog " Am Heckenberg 1"
+ elog " 56727 Mayen"
+ elog " Germany"
+ elog
+ elog "See: http://www.unix-ag.uni-kl.de/~conrad/krypto/pkcrack/pkcrack-readme.html"
+
+ ewarn
+ ewarn "Due to file collision, extract utility was renamed to $PN-extract,"
+ ewarn "see bug#247394"
+}
diff --git a/app-crypt/pkcrack/pkcrack-1.2.2.ebuild b/app-crypt/pkcrack/pkcrack-1.2.2.ebuild
new file mode 100644
index 000000000000..b5923cbf328a
--- /dev/null
+++ b/app-crypt/pkcrack/pkcrack-1.2.2.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+inherit toolchain-funcs
+
+DESCRIPTION="PkZip cipher breaker"
+HOMEPAGE="http://www.unix-ag.uni-kl.de/~conrad/krypto/pkcrack.html"
+SRC_URI="http://www.unix-ag.uni-kl.de/~conrad/krypto/pkcrack/${P}.tar.gz"
+
+LICENSE="pkcrack"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="test"
+
+DEPEND="test? ( app-arch/zip[crypt] )"
+RDEPEND="!<app-text/html-xml-utils-5.3"
+
+src_prepare() {
+ cd "${S}/src"
+ sed -i -e "s/^CC=.*/CC=$(tc-getCC)/" \
+ -e "/^CFLAGS=.*/d" \
+ -e "s/CFLAGS/LDFLAGS/" \
+ Makefile
+ sed -i -e "s:void main:int main:" *.c
+}
+
+src_compile() {
+ cd "${S}/src"
+ emake
+}
+
+src_test() {
+ cd "${S}/test"
+ make CC="$(tc-getCC)" all
+}
+
+src_install() {
+ cd "${S}/src"
+ dobin pkcrack zipdecrypt findkey extract makekey
+ dodoc "${S}/doc/"*
+}
+
+pkg_postinst() {
+ elog "Author DEMANDS :-) a postcard be sent to:"
+ elog
+ elog " Peter Conrad"
+ elog " Am Heckenberg 1"
+ elog " 56727 Mayen"
+ elog " Germany"
+ elog
+ elog "See: http://www.unix-ag.uni-kl.de/~conrad/krypto/pkcrack/pkcrack-readme.html"
+}
diff --git a/app-crypt/pkcs11-data/Manifest b/app-crypt/pkcs11-data/Manifest
new file mode 100644
index 000000000000..0f27f69fe5ba
--- /dev/null
+++ b/app-crypt/pkcs11-data/Manifest
@@ -0,0 +1 @@
+DIST pkcs11-data-0.7.4.tar.bz2 226267 SHA256 8e4312f41631c6a92c17c3149cd7d2f92315b30ca1e73526bf83ccf375a4ba85 SHA512 79b13cbb7dbcb8a35c46e8de79d31e51e53a4e75783c3bef28a0d1aa8176db869a0bf984e516d21567619a7f8ea9206ac9ab5ee81672d9ae2a89efe713cfc46c WHIRLPOOL 27adc1aff01846ae016f79753b2231274dd73a79c777790bd34958110b24596a499fce11472c8d04966633457d52ad42e09d916a15a0c14deba3de496185fc50
diff --git a/app-crypt/pkcs11-data/metadata.xml b/app-crypt/pkcs11-data/metadata.xml
new file mode 100644
index 000000000000..847b41571a92
--- /dev/null
+++ b/app-crypt/pkcs11-data/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <upstream>
+ <remote-id type="google-code">pkcs11-tools</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/pkcs11-data/pkcs11-data-0.7.4.ebuild b/app-crypt/pkcs11-data/pkcs11-data-0.7.4.ebuild
new file mode 100644
index 000000000000..8bbe706efdec
--- /dev/null
+++ b/app-crypt/pkcs11-data/pkcs11-data-0.7.4.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Utilities for PKCS#11 data object manipulation in"
+HOMEPAGE="http://sites.google.com/site/alonbarlev/pkcs11-utilities"
+SRC_URI="http://pkcs11-tools.googlecode.com/files/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+KEYWORDS="~amd64"
+
+IUSE=""
+
+RDEPEND=">=dev-libs/pkcs11-helper-1.02"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_configure() {
+ econf \
+ --docdir=/usr/share/doc/${PF}
+}
diff --git a/app-crypt/pkcs11-dump/Manifest b/app-crypt/pkcs11-dump/Manifest
new file mode 100644
index 000000000000..24334b4da383
--- /dev/null
+++ b/app-crypt/pkcs11-dump/Manifest
@@ -0,0 +1 @@
+DIST pkcs11-dump-0.3.4.tar.bz2 255715 SHA256 3c19d412350109423b12bfde196b5bd51e9b23552406bc82735c5ca5e7bcdda8 SHA512 b38dbe8d7b04d7227592c90f6de815da7a030014df2f5f18d8c81587a742c587424a0eea3a1c8ec6e5c8c8f6dccc144130b91c57bef3d5882ee161629a97781b WHIRLPOOL 17f242119b9fba53a96f7e8a610175c4c22a999eebc9750a6160665f684a0ac0a4c8bd917dcfc4d03efc1ba43d08a6fe11eb8b7de611f0df4c64235754b0828b
diff --git a/app-crypt/pkcs11-dump/metadata.xml b/app-crypt/pkcs11-dump/metadata.xml
new file mode 100644
index 000000000000..847b41571a92
--- /dev/null
+++ b/app-crypt/pkcs11-dump/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <upstream>
+ <remote-id type="google-code">pkcs11-tools</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/pkcs11-dump/pkcs11-dump-0.3.4.ebuild b/app-crypt/pkcs11-dump/pkcs11-dump-0.3.4.ebuild
new file mode 100644
index 000000000000..8debbf400fb0
--- /dev/null
+++ b/app-crypt/pkcs11-dump/pkcs11-dump-0.3.4.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Utilities for PKCS#11 token content dump"
+HOMEPAGE="http://sites.google.com/site/alonbarlev/pkcs11-utilities"
+SRC_URI="http://pkcs11-tools.googlecode.com/files/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+KEYWORDS="~amd64"
+
+IUSE=""
+
+RDEPEND=">=dev-libs/openssl-0.9.7:0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_configure() {
+ econf \
+ --docdir=/usr/share/doc/${PF}
+}
diff --git a/app-crypt/qca-cyrus-sasl/Manifest b/app-crypt/qca-cyrus-sasl/Manifest
new file mode 100644
index 000000000000..99ae337239bd
--- /dev/null
+++ b/app-crypt/qca-cyrus-sasl/Manifest
@@ -0,0 +1 @@
+DIST qca-cyrus-sasl-2.0.0-beta3.tar.bz2 24075 SHA256 d4370c238808811a0b5e9367069296a6330b169f091c5ea5d4d18eedb6bb11b9 SHA512 933ac335aa04f7f9643c89ff94005c465c5a0c8cda494fa4849d0c8709d7d7a94bcc3f0dd1f97a940e73cd4a088e027bed63598cd95cebb13984e45f479ffa0a WHIRLPOOL a4840df54f42bbe8d3d364fda57df8297323f33c57afc45377e4c6dd758d2a6e4398333c4e9196c0ff25a56ca939e8ee11cf91b00daab341f6ac1d8c358e9be5
diff --git a/app-crypt/qca-cyrus-sasl/metadata.xml b/app-crypt/qca-cyrus-sasl/metadata.xml
new file mode 100644
index 000000000000..1bbdcda23f1d
--- /dev/null
+++ b/app-crypt/qca-cyrus-sasl/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>kde</herd>
+<herd>crypto</herd>
+<herd>qt</herd>
+</pkgmetadata>
diff --git a/app-crypt/qca-cyrus-sasl/qca-cyrus-sasl-2.0.0_beta3.ebuild b/app-crypt/qca-cyrus-sasl/qca-cyrus-sasl-2.0.0_beta3.ebuild
new file mode 100644
index 000000000000..1b86256ba60f
--- /dev/null
+++ b/app-crypt/qca-cyrus-sasl/qca-cyrus-sasl-2.0.0_beta3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+inherit eutils qt4-r2
+
+MY_P="${P/_/-}"
+QCA_VER="${PV%.*}"
+
+DESCRIPTION="SASL plugin for QCA"
+HOMEPAGE="http://delta.affinix.com/qca/"
+SRC_URI="http://delta.affinix.com/download/qca/${QCA_VER}/plugins/${MY_P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="2"
+KEYWORDS="alpha amd64 ~ia64 ppc64 sparc x86 ~x86-fbsd"
+IUSE="debug"
+
+DEPEND=">=app-crypt/qca-${QCA_VER}[debug?]
+ dev-libs/cyrus-sasl"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_configure() {
+ # cannot use econf because of non-standard configure script
+ ./configure --qtdir=/usr --no-separate-debug-info \
+ $(use debug && echo "--debug" || echo "--release") || die
+
+ eqmake4
+}
+
+src_install() {
+ emake INSTALL_ROOT="${D}" install || die
+}
diff --git a/app-crypt/qca-gnupg/Manifest b/app-crypt/qca-gnupg/Manifest
new file mode 100644
index 000000000000..c656f05c28cd
--- /dev/null
+++ b/app-crypt/qca-gnupg/Manifest
@@ -0,0 +1 @@
+DIST qca-gnupg-2.0.0-beta3.tar.bz2 38177 SHA256 b255bc52050811cfdc4256bb48223b7b6d9ca553b6185e98190de15e4b5fffcd SHA512 b9e0591e861a57c10accbdf91ba6ff5f3cd272254bcd1425a44cdce2689cb626fbf9d62f2657724f293f5ca60dfb4bc5aa7ada850b768f6cba6bb388b97bbdc7 WHIRLPOOL 3b77a95b1c64ace42c509a5bc934873516f34f42cceaa5a0f1c02928871b77628dd8749d33c77e0a7c8bdd8ff0fb536aa6917fb871fe5c9fd4e8b0766bd558b3
diff --git a/app-crypt/qca-gnupg/metadata.xml b/app-crypt/qca-gnupg/metadata.xml
new file mode 100644
index 000000000000..1bbdcda23f1d
--- /dev/null
+++ b/app-crypt/qca-gnupg/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>kde</herd>
+<herd>crypto</herd>
+<herd>qt</herd>
+</pkgmetadata>
diff --git a/app-crypt/qca-gnupg/qca-gnupg-2.0.0_beta3.ebuild b/app-crypt/qca-gnupg/qca-gnupg-2.0.0_beta3.ebuild
new file mode 100644
index 000000000000..d43e20696c4c
--- /dev/null
+++ b/app-crypt/qca-gnupg/qca-gnupg-2.0.0_beta3.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+inherit eutils qt4-r2
+
+MY_P="${P/_/-}"
+QCA_VER="${PV%.*}"
+
+DESCRIPTION="GnuPG plugin for QCA"
+HOMEPAGE="http://delta.affinix.com/qca/"
+SRC_URI="http://delta.affinix.com/download/qca/${QCA_VER}/plugins/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="alpha amd64 ~arm hppa ~ia64 ppc ppc64 sparc x86 ~x86-fbsd"
+IUSE="debug"
+
+DEPEND=">=app-crypt/qca-${QCA_VER}[debug?]
+ dev-qt/qtcore:4"
+RDEPEND="${DEPEND}
+ app-crypt/gnupg"
+
+S=${WORKDIR}/${MY_P}
+
+src_configure() {
+ # cannot use econf because of non-standard configure script
+ ./configure --qtdir=/usr --no-separate-debug-info \
+ $(use debug && echo "--debug" || echo "--release") || die
+
+ eqmake4
+}
+
+src_install() {
+ emake INSTALL_ROOT="${D}" install || die
+}
diff --git a/app-crypt/qca-logger/Manifest b/app-crypt/qca-logger/Manifest
new file mode 100644
index 000000000000..9efae464708f
--- /dev/null
+++ b/app-crypt/qca-logger/Manifest
@@ -0,0 +1 @@
+DIST qca-logger-2.0.0-beta2.tar.bz2 20484 SHA256 da5931d55778719cd19bd7e327655dc7e96fd9b772347abb6a65df5f3019e88a SHA512 c92ec1fe00409c4f2ab445b13cd85275c92b5ab981ac7fd93bb89009082b6f584e27d67d74211887c865e0d65c3a2b0211b0f08506b961b730c15858d6c6df0a WHIRLPOOL 47f5699d2681a6745e44fb7407d9d561c4522bc5429ac8fe355d0ece4fe3da29b3fd2a9f0ab16c34c61f80108c8aa0116b81bead023d346e0ae786b4bf46f40b
diff --git a/app-crypt/qca-logger/metadata.xml b/app-crypt/qca-logger/metadata.xml
new file mode 100644
index 000000000000..1bbdcda23f1d
--- /dev/null
+++ b/app-crypt/qca-logger/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>kde</herd>
+<herd>crypto</herd>
+<herd>qt</herd>
+</pkgmetadata>
diff --git a/app-crypt/qca-logger/qca-logger-2.0.0_beta2.ebuild b/app-crypt/qca-logger/qca-logger-2.0.0_beta2.ebuild
new file mode 100644
index 000000000000..42aeadfdf73c
--- /dev/null
+++ b/app-crypt/qca-logger/qca-logger-2.0.0_beta2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+inherit eutils qt4-r2
+
+MY_P="${P/_/-}"
+QCA_VER="${PV%.*}"
+
+DESCRIPTION="Logger plugin for QCA"
+HOMEPAGE="http://delta.affinix.com/qca/"
+SRC_URI="http://delta.affinix.com/download/qca/${QCA_VER}/plugins/${MY_P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="2"
+KEYWORDS="alpha amd64 hppa ~ia64 ppc64 sparc x86 ~x86-fbsd"
+IUSE="debug"
+
+DEPEND=">=app-crypt/qca-${QCA_VER}[debug?]"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_configure() {
+ # cannot use econf because of non-standard configure script
+ ./configure --qtdir=/usr --no-separate-debug-info \
+ $(use debug && echo "--debug" || echo "--release") || die
+
+ eqmake4
+}
+
+src_install() {
+ emake INSTALL_ROOT="${D}" install || die
+ dodoc README || die
+}
diff --git a/app-crypt/qca-ossl/Manifest b/app-crypt/qca-ossl/Manifest
new file mode 100644
index 000000000000..f5d45bdc592f
--- /dev/null
+++ b/app-crypt/qca-ossl/Manifest
@@ -0,0 +1 @@
+DIST qca-ossl-2.0.0-beta3.tar.bz2 49188 SHA256 08e09ff586b184d5fb53b88f0b48eed0a7bf0a5f210a9f97a76cf4cd5446c67b SHA512 17b30099c1bc8650757d71fd9e7824831b132cedc920f59832cb5a8096b90932834e05f3f77ed34e213fdadf881625710e1311ae4fcc4c0919a1684adb4525b8 WHIRLPOOL e9acef78158d1a2c68878f0f5ee539be1e34382e3b8481eade51e12ce616abd6a577be4d1fcf5318ea201256f9f54cf90c764d0cb200b93772fd69a587cb0af6
diff --git a/app-crypt/qca-ossl/files/qca-ossl-openssl-1.0.0.patch b/app-crypt/qca-ossl/files/qca-ossl-openssl-1.0.0.patch
new file mode 100644
index 000000000000..c7d6e47b180d
--- /dev/null
+++ b/app-crypt/qca-ossl/files/qca-ossl-openssl-1.0.0.patch
@@ -0,0 +1,155 @@
+diff -ru a/CMakeLists.txt b/CMakeLists.txt
+--- a/CMakeLists.txt 2007-06-29 23:10:53.000000000 +0200
++++ b/CMakeLists.txt 2010-04-18 04:05:09.000000000 +0200
+@@ -1,5 +1,12 @@
+ # QCA OSSL
+
++INCLUDE(CheckFunctionExists)
++SET(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_LIBRARIES})
++CHECK_FUNCTION_EXISTS(EVP_md2 HAVE_OPENSSL_MD2)
++IF (HAVE_OPENSSL_MD2)
++ ADD_DEFINITIONS(-DHAVE_OPENSSL_MD2)
++ENDIF (HAVE_OPENSSL_MD2)
++
+ SET(QCA_OSSL_SOURCES qca-ossl.cpp)
+
+ MY_AUTOMOC( QCA_OSSL_SOURCES )
+diff -ru a/qca-ossl.cpp b/qca-ossl.cpp
+--- a/qca-ossl.cpp 2007-12-11 07:34:57.000000000 +0100
++++ b/qca-ossl.cpp 2010-04-18 04:08:46.000000000 +0200
+@@ -42,6 +42,15 @@
+ #define OSSL_097
+ #endif
+
++#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x10000000L
++// OpenSSL 1.0.0 makes a few changes that aren't very C++ friendly...
++// Among other things, CHECKED_PTR_OF returns a void*, but is used in
++// contexts requiring STACK pointers.
++#undef CHECKED_PTR_OF
++#define CHECKED_PTR_OF(type, p) \
++ ((_STACK*) (1 ? p : (type*)0))
++#endif
++
+ using namespace QCA;
+
+ namespace opensslQCAPlugin {
+@@ -1771,8 +1780,10 @@
+ md = EVP_sha1();
+ else if(alg == EMSA3_MD5)
+ md = EVP_md5();
++#ifdef HAVE_OPENSSL_MD2
+ else if(alg == EMSA3_MD2)
+ md = EVP_md2();
++#endif
+ else if(alg == EMSA3_RIPEMD160)
+ md = EVP_ripemd160();
+ else if(alg == EMSA3_Raw)
+@@ -1789,8 +1800,10 @@
+ md = EVP_sha1();
+ else if(alg == EMSA3_MD5)
+ md = EVP_md5();
++#ifdef HAVE_OPENSSL_MD2
+ else if(alg == EMSA3_MD2)
+ md = EVP_md2();
++#endif
+ else if(alg == EMSA3_RIPEMD160)
+ md = EVP_ripemd160();
+ else if(alg == EMSA3_Raw)
+@@ -3385,9 +3398,11 @@
+ case NID_md5WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD5;
+ break;
++#ifdef HAVE_OPENSSL_MD2
+ case NID_md2WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD2;
+ break;
++#endif
+ case NID_ripemd160WithRSA:
+ p.sigalgo = QCA::EMSA3_RIPEMD160;
+ break;
+@@ -3871,9 +3886,11 @@
+ case NID_md5WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD5;
+ break;
++#ifdef HAVE_OPENSSL_MD2
+ case NID_md2WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD2;
+ break;
++#endif
+ case NID_ripemd160WithRSA:
+ p.sigalgo = QCA::EMSA3_RIPEMD160;
+ break;
+@@ -4061,9 +4078,11 @@
+ case NID_md5WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD5;
+ break;
++#ifdef HAVE_OPENSSL_MD2
+ case NID_md2WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_MD2;
+ break;
++#endif
+ case NID_ripemd160WithRSA:
+ p.sigalgo = QCA::EMSA3_RIPEMD160;
+ break;
+@@ -6582,7 +6601,9 @@
+ list += "sha1";
+ list += "sha0";
+ list += "ripemd160";
++#ifdef HAVE_OPENSSL_MD2
+ list += "md2";
++#endif
+ list += "md4";
+ list += "md5";
+ #ifdef SHA224_DIGEST_LENGTH
+@@ -6597,9 +6618,11 @@
+ #ifdef SHA512_DIGEST_LENGTH
+ list += "sha512";
+ #endif
++/*
+ #ifdef OBJ_whirlpool
+ list += "whirlpool";
+ #endif
++*/
+ return list;
+ }
+
+@@ -6757,7 +6780,9 @@
+ list += all_hash_types();
+ list += all_mac_types();
+ list += all_cipher_types();
++#ifdef HAVE_OPENSSL_MD2
+ list += "pbkdf1(md2)";
++#endif
+ list += "pbkdf1(sha1)";
+ list += "pbkdf2(sha1)";
+ list += "pkey";
+@@ -6788,8 +6813,10 @@
+ return new opensslHashContext( EVP_sha(), this, type);
+ else if ( type == "ripemd160" )
+ return new opensslHashContext( EVP_ripemd160(), this, type);
++#ifdef HAVE_OPENSSL_MD2
+ else if ( type == "md2" )
+ return new opensslHashContext( EVP_md2(), this, type);
++#endif
+ else if ( type == "md4" )
+ return new opensslHashContext( EVP_md4(), this, type);
+ else if ( type == "md5" )
+@@ -6810,14 +6837,18 @@
+ else if ( type == "sha512" )
+ return new opensslHashContext( EVP_sha512(), this, type);
+ #endif
++/*
+ #ifdef OBJ_whirlpool
+ else if ( type == "whirlpool" )
+ return new opensslHashContext( EVP_whirlpool(), this, type);
+ #endif
++*/
+ else if ( type == "pbkdf1(sha1)" )
+ return new opensslPbkdf1Context( EVP_sha1(), this, type );
++#ifdef HAVE_OPENSSL_MD2
+ else if ( type == "pbkdf1(md2)" )
+ return new opensslPbkdf1Context( EVP_md2(), this, type );
++#endif
+ else if ( type == "pbkdf2(sha1)" )
+ return new opensslPbkdf2Context( this, type );
+ else if ( type == "hmac(md5)" )
diff --git a/app-crypt/qca-ossl/metadata.xml b/app-crypt/qca-ossl/metadata.xml
new file mode 100644
index 000000000000..1bbdcda23f1d
--- /dev/null
+++ b/app-crypt/qca-ossl/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>kde</herd>
+<herd>crypto</herd>
+<herd>qt</herd>
+</pkgmetadata>
diff --git a/app-crypt/qca-ossl/qca-ossl-2.0.0_beta3-r2.ebuild b/app-crypt/qca-ossl/qca-ossl-2.0.0_beta3-r2.ebuild
new file mode 100644
index 000000000000..34c607c9c1de
--- /dev/null
+++ b/app-crypt/qca-ossl/qca-ossl-2.0.0_beta3-r2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+inherit eutils qt4-r2
+
+MY_P="${P/_/-}"
+QCA_VER="${PV%.*}"
+
+DESCRIPTION="TLS, S/MIME, PKCS#12, crypto algorithms plugin for QCA"
+HOMEPAGE="http://delta.affinix.com/qca/"
+SRC_URI="http://delta.affinix.com/download/qca/${QCA_VER}/plugins/${MY_P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="2"
+KEYWORDS="alpha amd64 ~arm hppa ~ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~sparc-solaris"
+IUSE="debug"
+
+DEPEND=">=app-crypt/qca-${QCA_VER}[debug?]
+ >=dev-libs/openssl-0.9.6"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+PATCHES=( "${FILESDIR}/${PN}-openssl-1.0.0.patch" )
+
+src_configure() {
+ use prefix || EPREFIX=
+ # Fix some locations
+ sed -e "s|/usr/|${EPREFIX}/usr/|g" -e "s|usr/local|usr/|g" -i configure
+
+ # cannot use econf because of non-standard configure script
+ ./configure --qtdir="${EPREFIX}"/usr --no-separate-debug-info \
+ $(use debug && echo "--debug" || echo "--release") || die
+
+ eqmake4
+}
+
+src_install() {
+ emake INSTALL_ROOT="${D}" install || die
+}
diff --git a/app-crypt/qca-pkcs11/Manifest b/app-crypt/qca-pkcs11/Manifest
new file mode 100644
index 000000000000..5e47ce458b18
--- /dev/null
+++ b/app-crypt/qca-pkcs11/Manifest
@@ -0,0 +1 @@
+DIST qca-pkcs11-2.0.0-beta2.tar.bz2 30383 SHA256 959ab33ff16f2d28035025a9c06b2e6b89c1b3a52605811b51a73076f381e6c5 SHA512 55510ecf2479aec2c76b5805ddda8d4fafa74c5c84f0febc3bd8e79009f6e900e5f23f8f5a12069d95d4268d3b4596ce57c690b3e483ead670c7f91f02404e3a WHIRLPOOL 07f082ff9438423672c5c397401dab2dab78197e74a6ff6d359162c1d6df088ee174932f7e9f2bc4297351be204e8dede4409bc95989d9613416d81e80144216
diff --git a/app-crypt/qca-pkcs11/files/qca-pkcs11-2.0.0_beta2-gcc44.patch b/app-crypt/qca-pkcs11/files/qca-pkcs11-2.0.0_beta2-gcc44.patch
new file mode 100644
index 000000000000..353feee42381
--- /dev/null
+++ b/app-crypt/qca-pkcs11/files/qca-pkcs11-2.0.0_beta2-gcc44.patch
@@ -0,0 +1,12 @@
+diff -ur qca-pkcs11-2.0.0-beta2.orig/qca-pkcs11.cpp qca-pkcs11-2.0.0-beta2/qca-pkcs11.cpp
+--- qca-pkcs11-2.0.0-beta2.orig/qca-pkcs11.cpp 2007-11-05 07:21:51.000000000 +0200
++++ qca-pkcs11-2.0.0-beta2/qca-pkcs11.cpp 2009-07-24 20:36:03.000000000 +0300
+@@ -18,6 +18,8 @@
+ *
+ */
+
++#include <cstdio>
++
+ #include <QtCrypto>
+ #include <qcaprovider.h>
+ #include <qplatformdefs.h>
diff --git a/app-crypt/qca-pkcs11/metadata.xml b/app-crypt/qca-pkcs11/metadata.xml
new file mode 100644
index 000000000000..1bbdcda23f1d
--- /dev/null
+++ b/app-crypt/qca-pkcs11/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>kde</herd>
+<herd>crypto</herd>
+<herd>qt</herd>
+</pkgmetadata>
diff --git a/app-crypt/qca-pkcs11/qca-pkcs11-2.0.0_beta2.ebuild b/app-crypt/qca-pkcs11/qca-pkcs11-2.0.0_beta2.ebuild
new file mode 100644
index 000000000000..69ef87e14f5b
--- /dev/null
+++ b/app-crypt/qca-pkcs11/qca-pkcs11-2.0.0_beta2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils qt4-r2
+
+MY_P="${P/_/-}"
+QCA_VER="${PV%.*}"
+
+DESCRIPTION="PKCS#11 (smartcard) plugin for QCA"
+HOMEPAGE="http://delta.affinix.com/qca/"
+SRC_URI="http://delta.affinix.com/download/qca/${QCA_VER}/plugins/${MY_P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="2"
+KEYWORDS="~amd64 ~ppc64 ~x86 ~x86-fbsd"
+IUSE="debug"
+
+DEPEND=">=app-crypt/qca-${QCA_VER}[debug?]
+ >=dev-libs/pkcs11-helper-1.02"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+DOCS="README"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gcc44.patch
+}
+
+src_configure() {
+ # cannot use econf because of non-standard configure script
+ ./configure \
+ --qtdir=/usr \
+ $(use debug && echo "--debug" || echo "--release") \
+ --no-separate-debug-info \
+ || die "configure failed"
+ qt4-r2_src_configure
+}
diff --git a/app-crypt/qca/Manifest b/app-crypt/qca/Manifest
new file mode 100644
index 000000000000..627c06d184ca
--- /dev/null
+++ b/app-crypt/qca/Manifest
@@ -0,0 +1,2 @@
+DIST qca-2.0.3.tar.bz2 4530731 SHA256 8da20c89f390954fdcfcd3c4deef379213ddb5ae9d6b5e0c917d23f5e474895f SHA512 c1120ffb373e294fbcc76e21dc2f503ebd3398b26d0ffa7ab7ee3a3e1a4228159358b59c2673ac4a1c2363771e61da54a5080b201c65d586ceda2e3b2facc1bb WHIRLPOOL 2efba46098490ab5a75dcdf95eeb7d81a5509a962403a44602caa126927ebe9e69cb043586dbaebf0b111b79e614b607ae851242d12af9fa17d2dd191e559b0e
+DIST qca-qt5-2.1.0.3.tar.xz 685652 SHA256 ab0170696a8ff87588d38a72d36d0b4b42db9080c991d1a40ceb3f8311d289f9 SHA512 2f50c92d3ff927c83353b65ae56ff49a5c1ea439fcef94cea0092b718f04abcc18f455abd91337ac786fddedae980ff55c9d090b5743a96890174dc7eee4f3f1 WHIRLPOOL 9db2770b031dbf5c9c117d4150e0b395c94d8a0af1bda9fac5e1ee862a8a40f1c03fb0c4901e3aaba0b12e8c0b4e71cb55a872bbc54eea8331aff3fbe1fd853c
diff --git a/app-crypt/qca/files/qca-2.0.2-pcfilespath.patch b/app-crypt/qca/files/qca-2.0.2-pcfilespath.patch
new file mode 100644
index 000000000000..c52e8e78071b
--- /dev/null
+++ b/app-crypt/qca/files/qca-2.0.2-pcfilespath.patch
@@ -0,0 +1,13 @@
+Index: qca-2.0.2/configure
+===================================================================
+--- qca-2.0.2.orig/configure
++++ qca-2.0.2/configure
+@@ -937,7 +937,7 @@ public:
+ if(!pcfiles.isEmpty())
+ {
+ str = QString(
+- "pcfiles.path = \$\$LIBDIR/pkgconfig\n"
++ "pcfiles.path = \$\$LIBDIR/../pkgconfig\n"
+ "pcfiles.files = %1\n"
+ "INSTALLS += pcfiles\n"
+ ).arg(pcfiles.join(" "));
diff --git a/app-crypt/qca/files/qca-2.0.3+gcc-4.7.patch b/app-crypt/qca/files/qca-2.0.3+gcc-4.7.patch
new file mode 100644
index 000000000000..1752dff910ff
--- /dev/null
+++ b/app-crypt/qca/files/qca-2.0.3+gcc-4.7.patch
@@ -0,0 +1,59 @@
+--- trunk/kdesupport/qca/src/botantools/botan/botan/secmem.h 2012/01/14 16:09:19 1273507
++++ trunk/kdesupport/qca/src/botantools/botan/botan/secmem.h 2012/01/14 17:12:15 1273508
+@@ -191,15 +191,15 @@
+ {
+ public:
+ MemoryVector<T>& operator=(const MemoryRegion<T>& in)
+- { if(this != &in) set(in); return (*this); }
++ { if(this != &in) this->set(in); return (*this); }
+
+ MemoryVector(u32bit n = 0) { MemoryRegion<T>::init(false, n); }
+ MemoryVector(const T in[], u32bit n)
+- { MemoryRegion<T>::init(false); set(in, n); }
++ { MemoryRegion<T>::init(false); this->set(in, n); }
+ MemoryVector(const MemoryRegion<T>& in)
+- { MemoryRegion<T>::init(false); set(in); }
++ { MemoryRegion<T>::init(false); this->set(in); }
+ MemoryVector(const MemoryRegion<T>& in1, const MemoryRegion<T>& in2)
+- { MemoryRegion<T>::init(false); set(in1); append(in2); }
++ { MemoryRegion<T>::init(false); this->set(in1); append(in2); }
+ };
+
+ /*************************************************
+@@ -210,15 +210,15 @@
+ {
+ public:
+ SecureVector<T>& operator=(const MemoryRegion<T>& in)
+- { if(this != &in) set(in); return (*this); }
++ { if(this != &in) this->set(in); return (*this); }
+
+ SecureVector(u32bit n = 0) { MemoryRegion<T>::init(true, n); }
+ SecureVector(const T in[], u32bit n)
+- { MemoryRegion<T>::init(true); set(in, n); }
++ { MemoryRegion<T>::init(true); this->set(in, n); }
+ SecureVector(const MemoryRegion<T>& in)
+- { MemoryRegion<T>::init(true); set(in); }
++ { MemoryRegion<T>::init(true); this->set(in); }
+ SecureVector(const MemoryRegion<T>& in1, const MemoryRegion<T>& in2)
+- { MemoryRegion<T>::init(true); set(in1); append(in2); }
++ { MemoryRegion<T>::init(true); this->set(in1); append(in2); }
+ };
+
+ /*************************************************
+@@ -229,14 +229,14 @@
+ {
+ public:
+ SecureBuffer<T,L>& operator=(const SecureBuffer<T,L>& in)
+- { if(this != &in) set(in); return (*this); }
++ { if(this != &in) this->set(in); return (*this); }
+
+ SecureBuffer() { MemoryRegion<T>::init(true, L); }
+ SecureBuffer(const T in[], u32bit n)
+ { MemoryRegion<T>::init(true, L); copy(in, n); }
+ private:
+ SecureBuffer<T, L>& operator=(const MemoryRegion<T>& in)
+- { if(this != &in) set(in); return (*this); }
++ { if(this != &in) this->set(in); return (*this); }
+ };
+
+ }
diff --git a/app-crypt/qca/files/qca-2.1.0.3-qt55.patch b/app-crypt/qca/files/qca-2.1.0.3-qt55.patch
new file mode 100644
index 000000000000..277c24e02800
--- /dev/null
+++ b/app-crypt/qca/files/qca-2.1.0.3-qt55.patch
@@ -0,0 +1,26 @@
+From 7207e6285e932044cd66d49d0dc484666cfb0092 Mon Sep 17 00:00:00 2001
+From: Hrvoje Senjan <hrvoje.senjan@gmail.com>
+Date: Sat, 17 Jan 2015 20:12:18 +0100
+Subject: [PATCH] Add missing QIODevice include
+
+Fixes build with Qt 5.5
+---
+ include/QtCrypto/qca_basic.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/include/QtCrypto/qca_basic.h b/include/QtCrypto/qca_basic.h
+index 42808c5..e0c6cbb 100644
+--- a/include/QtCrypto/qca_basic.h
++++ b/include/QtCrypto/qca_basic.h
+@@ -35,6 +35,8 @@
+
+ #include "qca_core.h"
+
++#include <QIODevice>
++
+ // Qt5 comes with QStringLiteral for wrapping string literals, which Qt4 does
+ // not have. It is needed if the headers are built with QT_NO_CAST_FROM_ASCII.
+ // Defining it here as QString::fromUtf8 for convenience.
+--
+2.0.5
+
diff --git a/app-crypt/qca/files/qca-disable-pgp-test.patch b/app-crypt/qca/files/qca-disable-pgp-test.patch
new file mode 100644
index 000000000000..7944e3c358ea
--- /dev/null
+++ b/app-crypt/qca/files/qca-disable-pgp-test.patch
@@ -0,0 +1,13 @@
+diff --git a/unittest/CMakeLists.txt b/unittest/CMakeLists.txt
+index f4d9eb9..67ef281 100644
+--- a/unittest/CMakeLists.txt
++++ b/unittest/CMakeLists.txt
+@@ -23,7 +23,7 @@ add_subdirectory(keylengthunittest)
+ add_subdirectory(keystore)
+ add_subdirectory(macunittest)
+ add_subdirectory(metatype)
+-add_subdirectory(pgpunittest)
++# add_subdirectory(pgpunittest)
+ add_subdirectory(pipeunittest)
+ add_subdirectory(pkits)
+ add_subdirectory(rsaunittest)
diff --git a/app-crypt/qca/metadata.xml b/app-crypt/qca/metadata.xml
new file mode 100644
index 000000000000..71e64852ee63
--- /dev/null
+++ b/app-crypt/qca/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<herd>qt</herd>
+<herd>kde</herd>
+<use>
+ <flag name="botan">Enable botan plugin</flag>
+ <flag name="gcrypt">Enable gcrypt plugin</flag>
+ <flag name="gpg">Enable GnuPG plugin</flag>
+ <flag name="logger">Enable logger plugin</flag>
+ <flag name="nss">Enable NSS plugin</flag>
+ <flag name="openssl">Enable OpenSSL plugin</flag>
+ <flag name="pkcs11">Enable PKCS#11 plugin</flag>
+ <flag name="sasl">Enable SASL plugin</flag>
+ <flag name="softstore">Enable softstore plugin</flag>
+</use>
+</pkgmetadata>
diff --git a/app-crypt/qca/qca-2.0.3-r1.ebuild b/app-crypt/qca/qca-2.0.3-r1.ebuild
new file mode 100644
index 000000000000..13d9729ad713
--- /dev/null
+++ b/app-crypt/qca/qca-2.0.3-r1.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+
+inherit eutils multilib qt4-r2
+
+DESCRIPTION="Qt Cryptographic Architecture (QCA)"
+HOMEPAGE="http://delta.affinix.com/qca/"
+SRC_URI="http://delta.affinix.com/download/${PN}/${PV%.*}/${P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="2"
+KEYWORDS="alpha amd64 ~arm hppa ~ia64 ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris"
+IUSE="aqua debug doc examples gpg logger +openssl pkcs11 sasl"
+RESTRICT="test"
+
+DEPEND="dev-qt/qtcore:4[debug?]"
+RDEPEND="${DEPEND}
+ !<app-crypt/qca-1.0-r3:0"
+
+PDEPEND="gpg? ( app-crypt/qca-gnupg )
+ logger? ( app-crypt/qca-logger )
+ openssl? ( app-crypt/qca-ossl )
+ pkcs11? ( app-crypt/qca-pkcs11 )
+ sasl? ( app-crypt/qca-cyrus-sasl )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2.0.2-pcfilespath.patch \
+ "${FILESDIR}"/${P}+gcc-4.7.patch
+
+ if use aqua; then
+ sed -i -e "s|QMAKE_LFLAGS_SONAME =.*|QMAKE_LFLAGS_SONAME = -Wl,-install_name,|g" \
+ src/src.pro || die
+ fi
+}
+
+src_configure() {
+ # Ensure proper rpath
+ export EXTRA_QMAKE_RPATH="${EPREFIX}/usr/$(get_libdir)/qca2"
+
+ ABI= ./configure \
+ --prefix="${EPREFIX}"/usr \
+ --qtdir="${EPREFIX}"/usr \
+ --includedir="${EPREFIX}"/usr/include/qca2 \
+ --libdir="${EPREFIX}"/usr/$(get_libdir)/qca2 \
+ --certstore-path="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt \
+ --no-separate-debug-info \
+ --disable-tests \
+ --$(use debug && echo debug || echo release) \
+ --no-framework \
+ || die "configure failed"
+
+ eqmake4
+}
+
+src_install() {
+ emake INSTALL_ROOT="${D}" install || die
+ dodoc README TODO || die
+
+ cat <<-EOF > "${WORKDIR}"/44qca2
+ LDPATH="${EPREFIX}/usr/$(get_libdir)/qca2"
+ EOF
+ doenvd "${WORKDIR}"/44qca2 || die
+
+ if use doc; then
+ dohtml "${S}"/apidocs/html/* || die
+ fi
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}/
+ doins -r "${S}"/examples || die
+ fi
+
+ # add the proper rpath for packages that do CONFIG += crypto
+ echo "QMAKE_RPATHDIR += \"${EPREFIX}/usr/$(get_libdir)/qca2\"" >> \
+ "${D%/}${EPREFIX}/usr/share/qt4/mkspecs/features/crypto.prf" \
+ || die "failed to add rpath to crypto.prf"
+}
diff --git a/app-crypt/qca/qca-2.1.0.3.ebuild b/app-crypt/qca/qca-2.1.0.3.ebuild
new file mode 100644
index 000000000000..6bf313296207
--- /dev/null
+++ b/app-crypt/qca/qca-2.1.0.3.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit cmake-utils multibuild qmake-utils
+
+MY_PN="${PN}-qt5"
+
+DESCRIPTION="Qt Cryptographic Architecture (QCA)"
+HOMEPAGE="http://delta.affinix.com/qca/"
+SRC_URI="mirror://kde/stable/${MY_PN}/${PV}/src/${MY_PN}-${PV}.tar.xz"
+
+LICENSE="LGPL-2.1"
+SLOT="2"
+KEYWORDS="alpha amd64 ~arm ~arm64 hppa ~ia64 ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris"
+
+IUSE="botan debug doc examples gcrypt gpg logger nss +openssl pkcs11 +qt4 qt5 sasl softstore test"
+REQUIRED_USE="|| ( qt4 qt5 )"
+
+RDEPEND="
+ !app-crypt/qca-cyrus-sasl
+ !app-crypt/qca-gnupg
+ !app-crypt/qca-logger
+ !app-crypt/qca-ossl
+ !app-crypt/qca-pkcs11
+ botan? ( dev-libs/botan )
+ gcrypt? ( dev-libs/libgcrypt:= )
+ gpg? ( app-crypt/gnupg )
+ nss? ( dev-libs/nss )
+ openssl? ( >=dev-libs/openssl-1.0.1:0 )
+ pkcs11? (
+ dev-libs/openssl:0
+ dev-libs/pkcs11-helper
+ )
+ qt4? ( dev-qt/qtcore:4 )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtconcurrent:5
+ dev-qt/qtnetwork:5
+ )
+ sasl? ( dev-libs/cyrus-sasl:2 )
+"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )
+ test? (
+ qt4? ( dev-qt/qttest:4 )
+ qt5? ( dev-qt/qttest:5 )
+ )
+"
+
+S=${WORKDIR}/${MY_PN}-${PV}
+
+DOCS=( README TODO )
+
+PATCHES=(
+ "${FILESDIR}/${PN}-disable-pgp-test.patch"
+ "${FILESDIR}/${P}-qt55.patch"
+)
+
+qca_plugin_use() {
+ echo -DWITH_${2:-$1}_PLUGIN=$(usex "$1")
+}
+
+pkg_setup() {
+ MULTIBUILD_VARIANTS=( $(usev qt4) $(usev qt5) )
+}
+
+src_configure() {
+ myconfigure() {
+ local mycmakeargs=(
+ -DQCA_FEATURE_INSTALL_DIR="${EPREFIX}$(${MULTIBUILD_VARIANT}_get_mkspecsdir)/features"
+ -DQCA_PLUGINS_INSTALL_DIR="${EPREFIX}$(${MULTIBUILD_VARIANT}_get_plugindir)"
+ $(qca_plugin_use botan)
+ $(qca_plugin_use gcrypt)
+ $(qca_plugin_use gpg gnupg)
+ $(qca_plugin_use logger)
+ $(qca_plugin_use nss)
+ $(qca_plugin_use openssl ossl)
+ $(qca_plugin_use pkcs11)
+ $(qca_plugin_use sasl cyrus-sasl)
+ $(qca_plugin_use softstore)
+ $(cmake-utils_use_build test TESTS)
+ )
+
+ if [[ ${MULTIBUILD_VARIANT} == qt4 ]]; then
+ mycmakeargs+=(-DQT4_BUILD=ON)
+ fi
+
+ cmake-utils_src_configure
+ }
+
+ multibuild_foreach_variant myconfigure
+}
+
+src_compile() {
+ multibuild_foreach_variant cmake-utils_src_compile
+}
+
+src_test() {
+ mytest() {
+ local -x QCA_PLUGIN_PATH="${BUILD_DIR}/lib/qca"
+ cmake-utils_src_test
+ }
+
+ multibuild_foreach_variant mytest
+}
+
+src_install() {
+ multibuild_foreach_variant cmake-utils_src_install
+
+ if use doc; then
+ pushd "${BUILD_DIR}" >/dev/null || die
+ doxygen Doxyfile.in || die
+ dodoc -r apidocs/html
+ popd >/dev/null || die
+ fi
+
+ if use examples; then
+ dodoc -r "${S}"/examples
+ fi
+}
diff --git a/app-crypt/quickcrypt/Manifest b/app-crypt/quickcrypt/Manifest
new file mode 100644
index 000000000000..dd9a2fb887de
--- /dev/null
+++ b/app-crypt/quickcrypt/Manifest
@@ -0,0 +1 @@
+DIST quickcrypt_0.9.2b.tar.gz 2927 SHA256 c1078bab6f6f3e6258eb01858e2623b244a3b8a87adb3d159e17c908f3d1bca0 SHA512 7b0efbe5aaf9f878233885470ed053124dd3c14fe2630902517388f3ecefda1bc89f3ec9a7edd6d7582f4108bfebf421d593f4b37ed66a7692e955c65003523e WHIRLPOOL 13f6b899b84a74c3a1c83014fdff5026bd5066da0fdeaf4604438f3eb9ef1a39c1c3870c1c5b7bcea7183c08ead2ec52f2b1d2affa6a64894c8b8d47c1f33de2
diff --git a/app-crypt/quickcrypt/metadata.xml b/app-crypt/quickcrypt/metadata.xml
new file mode 100644
index 000000000000..f08d14f4a08f
--- /dev/null
+++ b/app-crypt/quickcrypt/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<maintainer>
+ <email>robbat2@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-crypt/quickcrypt/quickcrypt-0.9.2b.ebuild b/app-crypt/quickcrypt/quickcrypt-0.9.2b.ebuild
new file mode 100644
index 000000000000..c3ad1edacec1
--- /dev/null
+++ b/app-crypt/quickcrypt/quickcrypt-0.9.2b.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+MY_P=${P/-/_}
+S=${WORKDIR}/${MY_P}
+DESCRIPTION="gives you a quick MD5 Password from any string"
+HOMEPAGE="http://linux.netpimpz.com/quickcrypt/"
+SRC_URI="http://linux.netpimpz.com/quickcrypt/download/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="x86 sparc ppc alpha amd64 ia64 hppa ~mips"
+IUSE=""
+
+DEPEND=">=dev-lang/perl-5.6
+ virtual/perl-Digest-MD5"
+RDEPEND="${DEPEND}"
+
+src_install() {
+ dobin quickcrypt || die
+ dodoc README BUGS
+}
diff --git a/app-crypt/rainbowcrack/Manifest b/app-crypt/rainbowcrack/Manifest
new file mode 100644
index 000000000000..51a1c562165d
--- /dev/null
+++ b/app-crypt/rainbowcrack/Manifest
@@ -0,0 +1,2 @@
+DIST rainbowcrack-1.5-linux32.zip 120118 SHA256 b1485f9131ee3a03006e269f674135a0a09cf4cb5465ab856565ce55a726ed55 SHA512 2c8663c7f6f2bc2ea6fbcb75710505705a290159cb6f8e58efc112eb5329c0be873e61636819ba7f8becf30b2dda2779aa3f2acd14e6c904962472c7833e7c6f WHIRLPOOL c8966033e255cef9ff4f84048c79c833f1791bfc54f784e936afc944ac4cef563b9ed3ab8f7e4911d83ede770422d5e5f99590d0824df790366c4e563664d635
+DIST rainbowcrack-1.5-linux64.zip 118000 SHA256 ebeaa84f01fd69e67670af47472f98e5d1c8b6b70f9590009b13956e859c4b5e SHA512 dd41ce2dd5a8209b445f0ee578892ab1236f7cc7a1a4404ab0e6c7eed0cc20168e039a063b08350d2ae42a25a9b6f7dd57c12fad7d480c302e28035f2582289e WHIRLPOOL 28259a3ef78d9d26b3cb0abcccf9d6efc05b999c38abcf5690b1b0fb9edf019a8c94d6f3ad6afe8c385fb92def3348bae214ecd57e0b70ef52edbc4138aef177
diff --git a/app-crypt/rainbowcrack/metadata.xml b/app-crypt/rainbowcrack/metadata.xml
new file mode 100644
index 000000000000..5e64af814596
--- /dev/null
+++ b/app-crypt/rainbowcrack/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+<longdescription>
+RainbowCrack is a general propose implementation of Philippe Oechslin's faster time-memory trade-off technique.
+ In short, the RainbowCrack tool is a password cracker. A traditional brute force cracker try all possible
+plaintexts one by one in cracking time. It is time consuming to break complex password in this way. The idea of
+time-memory trade-off is to do all cracking time computation in advance and store the result in files so called
+"rainbow table". It does take a long time to precompute the tables. But once the one time precomputation is
+finished, a time-memory trade-off cracker can be hundreds of times faster than a brute force cracker, with the
+help of precomputed tables.
+</longdescription>
+</pkgmetadata>
diff --git a/app-crypt/rainbowcrack/rainbowcrack-1.5.ebuild b/app-crypt/rainbowcrack/rainbowcrack-1.5.ebuild
new file mode 100644
index 000000000000..83d126fca5e5
--- /dev/null
+++ b/app-crypt/rainbowcrack/rainbowcrack-1.5.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="Hash cracker that precomputes plaintext - ciphertext pairs in advance"
+HOMEPAGE="http://project-rainbowcrack.com/"
+SRC_URI="amd64? ( http://project-${PN}.com/${P}-linux64.zip )
+ x86? ( http://project-${PN}.com/${P}-linux32.zip )"
+
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RESTRICT="bindist mirror" #444426
+
+RAINBOW_DESTDIR="opt/${PN}"
+
+QA_FLAGS_IGNORED="${RAINBOW_DESTDIR}/.*"
+QA_PRESTRIPPED="${RAINBOW_DESTDIR}/.*"
+
+DEPEND="app-arch/unzip"
+
+src_unpack() {
+ unpack ${A}
+ mv ${P}-linux* "${S}"
+}
+
+src_install() {
+ local bin bins="rcrack rt2rtc rtc2rt rtgen rtsort"
+
+ exeinto "/${RAINBOW_DESTDIR}"
+ doexe alglib0.so ${bins}
+
+ for bin in ${bins}; do
+ make_wrapper ${bin} ./${bin} "/${RAINBOW_DESTDIR}" "/${RAINBOW_DESTDIR}"
+ done
+
+ insinto "/${RAINBOW_DESTDIR}"
+ doins charset.txt
+
+ dodoc readme.txt
+}
diff --git a/app-crypt/rotix/Manifest b/app-crypt/rotix/Manifest
new file mode 100644
index 000000000000..be34ea21cc8d
--- /dev/null
+++ b/app-crypt/rotix/Manifest
@@ -0,0 +1 @@
+DIST rotix-0.83.tar.bz2 14685 SHA256 f25eae09e1c6eb95f44aec7a2aeaf9b4822da0304909e70149fda4603f1368bd SHA512 1f318e15bd51cc197d9d9fc36e37b29c18fe7a8e8c40654c69ccf97d32b896afa7cc517c562750f6c1262baddbb451bd8a29ada994176e442630d8ed56ccf572 WHIRLPOOL f376af910e0537e3101dcef1b8e224dd7064ab6aaeb788aa4fd76e1f715a3f5ed00a310605aff8021918fb99b5033af3a39a20b6c291b6d59d7f094d43a60ee8
diff --git a/app-crypt/rotix/files/0.83-respect-CFLAGS-and-dont-strip.patch b/app-crypt/rotix/files/0.83-respect-CFLAGS-and-dont-strip.patch
new file mode 100644
index 000000000000..ab23372e768f
--- /dev/null
+++ b/app-crypt/rotix/files/0.83-respect-CFLAGS-and-dont-strip.patch
@@ -0,0 +1,31 @@
+Index: rotix-0.83/Makefile
+===================================================================
+--- rotix-0.83.orig/Makefile
++++ rotix-0.83/Makefile
+@@ -22,12 +22,6 @@
+
+ include Makefile.settings
+
+-ifdef DEBUG
+-CFLAGS += -g3
+-else
+-CFLAGS += -O3
+-endif
+-
+ ifdef I18N
+ CFLAGS += -DPACKAGE=\"${PACKAGE}\" -D LOCALEDIR=\"${LOCALE}\"
+ endif
+@@ -39,12 +33,7 @@ endif
+ all : rotix po
+
+ rotix : rot.o help.o rotix.o
+- $(CC) -Wall $(CFLAGS) -o rotix rot.o help.o rotix.o
+-ifdef STRIP
+-ifndef DEBUG
+- $(STRIP) rotix
+-endif
+-endif
++ $(CC) -Wall $(CFLAGS) $(LDFLAGS) -o rotix rot.o help.o rotix.o
+
+ ifdef I18N
+ CFLAGS += -D I18N=1
diff --git a/app-crypt/rotix/files/rotix-0.83-interix.patch b/app-crypt/rotix/files/rotix-0.83-interix.patch
new file mode 100644
index 000000000000..b691478582ca
--- /dev/null
+++ b/app-crypt/rotix/files/rotix-0.83-interix.patch
@@ -0,0 +1,15 @@
+--- rotix-0.83.orig/help.c
++++ rotix-0.83/help.c
+@@ -24,8 +24,12 @@
+ * I18N
+ \*/
+
++#if I18N
+ #include <libintl.h>
+ #define _(String) gettext (String)
++#else
++#define _(String) (String)
++#endif
+
+ /*\
+ * This function displays the help-information.
diff --git a/app-crypt/rotix/files/rotix-0.83-locale.diff b/app-crypt/rotix/files/rotix-0.83-locale.diff
new file mode 100644
index 000000000000..844a452b8af1
--- /dev/null
+++ b/app-crypt/rotix/files/rotix-0.83-locale.diff
@@ -0,0 +1,10 @@
+--- rotix.c 2002-04-02 14:48:42.000000000 -0500
++++ rotix.c.mine 2010-07-15 14:54:45.000000000 -0400
+@@ -38,6 +38,7 @@
+ /* I18N */
+ #ifdef I18N
+ #include <libintl.h>
++#include <locale.h>
+ #define _(String) gettext (String)
+ #else
+ #define _(String) String
diff --git a/app-crypt/rotix/metadata.xml b/app-crypt/rotix/metadata.xml
new file mode 100644
index 000000000000..59e2b8f78cb5
--- /dev/null
+++ b/app-crypt/rotix/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>
+ <email>maintainer-needed@gentoo.org</email>
+ <name>Default assignee for orphaned packages</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/rotix/rotix-0.83.ebuild b/app-crypt/rotix/rotix-0.83.ebuild
new file mode 100644
index 000000000000..bf228a80f412
--- /dev/null
+++ b/app-crypt/rotix/rotix-0.83.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic
+
+DESCRIPTION="Rotix allows you to generate rotational obfuscations"
+HOMEPAGE="http://gentoo.org"
+SRC_URI="http://elektron.its.tudelft.nl/~hemmin98/rotix_releases/${P}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ia64 ppc x86 ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
+IUSE=""
+
+DEPEND="sys-devel/gettext"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PV}-respect-CFLAGS-and-dont-strip.patch
+ epatch "${FILESDIR}"/${P}-locale.diff
+ epatch "${FILESDIR}"/${P}-interix.patch
+}
+
+src_configure() {
+ use elibc_glibc || append-flags -lintl
+ econf --i18n=1
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+}
diff --git a/app-crypt/sbsigntool/Manifest b/app-crypt/sbsigntool/Manifest
new file mode 100644
index 000000000000..bbdd012f4e6c
--- /dev/null
+++ b/app-crypt/sbsigntool/Manifest
@@ -0,0 +1 @@
+DIST sbsigntool_0.6.orig.tar.gz 212375 SHA256 84fb0c8f6fb1e79aa418a4f70a3139b38d5630043b28291c875f383e9b4294b8 SHA512 ed314d1cb7278cf5f27d4c3cd17f2195678419a7f9e47770429b6f95df35f7df035331e60c45970183ddd9b150a9b752f876c777929598b0525872b3255af95c WHIRLPOOL 3b86b9861f5e26586e8a9eb9bbf48adf1a12714b294f0acd605d53e37c27192006c6ecc81d31bf4f200f8e88508f38a52ef93e9e01e301c4245a11894227cecc
diff --git a/app-crypt/sbsigntool/files/0002-image.c-clear-image-variable.patch b/app-crypt/sbsigntool/files/0002-image.c-clear-image-variable.patch
new file mode 100644
index 000000000000..dfe183e66cd2
--- /dev/null
+++ b/app-crypt/sbsigntool/files/0002-image.c-clear-image-variable.patch
@@ -0,0 +1,29 @@
+From 21e984fa9d93a760cc03f5d9d13d023809227df2 Mon Sep 17 00:00:00 2001
+From: James Bottomley <JBottomley@Parallels.com>
+Date: Thu, 11 Apr 2013 21:12:17 -0700
+Subject: image.c: clear image variable
+
+Not zeroing the image after talloc occasionally leads to a segfault because
+the programme thinks it has a signature when in reality it just has a junk
+pointer and segfaults.
+
+Signed-off-by: James Bottomley <JBottomley@Parallels.com>
+---
+ src/image.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/image.c b/src/image.c
+index cc55791..10eba0e 100644
+--- a/src/image.c
++++ b/src/image.c
+@@ -401,6 +401,7 @@ struct image *image_load(const char *filename)
+ return NULL;
+ }
+
++ memset(image, 0, sizeof(*image));
+ rc = fileio_read_file(image, filename, &image->buf, &image->size);
+ if (rc)
+ goto err;
+--
+1.8.2.1
+
diff --git a/app-crypt/sbsigntool/files/0003-Fix-for-multi-sign.patch b/app-crypt/sbsigntool/files/0003-Fix-for-multi-sign.patch
new file mode 100644
index 000000000000..f42c69616d13
--- /dev/null
+++ b/app-crypt/sbsigntool/files/0003-Fix-for-multi-sign.patch
@@ -0,0 +1,39 @@
+From e58a528ef57e53008222f238cce7c326a14572e2 Mon Sep 17 00:00:00 2001
+From: James Bottomley <JBottomley@Parallels.com>
+Date: Mon, 30 Sep 2013 19:25:37 -0700
+Subject: [PATCH 4/4] Fix for multi-sign
+
+The new Tianocore multi-sign code fails now for images signed with
+sbsigntools. The reason is that we don't actually align the signature table,
+we just slap it straight after the binary data. Unfortunately, the new
+multi-signature code checks that our alignment offsets are correct and fails
+the signature for this reason. Fix by adding junk to the end of the image to
+align the signature section.
+
+Signed-off-by: James Bottomley <JBottomley@Parallels.com>
+---
+ src/image.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/src/image.c b/src/image.c
+index 10eba0e..519e288 100644
+--- a/src/image.c
++++ b/src/image.c
+@@ -385,7 +385,13 @@ static int image_find_regions(struct image *image)
+
+ /* record the size of non-signature data */
+ r = &image->checksum_regions[image->n_checksum_regions - 1];
+- image->data_size = (r->data - (void *)image->buf) + r->size;
++ /*
++ * The new Tianocore multisign does a stricter check of the signatures
++ * in particular, the signature table must start at an aligned offset
++ * fix this by adding bytes to the end of the text section (which must
++ * be included in the hash)
++ */
++ image->data_size = align_up((r->data - (void *)image->buf) + r->size, 8);
+
+ return 0;
+ }
+--
+1.8.4
+
diff --git a/app-crypt/sbsigntool/metadata.xml b/app-crypt/sbsigntool/metadata.xml
new file mode 100644
index 000000000000..5deed91a82bb
--- /dev/null
+++ b/app-crypt/sbsigntool/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>
+ <email>vapier@gentoo.org</email>
+ <description>do whatever</description>
+ </maintainer>
+ <upstream>
+ <remote-id type="launchpad">ubuntu</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/sbsigntool/sbsigntool-0.6-r1.ebuild b/app-crypt/sbsigntool/sbsigntool-0.6-r1.ebuild
new file mode 100644
index 000000000000..3fd1601dd3e8
--- /dev/null
+++ b/app-crypt/sbsigntool/sbsigntool-0.6-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Utilities for signing and verifying files for UEFI Secure Boot"
+HOMEPAGE="https://launchpad.net/ubuntu/+source/sbsigntool"
+SRC_URI="https://launchpad.net/ubuntu/+archive/primary/+files/${PN}_${PV}.orig.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl
+ sys-apps/util-linux"
+DEPEND="${RDEPEND}
+ sys-apps/help2man
+ sys-boot/gnu-efi
+ virtual/pkgconfig"
+
+src_prepare() {
+ local iarch
+ case ${ARCH} in
+ ia64) iarch=ia64 ;;
+ x86) iarch=ia32 ;;
+ amd64) iarch=x86_64 ;;
+ *) die "unsupported architecture: ${ARCH}" ;;
+ esac
+ sed -i "/^EFI_ARCH=/s:=.*:=${iarch}:" configure || die
+ sed -i 's/-m64$/& -march=x86-64/' tests/Makefile.in || die
+ sed -i "/^AR /s:=.*:= $(tc-getAR):" lib/ccan/Makefile.in || die #481480
+ epatch "${FILESDIR}"/0002-image.c-clear-image-variable.patch
+ epatch "${FILESDIR}"/0003-Fix-for-multi-sign.patch
+}
diff --git a/app-crypt/sbsigntool/sbsigntool-0.6.ebuild b/app-crypt/sbsigntool/sbsigntool-0.6.ebuild
new file mode 100644
index 000000000000..5810850a8a04
--- /dev/null
+++ b/app-crypt/sbsigntool/sbsigntool-0.6.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit toolchain-funcs
+
+DESCRIPTION="Utilities for signing and verifying files for UEFI Secure Boot"
+HOMEPAGE="https://launchpad.net/ubuntu/+source/sbsigntool"
+SRC_URI="https://launchpad.net/ubuntu/+archive/primary/+files/${PN}_${PV}.orig.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="dev-libs/openssl
+ sys-apps/util-linux"
+DEPEND="${RDEPEND}
+ sys-apps/help2man
+ sys-boot/gnu-efi
+ virtual/pkgconfig"
+
+src_prepare() {
+ local iarch
+ case ${ARCH} in
+ ia64) iarch=ia64 ;;
+ x86) iarch=ia32 ;;
+ amd64) iarch=x86_64 ;;
+ *) die "unsupported architecture: ${ARCH}" ;;
+ esac
+ sed -i "/^EFI_ARCH=/s:=.*:=${iarch}:" configure || die
+ sed -i 's/-m64$/& -march=x86-64/' tests/Makefile.in || die
+ sed -i "/^AR /s:=.*:= $(tc-getAR):" lib/ccan/Makefile.in || die #481480
+}
diff --git a/app-crypt/scl011-bin/Manifest b/app-crypt/scl011-bin/Manifest
new file mode 100644
index 000000000000..8b876fb98259
--- /dev/null
+++ b/app-crypt/scl011-bin/Manifest
@@ -0,0 +1,2 @@
+DIST scl011_2.06_linux_32bit.tar.gz 603947 SHA256 136be4d6871320f8fe38e8a8c854f4246c00042fed3951fc776a32541cbaf24d SHA512 97604c874f4c0edeb6045aa0c131285d6aaa253b07dc6e9fffcc20a3001957ae35d72a38f1901b19ae872df0857248b58f28b23af584fe699a22b1f4448a3d24 WHIRLPOOL cd0140efddb35ba5e39834b876a0ade32062d099f598e02c56f66346adf5a2bf5a37774e87aeeb81c54071a073f3f6b4b3ef6ca0b7851137c2ddd5c24499fb49
+DIST scl011_2.06_linux_64bit.tar.gz 604105 SHA256 45e81a507ee0d5dfdb8df4bb20341398aaad2d1c8b52765367dd04661dac92f6 SHA512 2c9b261cb40c1e578938bddc1a927bad8affc1e4481ad85624c00d8d75b85d74f88295db7e8bb165a29dd2b9037c242a223ee0685a6b30b1425af0a73c686ced WHIRLPOOL 11f97f62dc0a5b72e2bfe5244ffd7999c5011807ea2f81b1c584ccfc6603074e711c499b59222292598bb31bdfff4efc8283755003b5bdf09065261f6d19914c
diff --git a/app-crypt/scl011-bin/files/92_pcscd_scl011-bin.rules b/app-crypt/scl011-bin/files/92_pcscd_scl011-bin.rules
new file mode 100644
index 000000000000..dda4dc2afdbf
--- /dev/null
+++ b/app-crypt/scl011-bin/files/92_pcscd_scl011-bin.rules
@@ -0,0 +1,10 @@
+# If not adding the device, go away
+ACTION!="add", GOTO="pcscd_scl011-bin_rules_end"
+SUBSYSTEM!="usb", GOTO="pcscd_scl011-bin_rules_end"
+ENV{DEVTYPE}!="usb_device", GOTO="pcscd_scl011-bin_rules_end"
+
+# Tested on scl011
+ATTRS{idVendor}=="04e6", ATTRS{idProduct}=="5292", ENV{PCSCD}="1"
+
+# All done
+LABEL="pcscd_scl011-bin_rules_end"
diff --git a/app-crypt/scl011-bin/metadata.xml b/app-crypt/scl011-bin/metadata.xml
new file mode 100644
index 000000000000..40b0135cee6e
--- /dev/null
+++ b/app-crypt/scl011-bin/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>egore@gmx.de</email>
+ <description>Proxied maintainer, assign bugs to him</description>
+ </maintainer>
+ <maintainer>
+ <email>flameeyes@gentoo.org</email>
+ <description>Proxy-maintainer, CC him on bugs</description>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/scl011-bin/scl011-bin-2.06.ebuild b/app-crypt/scl011-bin/scl011-bin-2.06.ebuild
new file mode 100644
index 000000000000..9fc3761fb9f1
--- /dev/null
+++ b/app-crypt/scl011-bin/scl011-bin-2.06.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit multilib toolchain-funcs udev
+
+DESCRIPTION="pcsc-lite driver for the German identification card (nPA)"
+HOMEPAGE="http://www.scmmicro.com/de/products-services/chipkartenleser-terminals/kontaktlos-dual-interface/it-sicherheitskit-basisleser/treiber.html"
+SRC_URI="x86? ( http://www.scmmicro.com/npa/files/scl011_${PV}_linux_32bit.tar.gz )
+ amd64? ( http://www.scmmicro.com/npa/files/scl011_${PV}_linux_64bit.tar.gz )"
+
+LICENSE="SCM-MICRO"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE=""
+
+RDEPEND="sys-apps/pcsc-lite"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S="${WORKDIR}"
+
+RESTRICT="mirror bindist"
+
+QA_PREBUILT="*/libSCL011.so.2.06"
+
+src_install() {
+ local INSTALL_DIR=`$(tc-getPKG_CONFIG) libpcsclite --variable=usbdropdir`
+ local BASEPATH
+ case $(tc-arch) in
+ amd64) BASEPATH="${S}/scl011_${PV}_linux_64bit" ;;
+ x86) BASEPATH="${S}/scl011_${PV}_linux_32bit" ;;
+ esac
+
+ insinto "${INSTALL_DIR}"/SCL011.bundle/Contents
+ doins "${BASEPATH}"/proprietary/SCL011.bundle/Contents/Info.plist
+ exeinto "${INSTALL_DIR}"/SCL011.bundle/Contents/Linux
+ doexe "${BASEPATH}"/proprietary/SCL011.bundle/Contents/Linux/libSCL011.so.${PV}
+
+ udev_dorules "${FILESDIR}"/92_pcscd_scl011-bin.rules
+}
diff --git a/app-crypt/scrypt/Manifest b/app-crypt/scrypt/Manifest
new file mode 100644
index 000000000000..c200365a1921
--- /dev/null
+++ b/app-crypt/scrypt/Manifest
@@ -0,0 +1 @@
+DIST scrypt-1.1.6.tgz 83776 SHA256 dfd0d1a544439265bbb9b58043ad3c8ce50a3987b44a61b1d39fd7a3ed5b7fb8 SHA512 c57e07c2ebaa696d575abf52c0078d3a8959c328e7a5fd3d01289424cdd9ec508cde493dc5965446ee59d9ea095e180615fc169696abd2336a3949554229bd1a WHIRLPOOL 6c5f08cc3aef7a9f99671d9e3457150960c64133afd26f029bfdd42e7fce64aa40d0833e1828dd8e0b34527eb03fa152e313d4bccea2d42f7dfbbc633a682d23
diff --git a/app-crypt/scrypt/metadata.xml b/app-crypt/scrypt/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/scrypt/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/scrypt/scrypt-1.1.6.ebuild b/app-crypt/scrypt/scrypt-1.1.6.ebuild
new file mode 100644
index 000000000000..f62f1fc37b51
--- /dev/null
+++ b/app-crypt/scrypt/scrypt-1.1.6.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="A simple password-based encryption utility using the scrypt key derivation function"
+HOMEPAGE="http://www.tarsnap.com/scrypt.html"
+SRC_URI="http://www.tarsnap.com/${PN}/${P}.tgz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cpu_flags_x86_sse2"
+
+DOCS=( FORMAT )
+
+src_configure() {
+ econf $(use_enable cpu_flags_x86_sse2)
+}
diff --git a/app-crypt/scute/Manifest b/app-crypt/scute/Manifest
new file mode 100644
index 000000000000..1d6282f42203
--- /dev/null
+++ b/app-crypt/scute/Manifest
@@ -0,0 +1 @@
+DIST scute-1.4.0.tar.bz2 772986 SHA256 bd698a853375324c4ff590899c1994be83d8d0a1400fcaf489529646965fb745 SHA512 7961679ce3195aeb3ed1508557c767b59970cd221b569c0fa00cd419e4017b84a851f1fbe46323a4ffb6256c6b91bb037f93edb4f4f7f9f6e0add672b9cc2015 WHIRLPOOL 6e4bc0852d389ac2103edb5bb0c0c260642dcc596862fec55db3ffd51a5fc6cd0752a81d864b36db4544c5b1efbf944f76672806bcaa8305ccf07bb9f817459e
diff --git a/app-crypt/scute/files/scute-1.2.0-noversion.patch b/app-crypt/scute/files/scute-1.2.0-noversion.patch
new file mode 100644
index 000000000000..41d188b5926a
--- /dev/null
+++ b/app-crypt/scute/files/scute-1.2.0-noversion.patch
@@ -0,0 +1,14 @@
+Index: scute-1.2.0/src/Makefile.am
+===================================================================
+--- scute-1.2.0.orig/src/Makefile.am
++++ scute-1.2.0/src/Makefile.am
+@@ -109,8 +109,7 @@ scute_deps =
+ endif
+
+ libscute_la_LDFLAGS = $(scute_res_ldflag) $(no_undefined) $(export_symbols) \
+- $(scute_version_script_cmd) -version-info \
+- @LIBSCUTE_LT_CURRENT@:@LIBSCUTE_LT_REVISION@:@LIBSCUTE_LT_AGE@
++ $(scute_version_script_cmd) -avoid-version
+ libscute_la_DEPENDENCIES = @LTLIBOBJS@ $(srcdir)/libscute.vers $(scute_deps)
+ libscute_la_LIBADD = @LTLIBOBJS@ @LIBASSUAN_LIBS@ @GPG_ERROR_LIBS@
+
diff --git a/app-crypt/scute/files/scute-1.4.0-tests.patch b/app-crypt/scute/files/scute-1.4.0-tests.patch
new file mode 100644
index 000000000000..f06591f77e4a
--- /dev/null
+++ b/app-crypt/scute/files/scute-1.4.0-tests.patch
@@ -0,0 +1,13 @@
+Index: scute-1.4.0/tests/Makefile.am
+===================================================================
+--- scute-1.4.0.orig/tests/Makefile.am
++++ scute-1.4.0/tests/Makefile.am
+@@ -35,7 +35,7 @@ TESTS = t-link t-getfunctionlist t-initi
+ t-opensession t-closeallsessions t-getsessioninfo \
+ t-findobjects t-getattribute t-auth
+
+-noinst_PROGRAMS = $(TESTS)
++check_PROGRAMS = $(TESTS)
+
+ INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)/src
+ LDADD = ../src/libscute.la
diff --git a/app-crypt/scute/metadata.xml b/app-crypt/scute/metadata.xml
new file mode 100644
index 000000000000..1a0271ca15d8
--- /dev/null
+++ b/app-crypt/scute/metadata.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>lucas.yamanishi@gmail.com</email>
+ <name>Lucas Yamanishi</name>
+ <description>Proxy maintainer.</description>
+ </maintainer>
+ <maintainer>
+ <email>flameeyes@gentoo.org</email>
+ <description>Proxying maintainer.</description>
+ </maintainer>
+ <longdescription>
+ Scute is a PKCS #11 module that adds support for the OpenPGP
+ smartcard card to the Mozilla Network Security Services (NSS).
+ </longdescription>
+ <upstream>
+ <maintainer>
+ <email>mb@g10code.de</email>
+ <name>Marcus Brinkmann</name>
+ </maintainer>
+ <changelog>http://git.gnupg.org/cgi-bin/gitweb.cgi?p=scute.git;a=blob_plain;f=ChangeLog;hb=HEAD</changelog>
+ <doc lang="en">http://www.scute.org/documentation.xhtml</doc>
+ <bugs-to>https://bugs.g10code.com/gnupg/</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/scute/scute-1.4.0.ebuild b/app-crypt/scute/scute-1.4.0.ebuild
new file mode 100644
index 000000000000..edaf92992717
--- /dev/null
+++ b/app-crypt/scute/scute-1.4.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit autotools eutils libtool multilib
+
+DESCRIPTION="A PKCS #11 module for OpenPGP smartcards"
+HOMEPAGE="http://www.scute.org/"
+SRC_URI="mirror://gnupg/scute/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+# configure script try to check the version of gpgsm and gpg-agent when
+# non-crosscompiling so we need to have them as build-time dependency as
+# well as runtime. Require a version of gnupg that is patched to have
+# gpgsm-gencert.sh working (as that's what the documentation describe).
+DEPEND="
+ >=dev-libs/libgpg-error-1.4
+ >=dev-libs/libassuan-2.0.0
+ >=app-crypt/pinentry-0.7.0
+ >=app-crypt/gnupg-2.0.17-r1[smartcard]"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # We need no ABI versioning, reduce the number of symlinks installed
+ epatch "${FILESDIR}"/scute-1.2.0-noversion.patch
+ # Don't build tests during src_compile.
+ epatch "${FILESDIR}"/scute-1.4.0-tests.patch
+
+ eautoreconf
+ elibtoolize
+}
+
+src_configure() {
+ econf \
+ --libdir=/usr/$(get_libdir)/pkcs11 \
+ --with-gpgsm=/usr/bin/gpgsm \
+ --with-gpg-agent=/usr/bin/gpg-agent
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ find "${D}" -name '*.la' -delete
+ dodoc AUTHORS ChangeLog NEWS README TODO
+}
diff --git a/app-crypt/seahorse-sharing/Manifest b/app-crypt/seahorse-sharing/Manifest
new file mode 100644
index 000000000000..675753712eb4
--- /dev/null
+++ b/app-crypt/seahorse-sharing/Manifest
@@ -0,0 +1 @@
+DIST seahorse-sharing-3.8.0.tar.xz 287408 SHA256 e216e7d5709e688e142b4e96710759f5be54c39ac6c2d58f2eec330e4dfef92b SHA512 9fb41d86afb264c895e6599b397bf18c1400edf0af472451fc46c84005172bd8d318971c4b34ea1f6d00300b1e08fdea8a019d6e7fb11f9ce00c57c5b0b7f5e9 WHIRLPOOL d55660e37649190e037dfc3ee886737b30b7d289c379ce9beec927008208742ef3b558fa5f3b0fd30a24deb0bdafce4c1ff910108a9dcfb2b70052adfdfe3567
diff --git a/app-crypt/seahorse-sharing/metadata.xml b/app-crypt/seahorse-sharing/metadata.xml
new file mode 100644
index 000000000000..da6fd63d0085
--- /dev/null
+++ b/app-crypt/seahorse-sharing/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>gnome</herd>
+</pkgmetadata>
diff --git a/app-crypt/seahorse-sharing/seahorse-sharing-3.8.0.ebuild b/app-crypt/seahorse-sharing/seahorse-sharing-3.8.0.ebuild
new file mode 100644
index 000000000000..22da2337bbb0
--- /dev/null
+++ b/app-crypt/seahorse-sharing/seahorse-sharing-3.8.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="yes" # disable asserts
+
+inherit gnome2
+
+DESCRIPTION="Daemon for PGP public key sharing using DNS-SD and HKP"
+HOMEPAGE="http://projects.gnome.org/seahorse/"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+COMMON_DEPEND="dev-libs/glib:2
+ >=net-dns/avahi-0.6:=
+ net-libs/libsoup:2.4
+ >=x11-libs/gtk+-3:3
+ app-crypt/seahorse
+
+ >=app-crypt/gpgme-1
+ || (
+ =app-crypt/gnupg-2.0*
+ =app-crypt/gnupg-1.4* )"
+RDEPEND="${COMMON_DEPEND}
+ !<app-crypt/seahorse-3.2"
+# ${PN} was part of seahorse before 3.2
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/intltool-0.35
+ sys-devel/gettext
+ virtual/pkgconfig"
+
+src_prepare() {
+ DOCS="AUTHORS MAINTAINERS NEWS" # ChangeLog has nothing useful
+ # Do not pass --enable-tests to configure - package has no tests
+
+ gnome2_src_prepare
+
+ # Drop stupid CFLAGS
+ # FIXME: doing configure.ac triggers maintainer mode rebuild
+ sed -e 's:$CFLAGS -g -O0:$CFLAGS:' \
+ -i configure || die "sed failed"
+}
+
+pkg_postinst() {
+ gnome2_pkg_postinst
+
+ if ! has_version net-dns/avahi && \
+ ! rc-config list default | grep -q "avahi-daemon" ; then
+ elog "To use ${PN}, the Avahi daemon must be running. On an OpenRC"
+ elog "system, you can start the Avahi daemon by"
+ elog "# /etc/init.d/avahi-daemon start"
+ elog "To start Avahi automatically, add it to the default runlevel:"
+ elog "# rc-update add avahi-daemon default"
+ fi
+}
diff --git a/app-crypt/seahorse/Manifest b/app-crypt/seahorse/Manifest
new file mode 100644
index 000000000000..d6f5147f2f19
--- /dev/null
+++ b/app-crypt/seahorse/Manifest
@@ -0,0 +1,2 @@
+DIST seahorse-3.14.1.tar.xz 1504128 SHA256 092a890982fa594da8a384f156b961392f69ce5d9518a9801035e6deb1f05e93 SHA512 1147ea601c1cb17dd1606d02f86261b0381dfdab14329fee7d68bd635420fec98174b2509b09c68216918bd9ca31f22ea538fa34cae1a8e0f4c44714b9693c0f WHIRLPOOL 208c841a28b8c7c0916c02e1a68eaa7c74681c5a3b8e0be30f65a4da953cefd9bb94d57373640513b68de9b204e9d1fc65429bf5dca0344336390068fe4a47e1
+DIST seahorse-3.16.0.tar.xz 1496188 SHA256 770a5f03b8745054ef04cef9923dd713b1fbf309169150bc8dd32d7e5f7ee131 SHA512 54e020e907c0053762bf78fd1b4a47ed30d253a89d9063f6daa33598fc3cd97dca0af0cd66bb4a140223b6ae18db88a52bfc50f46987cb3a8d0351c115fba923 WHIRLPOOL 5e3c3ee17be55849c22019c7a9669380ae101e39d9c81e66d6140d500ef3882c2019f39491bfb37a9019c3fda78304aab9743dc3ae112646a4e9106493704372
diff --git a/app-crypt/seahorse/files/seahorse-3.16.0-gnupg-detection.patch b/app-crypt/seahorse/files/seahorse-3.16.0-gnupg-detection.patch
new file mode 100644
index 000000000000..63004af374db
--- /dev/null
+++ b/app-crypt/seahorse/files/seahorse-3.16.0-gnupg-detection.patch
@@ -0,0 +1,173 @@
+From dfabc8de30e87fd7b6dc6d12f34fa29858caed95 Mon Sep 17 00:00:00 2001
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Date: Fri, 5 Jun 2015 16:01:43 -0400
+Subject: Avoid binding seahorse to the build-time version of gpg
+
+As a user of gpgme, seahorse should prefer gpg2 over gpg, since gpgme
+is more fully-functional when it works with gpg2.
+
+Moreover, seahorse should not assume that the version of gpg that it
+was built against is the same version of gpg that it is running
+against.
+
+GPGME has allowed a NULL value for the file_name parameter for
+gpgme_set_engine_info ever since the function appeared. This will use
+gpgme's default engine selection, which is likely to be better than
+hardcoding the path that seahorse found during compile time.
+
+Moreover, seahorse should not bother trying to build against archaic
+versions of these branches, and certainly shouldn't hardcode numeric
+values that only worked for old versions in the seahorse headers.
+
+This changeset adjusts the configure.ac tests to make sure that the
+build environment has a non-archaic version of gnupg at least.
+
+Signed-off-by: Stef Walter <stefw@redhat.com>
+ * Remove support for GnuPG 1.4.x as discussed at linked bug
+
+https://bugzilla.gnome.org/show_bug.cgi?id=750468
+
+diff --git a/configure.ac b/configure.ac
+index 760ec98..bf34ea9 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -9,7 +9,7 @@ GCR_REQUIRED=3.11.91
+ GTK_REQ=3.4.0
+ GTK_MAX=GTK_VERSION_3_4
+
+-GNUPG_ACCEPTED="1.2 1.4 2.0"
++GNUPG_ACCEPTED="2.0.12 2.1.4"
+ GPGME_REQUIRED=1.0.0
+ LIBSECRET_REQUIRED=0.16
+ AVAHI_GLIB_REQUIRED=0.6
+@@ -130,7 +130,7 @@ else
+ DO_CHECK=$enableval, DO_CHECK=yes)
+
+ if test "$DO_CHECK" = "yes"; then
+- AC_PATH_PROGS(GNUPG, [gpg gpg2], no)
++ AC_PATH_PROGS(GNUPG, [gpg2 gpg], no)
+ AC_DEFINE_UNQUOTED(GNUPG, "$GNUPG", [Path to gpg executable.])
+ ok="no"
+ if test "$GNUPG" != "no"; then
+@@ -144,12 +144,16 @@ else
+ sed 's/^gpg (GnuPG) \([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'`
+
+ for ver in $GNUPG_ACCEPTED; do
+- if test "$ver" = "$major.$minor"; then
+- AC_DEFINE_UNQUOTED(GPG_MAJOR, [$major], [GPG Major Version])
+- AC_DEFINE_UNQUOTED(GPG_MINOR, [$minor], [GPG Minor Version])
+- AC_DEFINE_UNQUOTED(GPG_MICRO, [$micro], [GPG Micro Version])
+- ok="yes"
+- break
++ branch=`echo $ver | sed 's/\.[[0-9]]*$//'`
++ if test "$branch" = "$major.$minor"; then
++ min_micro=`echo $ver | sed 's/^[[0-9]]*\.[[0-9]]*\.//'`
++ if test "$min_micro" -le "$micro"; then
++ AC_DEFINE_UNQUOTED(GPG_MAJOR, [$major], [GPG Major Version])
++ AC_DEFINE_UNQUOTED(GPG_MINOR, [$minor], [GPG Minor Version])
++ AC_DEFINE_UNQUOTED(GPG_MICRO, [$micro], [GPG Micro Version])
++ ok="yes"
++ break
++ fi
+ fi
+ done
+ fi
+@@ -206,7 +210,7 @@ fi
+
+ if test "$enable_pgp" = "yes"; then
+ if test -z "$have_gpg"; then
+- AC_MSG_ERROR([Appropriate version of GnuPG not found. Please install one of versions: $GNUPG_ACCEPTED])
++ AC_MSG_ERROR([Appropriate version of GnuPG not found. Please install one of the following versions (or later): $GNUPG_ACCEPTED])
+ fi
+
+ if test -z "$have_gpgme"; then
+diff --git a/pgp/seahorse-gpg-op.c b/pgp/seahorse-gpg-op.c
+index f34d9ec..3c3b9b5 100644
+--- a/pgp/seahorse-gpg-op.c
++++ b/pgp/seahorse-gpg-op.c
+@@ -111,9 +111,6 @@ seahorse_gpg_op_num_uids (gpgme_ctx_t ctx, const char *pattern, guint *number)
+ found += 3;
+ }
+
+- if ((GPG_MAJOR == 1) && (GPG_MINOR == 2))
+- *number = *number + 1;
+-
+ g_free (output);
+ return GPG_OK;
+ }
+diff --git a/pgp/seahorse-gpgme-key-op.h b/pgp/seahorse-gpgme-key-op.h
+index 622c93a..0acbfc0 100644
+--- a/pgp/seahorse-gpgme-key-op.h
++++ b/pgp/seahorse-gpgme-key-op.h
+@@ -30,43 +30,10 @@
+ #include "pgp/seahorse-gpgme-uid.h"
+ #include "pgp/seahorse-gpgme-photo.h"
+
+-/*
+- * Key type options.
+- * Sadly these are not consistent between versions of GPG.
++/*
++ * Key type options.
++ * We only support GPG version >=2.0.12 or >= 2.1.4
+ */
+-#if ( GPG_MAJOR == 2 && GPG_MINOR == 0 && GPG_MICRO < 12 ) || \
+- ( GPG_MAJOR == 1 && ( GPG_MINOR < 4 || GPG_MICRO < 10 ) )
+-
+-typedef enum {
+- /* DSA key with ElGamal subkey. The ElGamal length is variable
+- * within #ELGAMAL_MIN and #LENGTH_MAX. The DSA key will have a
+- * length equal to the ElGamal key's up to a limit of #DSA_MAX.
+- * Only used in seahorse_ops_key_generate().
+- */
+- DSA_ELGAMAL = 1,
+- /* DSA key, sign only. Can be a subkey or a primary key.
+- * See #DSA_MIN and #DSA_MAX.
+- */
+- DSA = 2,
+- /* ElGamal subkey, encrypt only. See #ELGAMAL_MIN and #LENGTH_MAX.
+- * Only used in seahorse_ops_key_add_subkey().
+- */
+- ELGAMAL = 4,
+- /* RSA key, sign only. Can be a subkey or a primary key.
+- * See #RSA_MIN and #LENGTH_MAX.
+- */
+- RSA_SIGN = 5,
+- /* RSA subkey, encrypt only. See #RSA_MIN and #LENGTH_MAX.
+- * Only used in seahorse_ops_key_add_subkey().
+- */
+- RSA_ENCRYPT = 6,
+- /* RSA sign-only key with RSA encrypt-only subkey. See #RSA_MIN and
+- * #LENGTH_MAX. Only used in seahorse_ops_key_generate().
+- */
+- RSA_RSA = 11
+-} SeahorseKeyEncType;
+-
+-#else /* GPG version >=1.4.10 or >=2.0.12 */
+
+ typedef enum {
+ RSA_RSA = 1,
+@@ -77,8 +44,6 @@ typedef enum {
+ RSA_ENCRYPT = 6
+ } SeahorseKeyEncType;
+
+-#endif /* GPG version >=1.4.10 or >=2.0.12 */
+-
+ /* Length ranges for key types */
+ typedef enum {
+ /* Minimum length for #DSA. */
+diff --git a/pgp/seahorse-pgp-backend.c b/pgp/seahorse-pgp-backend.c
+index 4b267c3..ce613b8 100644
+--- a/pgp/seahorse-pgp-backend.c
++++ b/pgp/seahorse-pgp-backend.c
+@@ -311,7 +311,7 @@ seahorse_pgp_backend_initialize (void)
+
+ g_return_if_fail (pgp_backend != NULL);
+
+- gpgme_set_engine_info (GPGME_PROTOCOL_OpenPGP, GNUPG, NULL);
++ gpgme_set_engine_info (GPGME_PROTOCOL_OpenPGP, NULL, NULL);
+ }
+
+ SeahorseGpgmeKeyring *
+--
+cgit v0.10.2
+
diff --git a/app-crypt/seahorse/metadata.xml b/app-crypt/seahorse/metadata.xml
new file mode 100644
index 000000000000..06955307321c
--- /dev/null
+++ b/app-crypt/seahorse/metadata.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>gnome</herd>
+<use>
+ <flag name="ldap">Enable seahorse to manipulate GPG keys on a LDAP server.</flag>
+</use>
+<longdescription>Seahorse is a Gnome interface for GnuPG. It's main purpose is to be a PGP/GPG Key Manager, though
+it has other components including a text editor and file manager.
+
+Key Manager Features:
+Generating a key
+Deleting a key
+Importing keys from text or a file
+Exporting a key to text or a file
+View key properties
+
+Key Properties Features:
+Show key info
+Change owner trust
+Change primary key's expiration date
+Change passphrase
+Export key
+Delete Key
+
+Plugins:
+Nautilus Integration
+Gedit plugin
+</longdescription>
+</pkgmetadata>
diff --git a/app-crypt/seahorse/seahorse-3.14.1.ebuild b/app-crypt/seahorse/seahorse-3.14.1.ebuild
new file mode 100644
index 000000000000..9297f4cf66cc
--- /dev/null
+++ b/app-crypt/seahorse/seahorse-3.14.1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+
+inherit gnome2
+
+DESCRIPTION="A GNOME application for managing encryption keys"
+HOMEPAGE="https://wiki.gnome.org/Apps/Seahorse"
+
+LICENSE="GPL-2+ FDL-1.1+"
+SLOT="0"
+IUSE="debug ldap zeroconf"
+KEYWORDS="~alpha amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc x86 ~x86-fbsd"
+
+COMMON_DEPEND="
+ >=app-crypt/gcr-3.11.91:=
+ >=dev-libs/glib-2.10:2
+ >=x11-libs/gtk+-3.4:3
+ >=app-crypt/libsecret-0.16
+ >=net-libs/libsoup-2.33.92:2.4
+ x11-misc/shared-mime-info
+
+ net-misc/openssh
+ >=app-crypt/gpgme-1
+ >=app-crypt/gnupg-1.4
+ <app-crypt/gnupg-2.1
+
+ ldap? ( net-nds/openldap:= )
+ zeroconf? ( >=net-dns/avahi-0.6:= )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-util/gdbus-codegen
+ >=dev-util/intltool-0.35
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+# Need seahorse-plugins git snapshot
+RDEPEND="${COMMON_DEPEND}
+ !<app-crypt/seahorse-plugins-2.91.0_pre20110114
+"
+
+src_prepare() {
+ # Do not mess with CFLAGS with USE="debug"
+ sed -e '/CFLAGS="$CFLAGS -g/d' \
+ -e '/CFLAGS="$CFLAGS -O0/d' \
+ -i configure.ac configure || die "sed 1 failed"
+
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # bindir is needed due to bad macro expansion in desktop file, bug #508610
+ gnome2_src_configure \
+ --bindir=/usr/bin \
+ --enable-pgp \
+ --enable-ssh \
+ --enable-pkcs11 \
+ --enable-hkp \
+ $(use_enable debug) \
+ $(use_enable ldap) \
+ $(use_enable zeroconf sharing) \
+ ITSTOOL=$(type -P true) \
+ VALAC=$(type -P true)
+}
diff --git a/app-crypt/seahorse/seahorse-3.16.0-r1.ebuild b/app-crypt/seahorse/seahorse-3.16.0-r1.ebuild
new file mode 100644
index 000000000000..c6e74f059132
--- /dev/null
+++ b/app-crypt/seahorse/seahorse-3.16.0-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+
+inherit autotools eutils gnome2
+
+DESCRIPTION="A GNOME application for managing encryption keys"
+HOMEPAGE="https://wiki.gnome.org/Apps/Seahorse"
+
+LICENSE="GPL-2+ FDL-1.1+"
+SLOT="0"
+IUSE="debug ldap zeroconf"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+
+COMMON_DEPEND="
+ >=app-crypt/gcr-3.11.91:=
+ >=dev-libs/glib-2.10:2
+ >=x11-libs/gtk+-3.4:3
+ >=app-crypt/libsecret-0.16
+ >=net-libs/libsoup-2.33.92:2.4
+ x11-misc/shared-mime-info
+
+ net-misc/openssh
+ >=app-crypt/gpgme-1
+ >=app-crypt/gnupg-2.0.12
+
+ ldap? ( net-nds/openldap:= )
+ zeroconf? ( >=net-dns/avahi-0.6:= )
+"
+DEPEND="${COMMON_DEPEND}
+ app-text/yelp-tools
+ dev-util/gdbus-codegen
+ >=dev-util/intltool-0.35
+ dev-util/itstool
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+# Need seahorse-plugins git snapshot
+RDEPEND="${COMMON_DEPEND}
+ !<app-crypt/seahorse-plugins-2.91.0_pre20110114
+"
+
+src_prepare() {
+ # Do not mess with CFLAGS with USE="debug"
+ sed -e '/CFLAGS="$CFLAGS -g/d' \
+ -e '/CFLAGS="$CFLAGS -O0/d' \
+ -i configure.ac configure || die "sed 1 failed"
+
+ # Avoid binding seahorse to the build-time version of gpg (from 'master')
+ epatch "${FILESDIR}"/${PN}-3.16.0-gnupg-detection.patch
+
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # bindir is needed due to bad macro expansion in desktop file, bug #508610
+ gnome2_src_configure \
+ --bindir=/usr/bin \
+ --enable-pgp \
+ --enable-ssh \
+ --enable-pkcs11 \
+ --enable-hkp \
+ $(use_enable debug) \
+ $(use_enable ldap) \
+ $(use_enable zeroconf sharing) \
+ VALAC=$(type -P true)
+}
diff --git a/app-crypt/sgeps/Manifest b/app-crypt/sgeps/Manifest
new file mode 100644
index 000000000000..eb7c188e8641
--- /dev/null
+++ b/app-crypt/sgeps/Manifest
@@ -0,0 +1 @@
+DIST sgeps-0_pre15.tar.xz 3284 SHA256 cc178d541e60d45ead8ca1183a31d68c425ad518de0bd7115bdb5b02e0bfb395 SHA512 8ebf5f492baaf6ee7f93054a9afcc6c4318f755d85190ce2576c89a88908ee132283af873a37f60f611683689bc7e2e77903c95c6020c80ad916ebabf4583702 WHIRLPOOL cd972af6008f8a90dc2a33bc5e924471d49b980596eaad3b5db65f233cbbabe2d9b8e3fb98a5e893e90ea2b2ddc9f90dc08efb9fd6f9ec09be9e6d163e266b91
diff --git a/app-crypt/sgeps/metadata.xml b/app-crypt/sgeps/metadata.xml
new file mode 100644
index 000000000000..6356f38aa023
--- /dev/null
+++ b/app-crypt/sgeps/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>flameeyes@gentoo.org</email>
+ </maintainer>
+ <maintainer>
+ <email>enrico.tagliavini@gmail.com</email>
+ <name>Enrico Tagliavini</name>
+ <description>Proxied co-maintainer</description>
+ </maintainer>
+</pkgmetadata>
diff --git a/app-crypt/sgeps/sgeps-0_pre15.ebuild b/app-crypt/sgeps/sgeps-0_pre15.ebuild
new file mode 100644
index 000000000000..664bdf8f8317
--- /dev/null
+++ b/app-crypt/sgeps/sgeps-0_pre15.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="simple GnuPG-encrypted password store written in perl"
+HOMEPAGE="http://roland.entierement.nu/blog/2010/01/22/simple-gnupg-encrypted-password-store.html"
+SRC_URI="http://dev.gentoo.org/~flameeyes/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="zsh-completion"
+
+RDEPEND="app-crypt/gnupg
+ dev-lang/perl
+ virtual/perl-Storable
+ virtual/perl-File-Temp
+ virtual/perl-Getopt-Long
+ dev-perl/Config-Simple
+ zsh-completion? ( app-shells/zsh )"
+DEPEND=""
+
+S="${WORKDIR}"
+
+src_install() {
+ dobin sgeps pwsafe2sgeps
+ if use zsh-completion ; then
+ insinto /usr/share/zsh/site-functions
+ newins zsh-completion _sgeps
+ fi
+}
+
+pkg_postinst() {
+ elog "To make use of sgeps, remember to create a configuration file as"
+ elog " ~/.config/sgeps.conf with these values:"
+ elog ""
+ elog "store = ~/somewhere/safe"
+ elog "keyid = 012345678"
+ elog ""
+ elog "If you want to use the --copy options you should install x11-misc/xclip"
+}
diff --git a/app-crypt/shash/Manifest b/app-crypt/shash/Manifest
new file mode 100644
index 000000000000..f84b4703b7a3
--- /dev/null
+++ b/app-crypt/shash/Manifest
@@ -0,0 +1 @@
+DIST shash-0.2.6.tar.gz 105641 SHA256 6abf13eb1c3b4b6ef0f07e5425d10ed2abaad1d08c327647feb3506e76ced9dc SHA512 340a59bd16b3e5069a076b56f8fe24d2306a6ddd5e6ad564c5e17a992d8e279a7109ba39bd5caa8438a0e85b4f94cb0878228f7aefe38221ff6efa80df64086b WHIRLPOOL 8b809f5fddc98def54907fee8af424937c747f341dd0eaa6fd0c1057858c4dce7d117dfbc729cdd951c53e68a363d3339e9db4e2de1677620bbb9a94a810e8a5
diff --git a/app-crypt/shash/files/0.2.6-manpage-fixes.patch b/app-crypt/shash/files/0.2.6-manpage-fixes.patch
new file mode 100644
index 000000000000..0376e15c3572
--- /dev/null
+++ b/app-crypt/shash/files/0.2.6-manpage-fixes.patch
@@ -0,0 +1,30 @@
+diff -pruN shash-0.2.6/doc/shash.1 shash-0.2.6-r1/doc/shash.1
+--- shash-0.2.6/doc/shash.1 2004-09-18 09:51:04.004647112 +0100
++++ shash-0.2.6-r1/doc/shash.1 2004-09-18 09:57:26.062565480 +0100
+@@ -31,7 +31,7 @@ Because of this shash also supports HMAC
+ a mechanism for message authentication using cryptographic hash functions.
+ So shash can use a key with a hash algorithm to produce hashes that can only
+ be verified with the key. This way you can securely check (i.e. you are sure
+-that nobody can modify the mac, without beeing detected)
++that nobody can modify the mac, without being detected)
+ if files in a filesystem were altered.
+
+ If the list of files and digests, that shash produces, is stored as
+@@ -72,7 +72,7 @@ Suppress some not critical warnings.
+ .TP
+ .B \-b
+ Use binary mode. In unix environment, only difference between this and
+-the normal mode is an asterix preceding the filename in the output.
++the normal mode is an asterisk preceding the filename in the output.
+ .TP
+ .B \-c
+ Check the checksum of all files listed in
+@@ -94,7 +94,7 @@ Enter the keyword via the command line.
+ keyword instead of prompting for it. Keep in mind that someone
+ may see the command you are executing and so your key.
+ .TP
+-.B \-c --config FILE
++.B \-i --config FILE
+ Use the specified configuration file. The default is .shashrc
+ in your home directory. The format of the configuration
+ file is the same as the parameters. An example file is:
diff --git a/app-crypt/shash/files/shash-0.2.6-binary-files.patch b/app-crypt/shash/files/shash-0.2.6-binary-files.patch
new file mode 100644
index 000000000000..1eb0cba17613
--- /dev/null
+++ b/app-crypt/shash/files/shash-0.2.6-binary-files.patch
@@ -0,0 +1,34 @@
+--- shash-0.2.6/src/shash.c
++++ shash-0.2.6/src/shash.c
+@@ -631,11 +631,11 @@
+
+ if (nosalt == FALSE && hmac == 1) {
+ if (sscanf
+- (linebuf, "%s %s %s\n", hexbuffer, buffer,
+- buffer2) < 2) {
++ (linebuf, "%s %s *%s\n", hexbuffer, buffer,
++ buffer2) != 3) {
+ if (sscanf
+- (linebuf, "%s %s *%s\n", hexbuffer,
+- buffer, buffer2) < 2)
++ (linebuf, "%s %s %s\n", hexbuffer,
++ buffer, buffer2) != 3)
+ continue;
+ }
+
+@@ -648,11 +648,11 @@
+ key = pass2key(algorithm, keymode_buffer, &keylen, password, plen);
+
+ } else {
+- if (sscanf(linebuf, "%s %s\n", buffer, buffer2) ==
+- 0) {
++ if (sscanf(linebuf, "%s *%s\n", buffer, buffer2) !=
++ 2) {
+ if (sscanf
+- (linebuf, "%s *%s\n", buffer,
+- buffer2) == 0)
++ (linebuf, "%s %s\n", buffer,
++ buffer2) != 2)
+ continue;
+ }
+
diff --git a/app-crypt/shash/files/shash.bash-completion b/app-crypt/shash/files/shash.bash-completion
new file mode 100644
index 000000000000..ccd15b96ba97
--- /dev/null
+++ b/app-crypt/shash/files/shash.bash-completion
@@ -0,0 +1,39 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+#
+# shash(1) completion.
+
+_shash() {
+ local cur prev
+
+ COMPREPLY=()
+ cur=${COMP_WORDS[COMP_CWORD]}
+ prev=${COMP_WORDS[COMP_CWORD-1]}
+
+ case "${prev}" in
+ -c|--config)
+ _filedir
+ return 0 ;;
+ -o|--keymode)
+ COMPREPLY=( $( compgen -W "$( shash --listkeygen | tail -n +2 )" \
+ -- ${cur} ) )
+ return ;;
+ -a|--algorithm)
+ COMPREPLY=( $( compgen -W "$( shash --list )" \
+ -- ${cur} ) )
+ return ;;
+ *)
+ ;;
+ esac
+
+ COMPREPLY=( $( compgen -W '-V -q -m -d -c -b -t -o -i -a -l -k -h -v \
+ -L \
+ --verbose --quiet --nosalt --time --hmac --doublecheck \
+ --check --binary --text --keymode --config --algorithm \
+ --list --key --listkeygen --help --version --license' \
+ -- ${cur} ) )
+ _filedir
+ return 0
+}
+complete -F _shash ${filenames} shash
diff --git a/app-crypt/shash/metadata.xml b/app-crypt/shash/metadata.xml
new file mode 100644
index 000000000000..c6d43950d7ad
--- /dev/null
+++ b/app-crypt/shash/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>
+ <email>swegener@gentoo.org</email>
+ <name>Sven Wegener</name>
+ <description>primary maintainer</description>
+ </maintainer>
+ <longdescription>shash is a command-line interface for libmhash and is used to generate or check digests or MACs of files.</longdescription>
+</pkgmetadata>
diff --git a/app-crypt/shash/shash-0.2.6-r2.ebuild b/app-crypt/shash/shash-0.2.6-r2.ebuild
new file mode 100644
index 000000000000..20ce31b9087a
--- /dev/null
+++ b/app-crypt/shash/shash-0.2.6-r2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit bash-completion-r1 eutils
+
+DESCRIPTION="Generate or check digests or MACs of files"
+HOMEPAGE="http://mcrypt.hellug.gr/shash/"
+SRC_URI="ftp://mcrypt.hellug.gr/pub/mcrypt/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="static"
+
+DEPEND=">=app-crypt/mhash-0.8.18-r1"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PV}-manpage-fixes.patch
+ epatch "${FILESDIR}"/${P}-binary-files.patch
+}
+
+src_configure() {
+ econf $(use_enable static static-link)
+}
+
+src_install() {
+ emake install DESTDIR="${D}"
+ dodoc AUTHORS ChangeLog INSTALL NEWS doc/sample.shashrc doc/FORMAT
+ newbashcomp "${FILESDIR}"/shash.bash-completion ${PN}
+}
diff --git a/app-crypt/shishi/Manifest b/app-crypt/shishi/Manifest
new file mode 100644
index 000000000000..5adc5265bc68
--- /dev/null
+++ b/app-crypt/shishi/Manifest
@@ -0,0 +1,2 @@
+DIST shishi-1.0.1.tar.gz 4999488 SHA256 9d7e4738df21116422585b347ad1c985d2bafd32c8665b4c5563617573e2868d SHA512 cb24baae75072e7ee20946d1d15a16c8a77e44f110f88e5f17e64d5e0110c0a00f18e8651b6f162a6e13c1a39b248ca03849c3d8ae4f8d7512dbc77f54f8d98c WHIRLPOOL 45b92a57b8b3a06a7a84160bacdc370883d8a9417f4f9b6feef36e5d6654d8db79695623265cfae6982a60679a3041741a3cbd4dafa4c75b91aebc7c08dd5e1c
+DIST shishi-1.0.2.tar.gz 4917167 SHA256 0d9c8113feb22ee574187413c564140e3fa8c67fa4601fb073aec9cbc471580c SHA512 4f39b8d8cb5fbb9f2cedb55eb69620b0bc5d65a7859152db905aeafec7f2b93af459d427d06eb40fbd2870b18eb25e52c52ab0c0a265654f9ab2c3c0f7b98bab WHIRLPOOL bc96b441b37c53619acd9e5da71d0a35cbe39ca3a60fe259eba478cb7616b41fce2e663f6ce636bdccd5df93c534a3016b97540249baa13e851bb0af350b8bed
diff --git a/app-crypt/shishi/files/shishi-1.0.2_automake-1.12.patch b/app-crypt/shishi/files/shishi-1.0.2_automake-1.12.patch
new file mode 100644
index 000000000000..a1593c6a57ae
--- /dev/null
+++ b/app-crypt/shishi/files/shishi-1.0.2_automake-1.12.patch
@@ -0,0 +1,24 @@
+bug #424095
+--- a/configure.ac 2012-03-12 11:18:21.000000000 -0700
++++ b/configure.ac 2012-07-08 15:43:18.597050382 -0700
+@@ -43,6 +43,9 @@
+ AC_HEADER_STDC
+ AC_CHECK_HEADERS(termios.h pwd.h syslog.h resolv.h arpa/nameser.h netinet/in6.h)
+
++# Defined for >= automake 1.12
++m4_ifdef([AM_PROG_AR],[AM_PROG_AR])
++
+ # Used when creating libshishi-XX.def.
+ SOVERSION=`expr ${LT_CURRENT} - ${LT_AGE}`
+ AC_SUBST(SOVERSION)
+--- a/m4/po.m4 2012-03-12 11:18:53.000000000 -0700
++++ b/m4/po.m4 2012-07-08 14:59:00.247043443 -0700
+@@ -24,7 +24,7 @@
+ [
+ AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+ AC_REQUIRE([AC_PROG_INSTALL])dnl
+- AC_REQUIRE([AM_PROG_MKDIR_P])dnl defined by automake
++ AC_REQUIRE([AC_PROG_MKDIR_P])dnl defined by automake
+ AC_REQUIRE([AM_NLS])dnl
+
+ dnl Release version of the gettext macros. This is used to ensure that
diff --git a/app-crypt/shishi/files/shishi_automake-1.12.patch b/app-crypt/shishi/files/shishi_automake-1.12.patch
new file mode 100644
index 000000000000..484906d3c865
--- /dev/null
+++ b/app-crypt/shishi/files/shishi_automake-1.12.patch
@@ -0,0 +1,35 @@
+bug #424095
+diff -urN shishi-1.0.1-orig/configure.ac shishi-1.0.1/configure.ac
+--- shishi-1.0.1-orig/configure.ac 2012-03-12 11:18:21.000000000 -0700
++++ shishi-1.0.1/configure.ac 2012-07-08 15:43:18.597050382 -0700
+@@ -24,7 +24,7 @@
+ AC_CONFIG_AUX_DIR([build-aux])
+ AC_CONFIG_MACRO_DIR([m4])
+ AC_CONFIG_HEADERS(config.h)
+-AM_INIT_AUTOMAKE([1.10 -Wall -Werror -Wno-override])
++AM_INIT_AUTOMAKE([1.10 -Wall -Wno-override])
+ AM_SILENT_RULES([yes])
+
+ # Library code modified: REVISION++
+@@ -43,6 +43,9 @@
+ AC_HEADER_STDC
+ AC_CHECK_HEADERS(termios.h pwd.h syslog.h resolv.h arpa/nameser.h netinet/in6.h)
+
++# Defined for >= automake 1.12
++m4_ifdef([AM_PROG_AR],[AM_PROG_AR])
++
+ # Used when creating libshishi-XX.def.
+ SOVERSION=`expr ${LT_CURRENT} - ${LT_AGE}`
+ AC_SUBST(SOVERSION)
+diff -urN shishi-1.0.1-orig/m4/po.m4 shishi-1.0.1/m4/po.m4
+--- shishi-1.0.1-orig/m4/po.m4 2012-03-12 11:18:53.000000000 -0700
++++ shishi-1.0.1/m4/po.m4 2012-07-08 14:59:00.247043443 -0700
+@@ -24,7 +24,7 @@
+ [
+ AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+ AC_REQUIRE([AC_PROG_INSTALL])dnl
+- AC_REQUIRE([AM_PROG_MKDIR_P])dnl defined by automake
++ AC_REQUIRE([AC_PROG_MKDIR_P])dnl defined by automake
+ AC_REQUIRE([AM_NLS])dnl
+
+ dnl Release version of the gettext macros. This is used to ensure that
diff --git a/app-crypt/shishi/files/shishi_gets.patch b/app-crypt/shishi/files/shishi_gets.patch
new file mode 100644
index 000000000000..12137204f455
--- /dev/null
+++ b/app-crypt/shishi/files/shishi_gets.patch
@@ -0,0 +1,20 @@
+diff --git a/gl/stdio.in.h b/gl/stdio.in.h
+index 06d9780..fa04a10 100644
+--- a/gl/stdio.in.h
++++ b/gl/stdio.in.h
+@@ -713,10 +713,13 @@ _GL_CXXALIAS_SYS (gets, char *, (char *s));
+ # endif
+ _GL_CXXALIASWARN (gets);
+ /* It is very rare that the developer ever has full control of stdin,
+- so any use of gets warrants an unconditional warning. Assume it is
+- always declared, since it is required by C89. */
++ so any use of gets warrants an unconditional warning; besides C11
++ removed it. */
++#ifdef gets
++#undef gets
+ _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
+ #endif
++#endif
+
+
+ #if @GNULIB_OBSTACK_PRINTF@ || @GNULIB_OBSTACK_PRINTF_POSIX@
diff --git a/app-crypt/shishi/files/shishi_resolv.patch b/app-crypt/shishi/files/shishi_resolv.patch
new file mode 100644
index 000000000000..6eb6beaa92ff
--- /dev/null
+++ b/app-crypt/shishi/files/shishi_resolv.patch
@@ -0,0 +1,31 @@
+--- configure.ac 2012-03-12 20:18:21.000000000 +0200
++++ configure.ac 2012-03-14 22:03:15.854332138 +0200
+@@ -82,7 +82,27 @@
+
+ # Checks for library functions.
+ AC_CHECK_FUNCS(signal select ngettext gethostbyname getpwnam getuid)
+-AC_CHECK_LIB(resolv, res_query,, AC_MSG_WARN([[no libresolv, SRV RRs not used]]))
++
++# libresolv provides only __res_query on some architectures
++# so we cannot just use AC_CHECK_LIB
++_save_LIBS="$LIBS"
++LIBS="$LIBS -lresolv"
++AC_MSG_CHECKING(for res_query in -lresolv)
++AC_LINK_IFELSE([
++#include <resolv.h>
++int main()
++{
++ res_query (0, 0, 0, 0, 0);
++ return 0;
++}],
++[_res_query_in_resolv=yes],
++[_res_query_in_resolv=no])
++AC_MSG_RESULT([$_res_query_in_resolv])
++if test "x$_res_query_in_resolv" = "xno"; then
++ LIBS="$_save_LIBS"
++ AC_MSG_WARN([[no libresolv, SRV RRs not used]])
++fi
++
+ AC_SEARCH_LIBS(socket, socket)
+ AC_SEARCH_LIBS(gethostbyname, nsl)
+
diff --git a/app-crypt/shishi/files/shishid.confd b/app-crypt/shishi/files/shishid.confd
new file mode 100644
index 000000000000..9f0c2dad9841
--- /dev/null
+++ b/app-crypt/shishi/files/shishid.confd
@@ -0,0 +1,6 @@
+# /etc/conf.d/shishid
+
+# Options to pass to the Shishi KDC server. Please see shishid man page for details.
+#
+# OPTIONS="--no-tls"
+
diff --git a/app-crypt/shishi/files/shishid.init b/app-crypt/shishi/files/shishid.init
new file mode 100644
index 000000000000..ae5f9434d3ad
--- /dev/null
+++ b/app-crypt/shishi/files/shishid.init
@@ -0,0 +1,25 @@
+#!/sbin/runscript
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+daemon="Shishi KDC"
+exec="/usr/sbin/shishid"
+pid_file="/var/run/shishid.pid"
+
+depend() {
+ need net
+}
+
+start() {
+ ebegin "Starting ${daemon}"
+ start-stop-daemon --start --quiet --background -m --pidfile ${pid_file} \
+ --exec ${exec} -- ${OPTIONS} 1>&2
+ eend $? "Error starting $daemon"
+}
+
+stop() {
+ ebegin "Stopping $daemon"
+ start-stop-daemon --stop --quiet --pidfile ${pid_file} --exec ${exec} 1>&2
+ eend $? "Error stopping $daemon"
+}
diff --git a/app-crypt/shishi/metadata.xml b/app-crypt/shishi/metadata.xml
new file mode 100644
index 000000000000..19b20b8987c3
--- /dev/null
+++ b/app-crypt/shishi/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>kerberos</herd>
+<longdescription lang="en">GNU Shishi, a free implementation of the Kerberos 5 network security system</longdescription>
+<use>
+ <flag name="des">Enable DES related encryption/checksum types.</flag>
+ <flag name="3des">Enable 3DES encryption/checksum type.</flag>
+ <flag name="aes">Enable AES encryption/checksum types.</flag>
+ <flag name="md">Enable unkeyed MD4/MD5 checksum types.</flag>
+ <flag name="null">Enable dummy NULL encryption/checksum type.</flag>
+ <flag name="arcfour">Enable ARCFOUR encryption/checksum type.</flag>
+</use>
+</pkgmetadata>
+
diff --git a/app-crypt/shishi/shishi-1.0.1-r1.ebuild b/app-crypt/shishi/shishi-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..95fb4bd1284b
--- /dev/null
+++ b/app-crypt/shishi/shishi-1.0.1-r1.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit multilib autotools eutils
+
+DESCRIPTION="A free implementation of the Kerberos 5 network security system"
+HOMEPAGE="https://www.gnu.org/software/shishi/"
+SRC_URI="mirror://gnu/shishi/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnutls idn ipv6 nls pam +des +3des +aes +md +null +arcfour static-libs"
+
+DEPEND="gnutls? ( net-libs/gnutls )
+ idn? ( net-dns/libidn )
+ dev-libs/libtasn1
+ dev-libs/libgcrypt:0
+ dev-libs/libgpg-error
+ virtual/libiconv
+ virtual/libintl"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # fix finding libresolv.so
+ epatch "${FILESDIR}/${PN}_resolv.patch"
+ # fix building with automake-1.12 bug #424095
+ epatch "${FILESDIR}/${PN}_automake-1.12.patch"
+ # fix building with glibc-2.16.0
+ epatch "${FILESDIR}/${PN}_gets.patch"
+
+ # don't create a new database
+ sed -i -e '/install-data-hook/s/^/#/' Makefile.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable pam) \
+ $(use_enable nls) \
+ $(use_enable ipv6) \
+ $(use_with idn libidn-prefix) \
+ $(use_enable gnutls starttls) \
+ $(use_enable des) \
+ $(use_enable 3des) \
+ $(use_enable aes) \
+ $(use_enable md) \
+ $(use_enable null) \
+ $(use_enable arcfour) \
+ $(use_enable static-libs static) \
+ --with-system-asn1 \
+ --with-libgcrypt \
+ --with-html-dir=/usr/share/doc/${P} \
+ --with-db-dir=/var/shishi \
+ --with-pam-dir=/$(get_libdir)/security \
+ --disable-rpath \
+ --with-packager="Gentoo" \
+ --with-packager-bug-reports="https://bugs.gentoo.org/"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ keepdir /var/shishi
+ fperms 0700 /var/shishi
+ echo "db file /var/shishi" >> "${D}/etc/shishi/shisa.conf" || die
+
+ newinitd "${FILESDIR}/shishid.init" shishid
+ newconfd "${FILESDIR}/shishid.confd" shishid
+
+ dodoc AUTHORS ChangeLog INSTALL NEWS README THANKS
+ doman doc/man/* doc/*.1
+ dohtml doc/reference/html/*
+ doinfo doc/*.info*
+
+ rm -f "${D}/$(get_libdir)/security/pam_shishi.la"
+ use static-libs || find "${D}"/usr/lib* -name '*.la' -delete
+}
diff --git a/app-crypt/shishi/shishi-1.0.1-r2.ebuild b/app-crypt/shishi/shishi-1.0.1-r2.ebuild
new file mode 100644
index 000000000000..390d48d987d4
--- /dev/null
+++ b/app-crypt/shishi/shishi-1.0.1-r2.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils flag-o-matic multilib
+
+DESCRIPTION="A free implementation of the Kerberos 5 network security system"
+HOMEPAGE="https://www.gnu.org/software/shishi/"
+SRC_URI="mirror://gnu/shishi/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnutls idn ipv6 nls pam +des +3des +aes +md +null +arcfour static-libs"
+
+DEPEND="gnutls? ( net-libs/gnutls )
+ idn? ( net-dns/libidn )
+ dev-libs/libtasn1
+ dev-libs/libgcrypt:0
+ dev-libs/libgpg-error
+ virtual/libiconv
+ virtual/libintl"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # fix finding libresolv.so
+ epatch "${FILESDIR}/${PN}_resolv.patch"
+ # fix building with automake-1.12 bug #424095
+ epatch "${FILESDIR}/${PN}_automake-1.12.patch"
+ # fix building with glibc-2.16.0
+ epatch "${FILESDIR}/${PN}_gets.patch"
+
+ # don't create a new database
+ sed -i -e '/install-data-hook/s/^/#/' Makefile.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ append-cppflags -DMAX_ERROR_DESCRIPTION_SIZE=ASN1_MAX_ERROR_DESCRIPTION_SIZE
+ econf \
+ $(use_enable pam) \
+ $(use_enable nls) \
+ $(use_enable ipv6) \
+ $(use_with idn libidn-prefix) \
+ $(use_enable gnutls starttls) \
+ $(use_enable des) \
+ $(use_enable 3des) \
+ $(use_enable aes) \
+ $(use_enable md) \
+ $(use_enable null) \
+ $(use_enable arcfour) \
+ $(use_enable static-libs static) \
+ --with-system-asn1 \
+ --with-libgcrypt \
+ --with-html-dir=/usr/share/doc/${P} \
+ --with-db-dir=/var/shishi \
+ --with-pam-dir=/$(get_libdir)/security \
+ --disable-rpath \
+ --with-packager="Gentoo" \
+ --with-packager-bug-reports="https://bugs.gentoo.org/"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ keepdir /var/shishi
+ fperms 0700 /var/shishi
+ echo "db file /var/shishi" >> "${D}/etc/shishi/shisa.conf" || die
+
+ newinitd "${FILESDIR}/shishid.init" shishid
+ newconfd "${FILESDIR}/shishid.confd" shishid
+
+ dodoc AUTHORS ChangeLog INSTALL NEWS README THANKS
+ doman doc/man/* doc/*.1
+ dohtml doc/reference/html/*
+ doinfo doc/*.info*
+
+ rm -f "${D}/$(get_libdir)/security/pam_shishi.la"
+ use static-libs || find "${D}"/usr/lib* -name '*.la' -delete
+}
diff --git a/app-crypt/shishi/shishi-1.0.1.ebuild b/app-crypt/shishi/shishi-1.0.1.ebuild
new file mode 100644
index 000000000000..a0c9d0e966eb
--- /dev/null
+++ b/app-crypt/shishi/shishi-1.0.1.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit multilib autotools eutils
+
+DESCRIPTION="A free implementation of the Kerberos 5 network security system"
+HOMEPAGE="https://www.gnu.org/software/shishi/"
+SRC_URI="mirror://gnu/shishi/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnutls idn ipv6 nls pam +des +3des +aes +md +null +arcfour static-libs"
+
+DEPEND="gnutls? ( net-libs/gnutls )
+ idn? ( net-dns/libidn )
+ dev-libs/libtasn1
+ dev-libs/libgcrypt:0
+ dev-libs/libgpg-error
+ virtual/libiconv
+ virtual/libintl"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # fix finding libresolv.so
+ epatch "${FILESDIR}/${PN}_resolv.patch"
+ # fix building with automake-1.12 bug #424095
+ epatch "${FILESDIR}/${PN}_automake-1.12.patch"
+
+ # don't create a new database
+ sed -i -e '/install-data-hook/s/^/#/' Makefile.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable pam) \
+ $(use_enable nls) \
+ $(use_enable ipv6) \
+ $(use_with idn libidn-prefix) \
+ $(use_enable gnutls starttls) \
+ $(use_enable des) \
+ $(use_enable 3des) \
+ $(use_enable aes) \
+ $(use_enable md) \
+ $(use_enable null) \
+ $(use_enable arcfour) \
+ $(use_enable static-libs static) \
+ --with-system-asn1 \
+ --with-libgcrypt \
+ --with-html-dir=/usr/share/doc/${P} \
+ --with-db-dir=/var/shishi \
+ --with-pam-dir=/$(get_libdir)/security \
+ --disable-rpath \
+ --with-packager="Gentoo" \
+ --with-packager-bug-reports="https://bugs.gentoo.org/"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ keepdir /var/shishi
+ fperms 0700 /var/shishi
+ echo "db file /var/shishi" >> "${D}/etc/shishi/shisa.conf" || die
+
+ newinitd "${FILESDIR}/shishid.init" shishid
+ newconfd "${FILESDIR}/shishid.confd" shishid
+
+ dodoc AUTHORS ChangeLog INSTALL NEWS README THANKS
+ doman doc/man/* doc/*.1
+ dohtml doc/reference/html/*
+ doinfo doc/*.info*
+
+ rm -f "${D}/$(get_libdir)/security/pam_shishi.la"
+ use static-libs || find "${D}"/usr/lib* -name '*.la' -delete
+}
diff --git a/app-crypt/shishi/shishi-1.0.2.ebuild b/app-crypt/shishi/shishi-1.0.2.ebuild
new file mode 100644
index 000000000000..a5074ac2618d
--- /dev/null
+++ b/app-crypt/shishi/shishi-1.0.2.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils flag-o-matic multilib
+
+DESCRIPTION="A free implementation of the Kerberos 5 network security system"
+HOMEPAGE="https://www.gnu.org/software/shishi/"
+SRC_URI="mirror://gnu/shishi/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gnutls idn ipv6 nls pam +des +3des +aes +md +null +arcfour static-libs"
+
+DEPEND="gnutls? ( net-libs/gnutls )
+ idn? ( net-dns/libidn )
+ dev-libs/libtasn1
+ dev-libs/libgcrypt:0
+ dev-libs/libgpg-error
+ virtual/libiconv
+ virtual/libintl"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # fix building with automake-1.12 bug #424095
+ epatch "${FILESDIR}/${P}_automake-1.12.patch"
+
+ # don't create a new database
+ sed -i -e '/install-data-hook/s/^/#/' Makefile.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ $(use_enable pam) \
+ $(use_enable nls) \
+ $(use_enable ipv6) \
+ $(use_with idn libidn-prefix) \
+ $(use_enable gnutls starttls) \
+ $(use_enable des) \
+ $(use_enable 3des) \
+ $(use_enable aes) \
+ $(use_enable md) \
+ $(use_enable null) \
+ $(use_enable arcfour) \
+ $(use_enable static-libs static) \
+ --with-libgcrypt \
+ --with-html-dir=/usr/share/doc/${P} \
+ --with-db-dir=/var/shishi \
+ --with-pam-dir=/$(get_libdir)/security \
+ --disable-rpath \
+ --with-packager="Gentoo" \
+ --with-packager-bug-reports="https://bugs.gentoo.org/"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ keepdir /var/shishi
+ fperms 0700 /var/shishi
+ echo "db file /var/shishi" >> "${D}/etc/shishi/shisa.conf" || die
+
+ newinitd "${FILESDIR}/shishid.init" shishid
+ newconfd "${FILESDIR}/shishid.confd" shishid
+
+ dodoc AUTHORS ChangeLog INSTALL NEWS README THANKS
+ doman doc/man/* doc/*.1
+ dohtml doc/reference/html/*
+ doinfo doc/*.info*
+
+ rm -f "${D}/$(get_libdir)/security/pam_shishi.la"
+ use static-libs || find "${D}"/usr/lib* -name '*.la' -delete
+}
diff --git a/app-crypt/sign/Manifest b/app-crypt/sign/Manifest
new file mode 100644
index 000000000000..d01fd2ae5598
--- /dev/null
+++ b/app-crypt/sign/Manifest
@@ -0,0 +1 @@
+DIST sign-1.0.7.tar.gz 28535 SHA256 c5f005eff29880807af37a128724f064cccb166fc9f49acab5f1403c9b72d4b9 SHA512 9adb9e520da654e7196451e20501be8e1b84ee750a26344cb7e1816e56e4e8b88773a76a2707a6428faa7828658807eaaef2073b6940e212435ed915881885c0 WHIRLPOOL fdbd9530110ebe589f02818e62f455a56ff8a5473bf3dcf0ab78ec7341ab42e0e74701f65105cf3a38db094d637460de46971ff7096f9f5aa3084d922a7392bc
diff --git a/app-crypt/sign/files/1.0.7-as-needed.patch b/app-crypt/sign/files/1.0.7-as-needed.patch
new file mode 100644
index 000000000000..56574d7131d7
--- /dev/null
+++ b/app-crypt/sign/files/1.0.7-as-needed.patch
@@ -0,0 +1,10 @@
+diff -Nur sign-1.0.7.orig/src/Makefile sign-1.0.7/src/Makefile
+--- sign-1.0.7.orig/src/Makefile 2004-08-07 07:15:00.000000000 +0000
++++ sign-1.0.7/src/Makefile 2006-09-16 17:21:12.400977608 +0000
+@@ -1,5 +1,5 @@
+ CFLAGS += -Wall -DNDEBUG -g
+-LDFLAGS += -lcrypto
++LDLIBS += -lcrypto
+
+ OBJS = buf.o die.o msg.o digest.o uue.o pki.o str.o system-nix.o \
+ system-nix-readpass.o util.o
diff --git a/app-crypt/sign/files/1.0.7-openssl-0.9.8.patch b/app-crypt/sign/files/1.0.7-openssl-0.9.8.patch
new file mode 100644
index 000000000000..179efbe77ef5
--- /dev/null
+++ b/app-crypt/sign/files/1.0.7-openssl-0.9.8.patch
@@ -0,0 +1,12 @@
+diff -Nur sign-1.0.7.orig/src/pki.c sign-1.0.7/src/pki.c
+--- sign-1.0.7.orig/src/pki.c 2004-08-04 04:10:35.000000000 +0000
++++ sign-1.0.7/src/pki.c 2006-09-16 17:17:34.335535125 +0000
+@@ -286,7 +286,7 @@
+
+ /* if it's not a decryption problem - bail out */
+ if (ERR_get_error() != ERR_PACK(ERR_LIB_EVP,
+- EVP_F_EVP_DECRYPTFINAL,
++ EVP_F_EVP_DECRYPTFINAL_EX,
+ EVP_R_BAD_DECRYPT))
+ goto cleanup;
+
diff --git a/app-crypt/sign/metadata.xml b/app-crypt/sign/metadata.xml
new file mode 100644
index 000000000000..22b9e39501a4
--- /dev/null
+++ b/app-crypt/sign/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>
+ <email>alicef@gentoo.org</email>
+ <name>Alice Ferrazzi</name>
+ <description>Assign bugs to me.</description>
+</maintainer>
+<maintainer>
+ <email>mrueg@gentoo.org</email>
+ <name>Manuel Rüger</name>
+ <description>CC him on bugs.</description>
+</maintainer>
+<longdescription>
+sign is a file signing and signature verification utility. It's main purpose is
+to be a simple and convenient extension to a tar/gz/bzip2 line of tools to check
+file integrity and authenticity. It's small and simple, it does just one thing
+and hopefully does it well.
+</longdescription>
+</pkgmetadata>
diff --git a/app-crypt/sign/sign-1.0.7.ebuild b/app-crypt/sign/sign-1.0.7.ebuild
new file mode 100644
index 000000000000..3277e9e9ba25
--- /dev/null
+++ b/app-crypt/sign/sign-1.0.7.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit toolchain-funcs eutils
+
+DESCRIPTION="File signing and signature verification utility"
+HOMEPAGE="http://swapped.cc/sign/"
+SRC_URI="http://swapped.cc/${PN}/files/${P}.tar.gz"
+
+LICENSE="BZIP2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+RDEPEND=">=dev-libs/openssl-0.9.8"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PV}-openssl-0.9.8.patch
+ epatch "${FILESDIR}"/${PV}-as-needed.patch
+ # remove -g from CFLAGS, it happens to break the build on ppc-macos
+ sed -i -e 's/-g//' src/Makefile || die
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ dobin ${PN}
+ doman man/${PN}.1
+ dodoc README
+ dosym ${PN} /usr/bin/un${PN}
+}
diff --git a/app-crypt/signing-party/Manifest b/app-crypt/signing-party/Manifest
new file mode 100644
index 000000000000..802e9059d877
--- /dev/null
+++ b/app-crypt/signing-party/Manifest
@@ -0,0 +1,3 @@
+DIST signing-party_1.1.11.orig.tar.gz 233965 SHA256 90073c2c05a36c0fdbf4ffc8b06269a3245121f0c408762ff03ffcb65a3e457a SHA512 788ee08e23b7ba45a5891638204452490be29ab9fd75e848ff3990bf1c1a052885eb41f0cca09bd299065c03d86ded07d7949e696587212b694c0ec2a2faf573 WHIRLPOOL 5af071c650c67febd6e1b7014694fcd4a2cd0408b614340da54ba575913bd96385385a6f57e609ccffd3e519f59b3eeb07a83b46fb039b938c5958d1eb35c88b
+DIST signing-party_1.1.4.orig.tar.gz 230259 SHA256 3d135437540ad1e5b3bb209ee90896a6b9153170eb0e4c93d018c1952fb80fa1 SHA512 935a192d8ce0057731b3422d217a90890dd97d9c84a3a46e3e4a2536f41e6752a44a86ba13db9b9a3e24a629dd6e78cb599a7999eeffea0a2b3b83b775dea36c WHIRLPOOL b5efdbd37d3277fd4fedc0938abcedada2c9a603bfdb1e93882e60abd698e4d4ef9535fde8d6c0c57818603e12507d911a150022fea5690b72eac66eecda803f
+DIST signing-party_2.0.orig.tar.gz 236249 SHA256 cc23e48b2f06dee7cbf7b80ee4dfbed69908cb4584d3d5fa29ed7b2f962ec16e SHA512 3ba3063deb9b994112e614d4b329d796def38ec498b3cb6f573c849b796f802aea162786f129f5b5a9bbc347f45c0c8a47e36e7b448f6e511bd912497edd1efe WHIRLPOOL ad6db7717de2194fbb1f91bd8a1d76111a09711cbf57f354d37ebfe2da7c7a5ac7b32ea24c22f43b87fb0e25b03be331673f8a3637af314813df8cc75165a591
diff --git a/app-crypt/signing-party/files/signing-party-makefile.diff b/app-crypt/signing-party/files/signing-party-makefile.diff
new file mode 100644
index 000000000000..905d4449d477
--- /dev/null
+++ b/app-crypt/signing-party/files/signing-party-makefile.diff
@@ -0,0 +1,18 @@
+--- gpgwrap/src/Makefile 2010-02-11 13:26:29.000000000 -0500
++++ gpgwrap/src/Makefile.new 2010-10-15 18:16:49.000000000 -0400
+@@ -1,5 +1,4 @@
+ CC=${DIET} gcc -s -Wall -O2 -fomit-frame-pointer
+-STRIP=strip -R .note -R .comment
+ RM=rm -f
+ TARGET=../bin/gpgwrap
+
+@@ -8,8 +7,7 @@
+ all: ${TARGET}
+
+ ${TARGET}: gpgwrap.c
+- ${CC} -o ${TARGET} gpgwrap.c
+- ${STRIP} ${TARGET} 2>/dev/null || true
++ ${CC} -o ${TARGET} ${CFLAGS} ${LDFLAGS} gpgwrap.c
+
+ clean:
+ ${RM} ${TARGET}
diff --git a/app-crypt/signing-party/metadata.xml b/app-crypt/signing-party/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/signing-party/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/signing-party/signing-party-1.1.11-r1.ebuild b/app-crypt/signing-party/signing-party-1.1.11-r1.ebuild
new file mode 100644
index 000000000000..726c77fef914
--- /dev/null
+++ b/app-crypt/signing-party/signing-party-1.1.11-r1.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils toolchain-funcs autotools
+
+DESCRIPTION="A collection of several tools related to OpenPGP"
+HOMEPAGE="http://pgp-tools.alioth.debian.org/"
+SRC_URI="mirror://debian/pool/main/s/signing-party/${PN}_${PV}.orig.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="dev-lang/perl"
+RDEPEND="${DEPEND}
+ >=app-crypt/gnupg-1.3.92
+ dev-perl/GnuPG-Interface
+ dev-perl/text-template
+ dev-perl/MIME-tools
+ net-mail/qprint
+ >=dev-perl/MailTools-1.62
+ dev-perl/Net-IDN-Encode
+ virtual/mailx
+ virtual/mta
+ || (
+ dev-perl/libintl-perl
+ dev-perl/Text-Iconv
+ app-text/recode
+ )"
+S=$WORKDIR
+
+src_prepare() {
+ # app-crypt/keylookup
+ rm -r keylookup || die
+ # media-gfx/springgraph
+ rm -r springgraph || die
+
+ cd keyanalyze/pgpring
+ mv configure.in configure.ac
+ sed -i 's/AM_C_PROTOTYPES//' configure.ac || die
+ eautoreconf
+ cd "${WORKDIR}"
+
+ find . -name Makefile | xargs sed -i -e 's/CFLAGS:=/CFLAGS=/' -e 's/CPPFLAGS:=/CPPFLAGS=/' -e 's/LDFLAGS:=/LDFLAGS=/'
+
+ sed -i "s:/usr/share/doc/signing-party/caff/caffrc.sample:${EPREFIX}/usr/share/doc/${P}/caff/caffrc.sample.gz:g" \
+ caff/caff || die
+ sed -i -e 's/automake[^ ]*/true/g' -e 's/autoconf[^ ]*/true/g' keyanalyze/Makefile || die
+ sed -i 's/make /\$(MAKE) /' keyanalyze/Makefile || die
+ sed -i "s|:/usr/share/signing-party|:${EPREFIX}/usr/share/signing-party|" \
+ gpgsigs/gpgsigs || die
+}
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ CPPFLAGS="${CPPFLAGS}" \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ STRIP=true
+}
+
+src_install() {
+ # Check Makefile when a new tool is introduced to this package.
+ # caff
+ dobin caff/caff caff/pgp-clean caff/pgp-fixkey
+ docinto caff
+ dodoc caff/{README*,THANKS,TODO,caffrc.sample}
+ # gpgdir
+ dobin gpgdir/gpgdir
+ docinto gpgdir
+ dodoc gpgdir/{VERSION,LICENSE,README,INSTALL,CREDITS,ChangeLog*}
+ # gpg-key2ps
+ dobin gpg-key2ps/gpg-key2ps
+ docinto gpg-key2ps
+ dodoc gpg-key2ps/README
+ # gpglist
+ dobin gpglist/gpglist
+ # gpg-mailkeys
+ dobin gpg-mailkeys/gpg-mailkeys
+ docinto gpg-mailkeys
+ dodoc gpg-mailkeys/{example.gpg-mailkeysrc,README}
+ # gpgparticipants
+ dobin gpgparticipants/gpgparticipants
+ # gpgwrap
+ dobin gpgwrap/bin/gpgwrap
+ docinto gpgwrap
+ dodoc gpgwrap/{LICENSE,NEWS,README}
+ doman gpgwrap/doc/gpgwrap.1
+ # gpgsigs
+ dobin gpgsigs/gpgsigs
+ insinto /usr/share/signing-party
+ # keyanalyze
+ # TODO: some of the scripts are intended for webpages, and not really
+ # packaging, so they are NOT installed yet.
+ newbin keyanalyze/pgpring/pgpring pgpring-keyanalyze
+ dobin keyanalyze/{keyanalyze,process_keys}
+ docinto keyanalyze
+ dodoc keyanalyze/{README,Changelog}
+ # See app-crypt/keylookup instead
+ #dobin keylookup/keylookup
+ #docinto keylookup
+ #dodoc keylookup/NEWS
+ # sig2dot
+ dobin sig2dot/sig2dot
+ dodoc sig2dot/README.sig2dot
+ # See media-gfx/springgraph instead
+ #dobin springgraph/springgraph
+ #dodoc springgraph/README.springgraph
+ # all other manpages, and the root doc
+ doman */*.1
+ dodoc README
+}
diff --git a/app-crypt/signing-party/signing-party-1.1.4.ebuild b/app-crypt/signing-party/signing-party-1.1.4.ebuild
new file mode 100644
index 000000000000..93ce10e9bc5a
--- /dev/null
+++ b/app-crypt/signing-party/signing-party-1.1.4.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A collection of several tools related to OpenPGP"
+HOMEPAGE="http://pgp-tools.alioth.debian.org/"
+SRC_URI="mirror://debian/pool/main/s/signing-party/${PN}_${PV}.orig.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~ppc-macos"
+IUSE=""
+
+DEPEND=""
+RDEPEND=">=app-crypt/gnupg-1.3.92
+ dev-perl/GnuPG-Interface
+ dev-perl/text-template
+ dev-perl/MIME-tools
+ net-mail/qprint
+ >=dev-perl/MailTools-1.62
+ virtual/mailx
+ virtual/mta
+ dev-lang/perl
+ || (
+ dev-perl/libintl-perl
+ dev-perl/Text-Iconv
+ app-text/recode
+ )"
+
+src_prepare() {
+ # app-crypt/keylookup
+ rm -fr keylookup
+ # media-gfx/springgraph
+ rm -fr springgraph
+
+ epatch "${FILESDIR}"/${PN}-makefile.diff
+
+ sed -i -e \
+ "s:/usr/share/doc/signing-party/caff/caffrc.sample:${EPREFIX}/usr/share/doc/${P}/caff/caffrc.sample.gz:g" \
+ caff/caff || die "Sed failed"
+ sed -i -e "s/make pgpring/\$(MAKE) pgpring/" keyanalyze/Makefile \
+ || die "Sed failed"
+ sed -i -e \
+ "s|:/usr/share/signing-party|:${EPREFIX}/usr/share/signing-party|" \
+ gpgsigs/gpgsigs || die "Sed failed"
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}"
+}
+
+src_install() {
+ # Check Makefile when a new tool is introduced to this package.
+ # caff
+ dobin caff/caff caff/pgp-clean caff/pgp-fixkey
+ docinto caff
+ dodoc caff/{README*,THANKS,TODO,caffrc.sample}
+ # gpgdir
+ dobin gpgdir/gpgdir
+ docinto gpgdir
+ dodoc gpgdir/{VERSION,LICENSE,README,INSTALL,CREDITS,ChangeLog*}
+ # gpg-key2ps
+ dobin gpg-key2ps/gpg-key2ps
+ docinto gpg-key2ps
+ dodoc gpg-key2ps/README
+ # gpglist
+ dobin gpglist/gpglist
+ # gpg-mailkeys
+ dobin gpg-mailkeys/gpg-mailkeys
+ docinto gpg-mailkeys
+ dodoc gpg-mailkeys/{example.gpg-mailkeysrc,README}
+ # gpgparticipants
+ dobin gpgparticipants/gpgparticipants
+ # gpgwrap
+ dobin gpgwrap/bin/gpgwrap
+ docinto gpgwrap
+ dodoc gpgwrap/{LICENSE,NEWS,README}
+ doman gpgwrap/doc/gpgwrap.1
+ # gpgsigs
+ dobin gpgsigs/gpgsigs
+ insinto /usr/share/signing-party
+ doins gpgsigs/gpgsigs-eps-helper
+ # keyanalyze
+ # TODO: some of the scripts are intended for webpages, and not really
+ # packaging, so they are NOT installed yet.
+ newbin keyanalyze/pgpring/pgpring pgpring-keyanalyze
+ dobin keyanalyze/{keyanalyze,process_keys}
+ docinto keyanalyze
+ dodoc keyanalyze/{README,Changelog}
+ # See app-crypt/keylookup instead
+ #dobin keylookup/keylookup
+ #docinto keylookup
+ #dodoc keylookup/NEWS
+ # sig2dot
+ dobin sig2dot/sig2dot
+ dodoc sig2dot/README.sig2dot
+ # See media-gfx/springgraph instead
+ #dobin springgraph/springgraph
+ #dodoc springgraph/README.springgraph
+ # all other manpages, and the root doc
+ doman */*.1
+ dodoc README
+}
diff --git a/app-crypt/signing-party/signing-party-2.0.ebuild b/app-crypt/signing-party/signing-party-2.0.ebuild
new file mode 100644
index 000000000000..25a78723ce59
--- /dev/null
+++ b/app-crypt/signing-party/signing-party-2.0.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils toolchain-funcs autotools
+
+DESCRIPTION="A collection of several tools related to OpenPGP"
+HOMEPAGE="http://pgp-tools.alioth.debian.org/"
+SRC_URI="mirror://debian/pool/main/s/signing-party/${PN}_${PV}.orig.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="dev-lang/perl"
+RDEPEND="${DEPEND}
+ >=app-crypt/gnupg-1.3.92
+ dev-perl/GnuPG-Interface
+ dev-perl/text-template
+ dev-perl/MIME-tools
+ net-mail/qprint
+ >=dev-perl/MailTools-1.62
+ dev-perl/Net-IDN-Encode
+ virtual/mailx
+ virtual/mta
+ || (
+ dev-perl/libintl-perl
+ dev-perl/Text-Iconv
+ app-text/recode
+ )"
+S=$WORKDIR
+
+src_prepare() {
+ # app-crypt/keylookup
+ rm -r keylookup || die
+ # media-gfx/springgraph
+ rm -r springgraph || die
+
+ cd keyanalyze/pgpring
+ mv configure.in configure.ac
+ sed -i 's/AM_C_PROTOTYPES//' configure.ac || die
+ eautoreconf
+ cd "${WORKDIR}"
+
+ find . -name Makefile | xargs sed -i -e 's/CFLAGS:=/CFLAGS=/' -e 's/CPPFLAGS:=/CPPFLAGS=/' -e 's/LDFLAGS:=/LDFLAGS=/'
+
+ sed -i "s:/usr/share/doc/signing-party/caff/caffrc.sample:${EPREFIX}/usr/share/doc/${P}/caff/caffrc.sample.gz:g" \
+ caff/caff || die
+ sed -i -e 's/automake[^ ]*/true/g' -e 's/autoconf[^ ]*/true/g' keyanalyze/Makefile || die
+ sed -i 's/make /\$(MAKE) /' keyanalyze/Makefile || die
+}
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ CPPFLAGS="${CPPFLAGS}" \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ STRIP=true
+}
+
+src_install() {
+ # Check Makefile when a new tool is introduced to this package.
+ # caff
+ dobin caff/caff caff/pgp-clean caff/pgp-fixkey
+ docinto caff
+ dodoc caff/{README*,THANKS,TODO,caffrc.sample}
+ # gpgdir
+ dobin gpgdir/gpgdir
+ docinto gpgdir
+ dodoc gpgdir/{VERSION,LICENSE,README,INSTALL,CREDITS,ChangeLog*}
+ # gpg-key2ps
+ dobin gpg-key2ps/gpg-key2ps
+ docinto gpg-key2ps
+ dodoc gpg-key2ps/README
+ # gpglist
+ dobin gpglist/gpglist
+ # gpg-mailkeys
+ dobin gpg-mailkeys/gpg-mailkeys
+ docinto gpg-mailkeys
+ dodoc gpg-mailkeys/{example.gpg-mailkeysrc,README}
+ # gpgparticipants
+ dobin gpgparticipants/gpgparticipants
+ # gpgwrap
+ dobin gpgwrap/bin/gpgwrap
+ docinto gpgwrap
+ dodoc gpgwrap/{LICENSE,NEWS,README}
+ doman gpgwrap/doc/gpgwrap.1
+ # gpgsigs
+ dobin gpgsigs/gpgsigs
+ insinto /usr/share/signing-party
+ # keyanalyze
+ # TODO: some of the scripts are intended for webpages, and not really
+ # packaging, so they are NOT installed yet.
+ newbin keyanalyze/pgpring/pgpring pgpring-keyanalyze
+ dobin keyanalyze/{keyanalyze,process_keys}
+ docinto keyanalyze
+ dodoc keyanalyze/{README,Changelog}
+ # See app-crypt/keylookup instead
+ #dobin keylookup/keylookup
+ #docinto keylookup
+ #dodoc keylookup/NEWS
+ # sig2dot
+ dobin sig2dot/sig2dot
+ dodoc sig2dot/README.sig2dot
+ # See media-gfx/springgraph instead
+ #dobin springgraph/springgraph
+ #dodoc springgraph/README.springgraph
+ # all other manpages, and the root doc
+ doman */*.1
+ dodoc README
+}
diff --git a/app-crypt/simple-tpm-pk11/Manifest b/app-crypt/simple-tpm-pk11/Manifest
new file mode 100644
index 000000000000..64a81b128352
--- /dev/null
+++ b/app-crypt/simple-tpm-pk11/Manifest
@@ -0,0 +1 @@
+DIST simple-tpm-pk11-0.03.tar.gz 25238 SHA256 0059064cb29900f0db8ce6163ef6aee17b2dcd095613c813dd53ad7f597bf141 SHA512 ed8a1d605bb21ae6abec426f32159882fef74ee7cbc7cdfa5b649a9947f10bad2b95354b2445f3f40dbd9d55803f9fc40fca02605d466e995083c7e9ca29bd8e WHIRLPOOL 1887c7d18a333319a99b28157f7d9b3bce83868154cd3496b8aec911d3d61b13678d0a0ceb143c65cb8addf625e68ccb4008d65af55f87b2bff27d0ac6dddd40
diff --git a/app-crypt/simple-tpm-pk11/metadata.xml b/app-crypt/simple-tpm-pk11/metadata.xml
new file mode 100644
index 000000000000..1ce8da6c4fe9
--- /dev/null
+++ b/app-crypt/simple-tpm-pk11/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>
+ <email>perfinion@gentoo.org</email>
+ </maintainer>
+ <longdescription>A simple library for using the TPM chip to secure SSH keys</longdescription>
+ <upstream>
+ <remote-id type="github">ThomasHabets/simple-tpm-pk11</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/simple-tpm-pk11/simple-tpm-pk11-0.03.ebuild b/app-crypt/simple-tpm-pk11/simple-tpm-pk11-0.03.ebuild
new file mode 100644
index 000000000000..f54a2558b7ea
--- /dev/null
+++ b/app-crypt/simple-tpm-pk11/simple-tpm-pk11-0.03.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils
+
+DESCRIPTION="Simple PKCS11 provider for TPM chips"
+HOMEPAGE="https://github.com/ThomasHabets/simple-tpm-pk11"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+if [[ ${PV} == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/ThomasHabets/${PN}.git"
+ inherit git-r3
+ KEYWORDS=""
+else
+ SRC_URI="https://github.com/ThomasHabets/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+IUSE=""
+
+DEPEND="app-crypt/tpm-tools[pkcs11]
+ dev-libs/opencryptoki[tpm]
+ app-crypt/trousers
+ dev-libs/openssl:0="
+RDEPEND="${DEPEND}
+ net-misc/openssh[-X509]"
+
+src_prepare() {
+ epatch_user
+ eautoreconf
+}
diff --git a/app-crypt/ssdeep/Manifest b/app-crypt/ssdeep/Manifest
new file mode 100644
index 000000000000..eecc1ec3e1f8
--- /dev/null
+++ b/app-crypt/ssdeep/Manifest
@@ -0,0 +1,4 @@
+DIST ssdeep-2.10.tar.gz 377718 SHA256 5b893b8059941476352fa1794c2839b2cc13bc2a09e2f2bb6dea4184217beddc SHA512 971eb681ac6e94fee4cf81c4036a652f196297874ed8e547523a6d104323a4fb08385c2aa9a735e9fe49048a822ab538adfaf3bfe2238cc7520bad83ac700753 WHIRLPOOL b05cab9f8d1d9405e2b6e20738aa0642e317dd8e06cd01b93bf6aa0a582badef99d6c3e392a37a174901631ec76192110e243c10fbccd21a85bdca02d908c469
+DIST ssdeep-2.11.1.tar.gz 376592 SHA256 a632ac30fca29ad5627e1bf5fae05d9a8873e6606314922479259531e0c19608 SHA512 383639f30ee4728898b33f82865188e5b66edcbac4f9f6c39a990154375d286cccfe6fe3112e555cefb9c1e5f7a3e5644e6d9edcde00ddf91d5ac3d59c07348f WHIRLPOOL f46e553a1fa4d0e4a37f6ca1945477c4fc7b2654672db12020ab156e60e190562d141d76fb4b55959c6dcf942ed7fc0e4ab9df62855ce9bcc7312c45fc3214ad
+DIST ssdeep-2.12.tar.gz 375241 SHA256 89049e87adfd16b51bd8601d01cf02251df7513c4e0eb12576541bcb2e1e4bde SHA512 caf423b816a98b89bbffc6e1c789deb7fd3675efd92543eba779c8a054c4ffa48b87a3fa4d5479f15e300b6ba532dc6f6bf636d3704847f31e3e01b63cc7267f WHIRLPOOL 1b8b64a7f499e8633c3308d0c49e9561fe8a6d97dce12404cdda688df630f682dbdc90b976b041e907d62bba9857fa0b6ac74bc2032b6fbe5d655fe852149328
+DIST ssdeep-2.13.tar.gz 380712 SHA256 6e4ca94457cb50ff3343d4dd585473817a461a55a666da1c5a74667924f0f8c5 SHA512 26473f1b8801398534c674d7fdd6e87cf4d7862ed91454bb22865f8b6cf885c777250d0d1cdf2c20a28fdf4961c3b21e505e82f37fb75486a9442902d96f5186 WHIRLPOOL 14d5665835f614aa01cfb4607bab5586b5d3469482aff47f88957b4308cff65de7beb01fb423caf071b98593ee72e19cb41f73222ba0ce43d6360865de055a02
diff --git a/app-crypt/ssdeep/files/ssdeep-2.10-shared.patch b/app-crypt/ssdeep/files/ssdeep-2.10-shared.patch
new file mode 100644
index 000000000000..06cfc55084e7
--- /dev/null
+++ b/app-crypt/ssdeep/files/ssdeep-2.10-shared.patch
@@ -0,0 +1,10 @@
+--- ssdeep-2.10/Makefile.am
++++ ssdeep-2.10/Makefile.am
+@@ -2,7 +2,6 @@
+ bin_PROGRAMS=ssdeep
+
+ ssdeep_LDADD=libfuzzy.la
+-ssdeep_LDFLAGS=-static
+
+ ACLOCAL_AMFLAGS = -I m4
+
diff --git a/app-crypt/ssdeep/metadata.xml b/app-crypt/ssdeep/metadata.xml
new file mode 100644
index 000000000000..25665619c9c7
--- /dev/null
+++ b/app-crypt/ssdeep/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <upstream>
+ <remote-id type="sourceforge">ssdeep</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/ssdeep/ssdeep-2.10.ebuild b/app-crypt/ssdeep/ssdeep-2.10.ebuild
new file mode 100644
index 000000000000..d133734535f5
--- /dev/null
+++ b/app-crypt/ssdeep/ssdeep-2.10.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+AUTOTOOLS_AUTORECONF=1
+
+inherit autotools-multilib
+
+DESCRIPTION="Computes context triggered piecewise hashes (fuzzy hashes)"
+HOMEPAGE="http://ssdeep.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs"
+
+DOCS=( AUTHORS ChangeLog FILEFORMAT NEWS README TODO )
+
+PATCHES=( "${FILESDIR}"/${P}-shared.patch )
diff --git a/app-crypt/ssdeep/ssdeep-2.11.1.ebuild b/app-crypt/ssdeep/ssdeep-2.11.1.ebuild
new file mode 100644
index 000000000000..1698d35888f2
--- /dev/null
+++ b/app-crypt/ssdeep/ssdeep-2.11.1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+AUTOTOOLS_AUTORECONF=1
+
+inherit autotools-multilib
+
+DESCRIPTION="Computes context triggered piecewise hashes (fuzzy hashes)"
+HOMEPAGE="http://ssdeep.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs"
+
+DOCS=( AUTHORS ChangeLog FILEFORMAT NEWS README TODO )
+
+PATCHES=( "${FILESDIR}"/${PN}-2.10-shared.patch )
diff --git a/app-crypt/ssdeep/ssdeep-2.12.ebuild b/app-crypt/ssdeep/ssdeep-2.12.ebuild
new file mode 100644
index 000000000000..1698d35888f2
--- /dev/null
+++ b/app-crypt/ssdeep/ssdeep-2.12.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+AUTOTOOLS_AUTORECONF=1
+
+inherit autotools-multilib
+
+DESCRIPTION="Computes context triggered piecewise hashes (fuzzy hashes)"
+HOMEPAGE="http://ssdeep.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs"
+
+DOCS=( AUTHORS ChangeLog FILEFORMAT NEWS README TODO )
+
+PATCHES=( "${FILESDIR}"/${PN}-2.10-shared.patch )
diff --git a/app-crypt/ssdeep/ssdeep-2.13.ebuild b/app-crypt/ssdeep/ssdeep-2.13.ebuild
new file mode 100644
index 000000000000..718d5f7f8667
--- /dev/null
+++ b/app-crypt/ssdeep/ssdeep-2.13.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+AUTOTOOLS_AUTORECONF=1
+
+inherit autotools-multilib
+
+DESCRIPTION="Computes context triggered piecewise hashes (fuzzy hashes)"
+HOMEPAGE="http://ssdeep.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs"
+
+DOCS=( AUTHORS ChangeLog FILEFORMAT NEWS README TODO )
+
+PATCHES=( "${FILESDIR}"/${PN}-2.10-shared.patch )
diff --git a/app-crypt/ssh-multiadd/Manifest b/app-crypt/ssh-multiadd/Manifest
new file mode 100644
index 000000000000..91fb05466148
--- /dev/null
+++ b/app-crypt/ssh-multiadd/Manifest
@@ -0,0 +1 @@
+DIST ssh-multiadd-1.3.2.tar.gz 14035 SHA256 5526a9682b5d5e5051f91cd64a3e472bc6311939ee412725bf94eabb8f2f94c8 SHA512 fd4f26bfa5e2f654fc650470353901c6f418685f971ec4b5834afd0136e77469523c49b7cacb1b9716ff6c8cbbe810a057b214927f0325524170db84aebacbb3 WHIRLPOOL 871af4cb49282fbf22c547b99a9c14d035fd8766ba29899add5e2522d1a648df3e9705837b99a5cbfbe87ad0f363fab262905fe104353123171bfcccbb5be52f
diff --git a/app-crypt/ssh-multiadd/metadata.xml b/app-crypt/ssh-multiadd/metadata.xml
new file mode 100644
index 000000000000..1828ec211c31
--- /dev/null
+++ b/app-crypt/ssh-multiadd/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>
+ <email>idella4@gentoo.org</email>
+ <name>Ian Delaney</name>
+</maintainer>
+</pkgmetadata>
diff --git a/app-crypt/ssh-multiadd/ssh-multiadd-1.3.2-r1.ebuild b/app-crypt/ssh-multiadd/ssh-multiadd-1.3.2-r1.ebuild
new file mode 100644
index 000000000000..97cc8cc33990
--- /dev/null
+++ b/app-crypt/ssh-multiadd/ssh-multiadd-1.3.2-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit python-single-r1
+
+DESCRIPTION="Adds multiple ssh keys to the ssh authentication agent"
+HOMEPAGE="http://code.fluffytapeworm.com/projects"
+SRC_URI="http://code.fluffytapeworm.com/projects/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="X"
+
+DEPEND=""
+RDEPEND="X? ( >=net-misc/x11-ssh-askpass-1.2.2 )"
+
+src_prepare() {
+ python_fix_shebang .
+}
+
+src_compile(){
+ :
+}
+
+src_install() {
+ dobin ssh-multiadd
+ doman ssh-multiadd.1
+ dodoc Changelog README todo
+}
diff --git a/app-crypt/ssh-multiadd/ssh-multiadd-1.3.2.ebuild b/app-crypt/ssh-multiadd/ssh-multiadd-1.3.2.ebuild
new file mode 100644
index 000000000000..40de0e6832b6
--- /dev/null
+++ b/app-crypt/ssh-multiadd/ssh-multiadd-1.3.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+PYTHON_DEPEND="2"
+
+inherit python
+
+DESCRIPTION="Adds multiple ssh keys to the ssh authentication agent"
+HOMEPAGE="http://code.fluffytapeworm.com/projects"
+SRC_URI="http://code.fluffytapeworm.com/projects/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="X"
+
+DEPEND=""
+RDEPEND="X? ( >=net-misc/x11-ssh-askpass-1.2.2 )"
+
+pkg_setup() {
+ python_set_active_version 2
+ python_pkg_setup
+}
+
+src_prepare() {
+ python_convert_shebangs -r 2 .
+}
+
+src_compile(){
+ :
+}
+
+src_install() {
+ dobin ssh-multiadd
+ doman ssh-multiadd.1
+ dodoc Changelog README todo
+}
diff --git a/app-crypt/stan/Manifest b/app-crypt/stan/Manifest
new file mode 100644
index 000000000000..ffdb6f918666
--- /dev/null
+++ b/app-crypt/stan/Manifest
@@ -0,0 +1 @@
+DIST stan-0.4.1.tar.gz 37471 SHA256 b010ffa03d9ad8e8d7cf2cfc2692faec67f6e177ac54b432b2e2bff50b258f5b SHA512 f7c123c9887a6cf994d66d950fc50c42340b35ae6353b69918be95cc7886b59ed2042a85c40596dcf25724043810c50f81c977c54af26af0e7131c12bda0e00b WHIRLPOOL ab529e5bf9f761f99095d9442d03ff558002db6be85398f6c4925c8b8ea8314f70f461275307e6e7782f3134854bcade2a85cea69efe406c838aaec52065e900
diff --git a/app-crypt/stan/files/stan-0.4.1-errno.patch b/app-crypt/stan/files/stan-0.4.1-errno.patch
new file mode 100644
index 000000000000..a63810c1ac1b
--- /dev/null
+++ b/app-crypt/stan/files/stan-0.4.1-errno.patch
@@ -0,0 +1,26 @@
+--- src/data.c.orig 2005-12-05 13:23:44.000000000 +0200
++++ src/data.c 2005-12-05 13:24:31.000000000 +0200
+@@ -55,7 +55,9 @@
+ #include <stats.h>
+ #include <config.h>
+
+-extern int errno, verbose, progress, bits;
++#include <errno.h>
++
++extern int verbose, progress, bits;
+ extern tnode_t **treap;
+ extern bnode_t *bintree;
+ size_t size = 0;
+--- src/stan.c.orig 2005-12-05 13:23:49.000000000 +0200
++++ src/stan.c 2005-12-05 13:24:57.000000000 +0200
+@@ -46,7 +46,9 @@
+ #include <bits.h>
+ #include <config.h>
+
+-int errno, verbose = 0, progress = 0, bits = 0;
++#include <errno.h>
++
++int verbose = 0, progress = 0, bits = 0;
+
+ void print_usage()
+ {
diff --git a/app-crypt/stan/metadata.xml b/app-crypt/stan/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/stan/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/stan/stan-0.4.1.ebuild b/app-crypt/stan/stan-0.4.1.ebuild
new file mode 100644
index 000000000000..401b67f9dfd4
--- /dev/null
+++ b/app-crypt/stan/stan-0.4.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+inherit autotools eutils
+
+DESCRIPTION="Stan is a console application that analyzes binary streams and calculates statistical information"
+HOMEPAGE="http://www.roqe.org/stan/"
+SRC_URI="http://www.roqe.org/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-errno.patch"
+ sed -i -e "s/-O3/${CFLAGS}/" configure.in || die "sed failed"
+ sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.in || die
+ eautoreconf
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die "install failed"
+ dodoc README || die
+}
diff --git a/app-crypt/tc-play/Manifest b/app-crypt/tc-play/Manifest
new file mode 100644
index 000000000000..7a4fcf6d73f4
--- /dev/null
+++ b/app-crypt/tc-play/Manifest
@@ -0,0 +1 @@
+DIST tc-play-2.0.tar.gz 1015525 SHA256 0e17890f37e862746364b10bad62bbd9f3e2b2811a24b07df12eff266534e42d SHA512 17408b2a664eb6822c77ede4f38ca67cdf643512014619d830a2c024bb8971811eded4edd65f6398d6112a3b57cd11a5b414357878c817c9cc2aac9d851946d7 WHIRLPOOL 0fc8273debd60f421eecced41ba43bd5fc36c6fd09f48f365755bfe844bf3a425be79ca36ffe3011a01d70b9911da0cfcb0e21571b3af97ec9f8d84af3440806
diff --git a/app-crypt/tc-play/metadata.xml b/app-crypt/tc-play/metadata.xml
new file mode 100644
index 000000000000..add1c176228a
--- /dev/null
+++ b/app-crypt/tc-play/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <use>
+ <flag name="openssl">
+ Use openssl crypto backend.
+ </flag>
+ </use>
+ <upstream>
+ <remote-id type="github">bwalex/tc-play</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/tc-play/tc-play-2.0.ebuild b/app-crypt/tc-play/tc-play-2.0.ebuild
new file mode 100644
index 000000000000..4d371e2d7ef0
--- /dev/null
+++ b/app-crypt/tc-play/tc-play-2.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit toolchain-funcs multilib
+
+DESCRIPTION="a free, pretty much fully featured and stable TrueCrypt implementation"
+HOMEPAGE="https://github.com/bwalex/tc-play"
+SRC_URI="https://github.com/bwalex/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="openssl"
+
+DEPEND="
+ dev-libs/libgpg-error
+ sys-fs/lvm2
+ sys-apps/util-linux
+ dev-libs/libgcrypt:0
+ openssl? ( dev-libs/openssl:0 )"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ local backend="gcrypt"
+ use openssl && backend="openssl"
+
+ EXTRA_MAKE_FLAGS=(
+ PBKDF_BACKEND="${backend}"
+ WARNFLAGS=""
+ CC=$(tc-getCC)
+ AR=$(tc-getAR)
+ PREFIX=/usr \
+ LIBDIR=/usr/$(get_libdir)
+ )
+}
+
+src_compile() {
+ emake -f Makefile.classic \
+ tcplay \
+ "${EXTRA_MAKE_FLAGS[@]}"
+}
+
+src_install() {
+ emake -f Makefile.classic \
+ "${EXTRA_MAKE_FLAGS[@]}" \
+ install_program \
+ DESTDIR="${ED}"
+ dodoc README.md
+}
diff --git a/app-crypt/tinyca/Manifest b/app-crypt/tinyca/Manifest
new file mode 100644
index 000000000000..ecdfc457c1d9
--- /dev/null
+++ b/app-crypt/tinyca/Manifest
@@ -0,0 +1 @@
+DIST tinyca2-0.7.5.tar.bz2 172779 SHA256 dc7d8180bf1db572fa4b08e15ecf8a47fc1c5bfdb55109bf2b3a54f86e5e60b7 SHA512 47df0b995715ad973b12da7d2999ae90f8887549437235b287e1d294331adc8d527bf4435ce1c30df278db8e5f8fc7df29a35d3650d41bfd4d0a0a7c193994aa WHIRLPOOL 5f990529ee503f07d8df0132c1b5834b8353d4908650535adb67ba82f04b1472559dca40ee972e4ce6ac22f31706774c981fc8fc905964df4b837ba6bec1a9be
diff --git a/app-crypt/tinyca/files/tinyca-2.0.7.3-compositefix.patch b/app-crypt/tinyca/files/tinyca-2.0.7.3-compositefix.patch
new file mode 100644
index 000000000000..a074eec2025a
--- /dev/null
+++ b/app-crypt/tinyca/files/tinyca-2.0.7.3-compositefix.patch
@@ -0,0 +1,12 @@
+--- tinyca2-0.7.2/./tinyca2.orig 2006-05-28 21:45:03.000000000 +1000
++++ tinyca2-0.7.2/tinyca2 2006-05-28 21:46:38.000000000 +1000
+@@ -87,6 +87,9 @@
+
+ umask(0077);
+
++# https://bugs.gentoo.org/show_bug.cgi?id=78576
++$ENV{XLIB_SKIP_ARGB_VISUALS}= '1';
++
+ # create main object and initialize CA
+ my $gui = GUI->new($init);
+
diff --git a/app-crypt/tinyca/files/tinyca-2.0.7.5-openssl-1.patch b/app-crypt/tinyca/files/tinyca-2.0.7.5-openssl-1.patch
new file mode 100644
index 000000000000..3691d5b9cc93
--- /dev/null
+++ b/app-crypt/tinyca/files/tinyca-2.0.7.5-openssl-1.patch
@@ -0,0 +1,48 @@
+--- a/lib/OpenSSL.pm.orig 2013-03-05 15:57:46.332286060 +0100
++++ b/lib/OpenSSL.pm 2013-03-05 15:57:53.408466038 +0100
+@@ -605,6 +605,8 @@
+ # dirty fix (incompleted) --curly
+ $i = sprintf( "%x", $1);
+ $tmp->{'SERIAL'} = length($i)%2?"0".uc($i):uc($i);
++ } elsif ($_ =~ /^\s*([da-f]{2}:\w{2}:\w{2}:\w{2}:\w{2}:\w{2}:\w{2}:\w{2})\s*$/i) {
++ $tmp->{'SERIAL'} = $1;
+ } elsif ($_ =~ /Signature Algorithm.*: (\w+)/i) {
+ $tmp->{'SIG_ALGORITHM'} = $1;
+ } elsif ($_ =~ /Issuer: (.+)/i) {
+@@ -823,10 +825,10 @@
+ $cmd = "$self->{'bin'} $opts->{'cmd'}";
+ $cmd .= " -config $opts->{'config'}" if(defined($opts->{'config'}));
+ $cmd .= " -inform $opts->{'inform'}";
+- $cmd .= " -out \"$file\"";
+ if($opts->{'outform'} eq 'TEXT') {
+ $cmd .= " -text -noout";
+ } else {
++ $cmd .= " -out \"$file\"";
+ $cmd .= " -outform $opts->{'outform'}";
+ }
+
+@@ -859,13 +861,17 @@
+ }
+ }
+
+- open(IN, $file) || do {
+- my $t = sprintf(_("Can't open file %s: %s"), $file, $!);
+- GUI::HELPERS::print_warning($t);
+- return;
+- };
+- $tmp .= $_ while(<IN>);
+- close(IN);
++ if ($opts->{'outform'} eq 'TEXT') {
++ $tmp = $ext;
++ } else {
++ open(IN, $file) || do {
++ my $t = sprintf(_("Can't open file %s: %s"), $file, $!);
++ GUI::HELPERS::print_warning($t);
++ return;
++ };
++ $tmp .= $_ while(<IN>);
++ close(IN);
++ }
+
+ unlink($file);
+
diff --git a/app-crypt/tinyca/files/tinyca-2.0.7.5-perl-5.18.patch b/app-crypt/tinyca/files/tinyca-2.0.7.5-perl-5.18.patch
new file mode 100644
index 000000000000..39b3a6e29f4a
--- /dev/null
+++ b/app-crypt/tinyca/files/tinyca-2.0.7.5-perl-5.18.patch
@@ -0,0 +1,47 @@
+--- tinyca2-0.7.5.orig/lib/GUI.pm 2006-07-25 16:12:00.000000000 -0400
+--- tinyca2-0.7.5/lib/GUI.pm 2006-07-25 16:12:00.000000000 -0400
+@@ -978,7 +978,7 @@
+ $piter = $store->append($root);
+ $store->set($piter, 0 => $t);
+
+- for my $l qw(CN EMAIL O OU C ST L) {
++ for my $l (qw(CN EMAIL O OU C ST L)) {
+ if(defined($parsed->{$l})) {
+ if($l eq "OU") {
+ foreach my $ou (@{$parsed->{'OU'}}) {
+@@ -1003,7 +1003,7 @@
+ $piter = $store->append($root);
+ $store->set($piter, 0 => $t);
+
+- for my $l qw(CN EMAIL O OU C ST L) {
++ for my $l (qw(CN EMAIL O OU C ST L)) {
+ if(defined($parsed->{'ISSUERDN'}->{$l})) {
+ if($l eq "OU") {
+ foreach my $ou (@{$parsed->{'ISSUERDN'}->{'OU'}}) {
+@@ -1029,7 +1029,7 @@
+ $piter = $store->append($root);
+ $store->set($piter, 0 => $t);
+
+- for my $l qw(STATUS NOTBEFORE NOTAFTER) {
++ for my $l (qw(STATUS NOTBEFORE NOTAFTER)) {
+ if(defined($parsed->{$l})) {
+ $citer = $store->append($piter);
+ $store->set($citer,
+@@ -1045,7 +1045,7 @@
+ $store->set($piter, 0 => $t);
+
+
+- for my $l qw(STATUS SERIAL KEYSIZE PK_ALGORITHM SIG_ALGORITHM TYPE) {
++ for my $l (qw(STATUS SERIAL KEYSIZE PK_ALGORITHM SIG_ALGORITHM TYPE)) {
+ if(defined($parsed->{$l})) {
+ $citer = $store->append($piter);
+ $store->set($citer,
+@@ -1060,7 +1060,7 @@
+ $piter = $store->append($root);
+ $store->set($piter, 0 => $t);
+
+- for my $l qw(FINGERPRINTMD5 FINGERPRINTSHA1) {
++ for my $l (qw(FINGERPRINTMD5 FINGERPRINTSHA1)) {
+ if(defined($parsed->{$l})) {
+ $citer = $store->append($piter);
+ $store->set($citer,
diff --git a/app-crypt/tinyca/metadata.xml b/app-crypt/tinyca/metadata.xml
new file mode 100644
index 000000000000..d68fe974c15a
--- /dev/null
+++ b/app-crypt/tinyca/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>crypto</herd>
+</pkgmetadata>
diff --git a/app-crypt/tinyca/tinyca-2.0.7.5-r2.ebuild b/app-crypt/tinyca/tinyca-2.0.7.5-r2.ebuild
new file mode 100644
index 000000000000..6fce7506aa8a
--- /dev/null
+++ b/app-crypt/tinyca/tinyca-2.0.7.5-r2.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils
+
+MY_P="${PN}${PV/./-}"
+DESCRIPTION="Simple Perl/Tk GUI to manage a small certification authority"
+HOMEPAGE="http://tinyca.sm-zone.net/"
+SRC_URI="http://tinyca.sm-zone.net/${MY_P}.tar.bz2"
+
+LICENSE="Artistic"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~sparc x86"
+IUSE=""
+LANGS="en de cs es sv"
+
+for X in ${LANGS} ; do
+ IUSE="${IUSE} linguas_${X}"
+done
+
+RDEPEND="
+ >=dev-libs/openssl-0.9.7e:0=
+ dev-perl/Locale-gettext
+ >=virtual/perl-MIME-Base64-2.12
+ >=dev-perl/gtk2-perl-1.072"
+DEPEND="${RDEPEND}
+ >=sys-apps/sed-4"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-2.0.7.3-compositefix.patch"
+ epatch "${FILESDIR}/${P}-openssl-1.patch"
+ epatch "${FILESDIR}/${P}-perl-5.18.patch"
+ sed -i -e 's:./lib:/usr/share/tinyca/lib:g' \
+ -e 's:./templates:/usr/share/tinyca/templates:g' \
+ -e 's:./locale:/usr/share/locale:g' "${S}/tinyca2" || die
+}
+
+src_compile() {
+ emake -C po
+}
+
+locale_install() {
+ insinto /usr/share/locale/$@/LC_MESSAGES/
+ doins locale/$@/LC_MESSAGES/tinyca2.mo
+}
+
+src_install() {
+ newbin tinyca2 tinyca
+ insinto /usr/share/tinyca/lib
+ doins lib/*.pm
+ insinto /usr/share/tinyca/lib/GUI
+ doins lib/GUI/*.pm
+ insinto /usr/share/tinyca/templates
+ doins templates/*
+ insinto /usr/share/
+ strip-linguas ${LANGS}
+ local l
+ for l in ${LANGS}; do
+ if [ "$l" != "en" ]; then
+ use linguas_$l && locale_install $l
+ fi
+ done
+}
diff --git a/app-crypt/tpm-emulator/Manifest b/app-crypt/tpm-emulator/Manifest
new file mode 100644
index 000000000000..b1ba89c2c02e
--- /dev/null
+++ b/app-crypt/tpm-emulator/Manifest
@@ -0,0 +1 @@
+DIST tpm_emulator-0.7.4.tar.gz 214145 SHA256 4e48ea0d83dd9441cc1af04ab18cd6c961b9fa54d5cbf2c2feee038988dea459 SHA512 4928b5b82f57645be9408362706ff2c4d9baa635b21b0d41b1c82930e8c60a759b1ea4fa74d7e6c7cae1b7692d006aa5cb72df0c3b88bf049779aa2b566f9d35 WHIRLPOOL c75d49e834f8df6c810d7cb7ca3553e742fde0fd6050af7f7aeda8bbdf652084dda6600719eb0b816e1d51bbc5d9f0e119ea40ce3e59af05fd8d55971056fd6f
diff --git a/app-crypt/tpm-emulator/files/tpm-emulator.confd-0.7.4 b/app-crypt/tpm-emulator/files/tpm-emulator.confd-0.7.4
new file mode 100644
index 000000000000..da24e57840b9
--- /dev/null
+++ b/app-crypt/tpm-emulator/files/tpm-emulator.confd-0.7.4
@@ -0,0 +1,2 @@
+STARTUP_MODE="save"
+#DEBUG="true"
diff --git a/app-crypt/tpm-emulator/files/tpm-emulator.initd b/app-crypt/tpm-emulator/files/tpm-emulator.initd
new file mode 100644
index 000000000000..7be11767c60e
--- /dev/null
+++ b/app-crypt/tpm-emulator/files/tpm-emulator.initd
@@ -0,0 +1,54 @@
+#!/sbin/runscript
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+opts="save clear deactivated"
+
+STARTUP_MODE='save';
+
+
+depend() {
+ use logger
+ after coldplug
+}
+
+checkconfig() {
+ lsmod | grep -q "^tpmd_dev\b" \
+ || modprobe tpmd_dev &>/dev/null \
+ || eerror "Failed to load module tpmd_dev";
+
+ if [ ! -c /dev/tpm ] && [ ! -c /dev/tpm0 ] ; then
+ eerror "No TPM device found!"
+ return 1
+ fi
+ return 0
+}
+
+start() {
+ ebegin "Starting tpm-emulator daemon with mode '$STARTUP_MODE' (tpmd)"
+ checkconfig || eend $?
+ start-stop-daemon --start --chuid tss --exec /usr/sbin/tpmd $STARTUP_MODE > /dev/null
+ eend $?
+}
+
+save() {
+ STARTUP_MODE='save';
+ svc_restart
+}
+
+clear() {
+ STARTUP_MODE='clear';
+ svc_restart
+}
+
+deactivated() {
+ STARTUP_MODE='deactivated';
+ svc_restart
+}
+
+stop() {
+ ebegin "Stopping tpm-emulator daemon (tpmd)"
+ start-stop-daemon --stop --exec /usr/sbin/tpmd --user tss > /dev/null
+ eend $?
+}
diff --git a/app-crypt/tpm-emulator/files/tpm-emulator.initd-0.7.4 b/app-crypt/tpm-emulator/files/tpm-emulator.initd-0.7.4
new file mode 100755
index 000000000000..0ae376ee9f77
--- /dev/null
+++ b/app-crypt/tpm-emulator/files/tpm-emulator.initd-0.7.4
@@ -0,0 +1,60 @@
+#!/sbin/runscript
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+STARTUP_MODE='save';
+
+extra_started_commands="clear save deactivated"
+command="/usr/bin/tpmd"
+command_args="-o tss -g tss"
+
+depend() {
+ use logger
+ after coldplug
+}
+
+checkconfig() {
+ lsmod | grep -q "^tpmd_dev\b" \
+ || modprobe tpmd_dev &>/dev/null \
+ || eerror "Failed to load module tpmd_dev";
+
+ if [ ! -c /dev/tpm ] && [ ! -c /dev/tpm0 ] ; then
+ eerror "No TPM device found!"
+ return 1
+ fi
+ return 0
+}
+
+start() {
+ ebegin "Starting tpm-emulator daemon with mode '$STARTUP_MODE' (tpmd)"
+ checkconfig || eend $?
+ checkpath -d -m 0775 -o tss /var/run/tpm
+ start-stop-daemon --start --exec "${command}" -- ${command_args} $STARTUP_MODE > /dev/null
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping tpm-emulator daemon (tpmd)"
+ start-stop-daemon --stop --exec "${command}" -- ${command_args} > /dev/null
+ eend $?
+}
+
+clear() {
+ STARTUP_MODE='clear';
+ stop
+ start
+}
+
+save() {
+ STARTUP_MODE='save';
+ stop
+ start
+}
+
+deactivated() {
+ STARTUP_MODE='deactivated';
+ stop
+ start
+}
+
diff --git a/app-crypt/tpm-emulator/files/tpm-emulator.udev b/app-crypt/tpm-emulator/files/tpm-emulator.udev
new file mode 100644
index 000000000000..ca053b9d36d3
--- /dev/null
+++ b/app-crypt/tpm-emulator/files/tpm-emulator.udev
@@ -0,0 +1 @@
+KERNEL=="tpm", NAME="%k", SYMLINK+="tpm0", GROUP="tss", MODE="0660"
diff --git a/app-crypt/tpm-emulator/metadata.xml b/app-crypt/tpm-emulator/metadata.xml
new file mode 100644
index 000000000000..276d0e496d12
--- /dev/null
+++ b/app-crypt/tpm-emulator/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <upstream>
+ <remote-id type="sourceforge">tpm-emulator</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/tpm-emulator/tpm-emulator-0.7.4-r1.ebuild b/app-crypt/tpm-emulator/tpm-emulator-0.7.4-r1.ebuild
new file mode 100644
index 000000000000..3b6d47bba1c3
--- /dev/null
+++ b/app-crypt/tpm-emulator/tpm-emulator-0.7.4-r1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit user linux-mod cmake-utils udev
+
+MY_P=${P/-/_}
+DESCRIPTION="Emulator driver for tpm"
+HOMEPAGE="http://sourceforge.net/projects/tpm-emulator.berlios/"
+SRC_URI="mirror://sourceforge/tpm-emulator/${MY_P}.tar.gz"
+LICENSE="GPL-2"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="ssl modules"
+RDEPEND="ssl? ( dev-libs/openssl )"
+DEPEND="${RDEPEND}
+ !ssl? ( dev-libs/gmp )"
+
+S=${WORKDIR}/${P/-/_}
+
+pkg_setup() {
+ enewuser tss -1 -1 /var/lib/tpm tss
+ if use modules; then
+ CONFIG_CHECK="MODULES"
+ linux-mod_pkg_setup
+ BUILD_TARGETS="all"
+ BUILD_PARAMS="KERNEL_BUILD=${KERNEL_DIR}"
+ fi
+}
+
+src_prepare() {
+ # do not build and install the kernel module
+ sed -i 's/COMMAND ${tpmd_dev_BUILD_CMD}//' tpmd_dev/CMakeLists.txt || die
+ sed -i 's/install(CODE.*//' tpmd_dev/CMakeLists.txt || die
+}
+
+src_configure() {
+ mycmakeargs=(
+ $(cmake-utils_use_use ssl OPENSSL)
+ )
+ cmake-utils_src_configure
+
+ # only here we have BUILD_DIR
+ MODULE_NAMES="tpmd_dev(misc:${BUILD_DIR}/tpmd_dev/linux)"
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use modules && linux-mod_src_compile
+ emake -C "${BUILD_DIR}/tpmd_dev/linux" tpmd_dev.rules
+}
+
+src_install() {
+ cmake-utils_src_install
+ use modules && linux-mod_src_install
+
+ dodoc README
+
+ udev_newrules "${BUILD_DIR}/tpmd_dev/linux/tpmd_dev.rules" 60-tpmd_dev.rules
+
+ newinitd "${FILESDIR}"/${PN}.initd-0.7.4 ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd-0.7.4 ${PN}
+
+ keepdir /var/log/tpm
+ fowners tss:tss /var/log/tpm
+}
diff --git a/app-crypt/tpm-tools/Manifest b/app-crypt/tpm-tools/Manifest
new file mode 100644
index 000000000000..91d8e0f0a252
--- /dev/null
+++ b/app-crypt/tpm-tools/Manifest
@@ -0,0 +1 @@
+DIST tpm-tools-1.3.8.tar.gz 473339 SHA256 66eb4ff095542403db6b4bd4b574e8a5c08084fe4e9e5aa9a829ee84e20bea83 SHA512 727113625645b01f8e77817d7f1cc6a8bf814f96061754fdfefceb125da4eebbea54804d1fec9e36559ffd61801b318bbc327907a3bdd661f872c32f811c7e74 WHIRLPOOL 201677976c97961a20578f7ca1b4dd0a8a9b105a718c0c67c34b9f1de0c75332532c62389711f732c99edda8fe45639dd3c8293df0a62a11f88ed4c9dc987270
diff --git a/app-crypt/tpm-tools/files/tpm-tools-1.3.8-build.patch b/app-crypt/tpm-tools/files/tpm-tools-1.3.8-build.patch
new file mode 100644
index 000000000000..928f94f8e695
--- /dev/null
+++ b/app-crypt/tpm-tools/files/tpm-tools-1.3.8-build.patch
@@ -0,0 +1,10 @@
+--- a/src/tpm_mgmt/tpm_nvread.c 2015-06-07 13:00:30.250314575 +0000
++++ b/src/tpm_mgmt/tpm_nvread.c 2015-06-07 12:54:45.590302275 +0000
+@@ -23,6 +23,7 @@
+ #include <ctype.h>
+ #include <fcntl.h>
+ #include <unistd.h>
++#include <sys/stat.h>
+
+ #include "tpm_nvcommon.h"
+ #include "tpm_tspi.h"
diff --git a/app-crypt/tpm-tools/files/tpm-tools-1.3.8-gold.patch b/app-crypt/tpm-tools/files/tpm-tools-1.3.8-gold.patch
new file mode 100644
index 000000000000..bc52c30f4fcf
--- /dev/null
+++ b/app-crypt/tpm-tools/files/tpm-tools-1.3.8-gold.patch
@@ -0,0 +1,10 @@
+diff --git a/lib/Makefile.am b/lib/Makefile.am
+index cef6a2f..d7092a7 100644
+--- a/lib/Makefile.am
++++ b/lib/Makefile.am
+@@ -80,4 +80,4 @@ endif
+ # Unseal library - for addition to existing apps, counter part of seal cmd
+ libtpm_unseal_la_SOURCES = tpm_unseal.c
+ libtpm_unseal_la_LDFLAGS = -shared -version-info 1:0:0
+-libtpm_unseal_la_LIBADD = -ltspi libtpm_tspi.la
++libtpm_unseal_la_LIBADD = -ltspi libtpm_tspi.la -lcrypto
diff --git a/app-crypt/tpm-tools/metadata.xml b/app-crypt/tpm-tools/metadata.xml
new file mode 100644
index 000000000000..423e312921f2
--- /dev/null
+++ b/app-crypt/tpm-tools/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <use>
+ <flag name="pkcs11">
+ Build Token data management utilities based on OpenCryptoki's
+ (<pkg>dev-libs/opencryptoki</pkg>) PKCS#11 implementation.
+ </flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">trousers</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/tpm-tools/tpm-tools-1.3.8.ebuild b/app-crypt/tpm-tools/tpm-tools-1.3.8.ebuild
new file mode 100644
index 000000000000..90b2b97a3aed
--- /dev/null
+++ b/app-crypt/tpm-tools/tpm-tools-1.3.8.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit autotools eutils flag-o-matic
+
+DESCRIPTION="TrouSerS' support tools for the Trusted Platform Modules"
+HOMEPAGE="http://trousers.sourceforge.net"
+SRC_URI="mirror://sourceforge/trousers/${P}.tar.gz"
+
+LICENSE="CPL-1.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~m68k ~s390 ~sh x86"
+IUSE="nls pkcs11 debug"
+
+COMMON_DEPEND="
+ >=app-crypt/trousers-0.3.0
+ dev-libs/openssl
+ pkcs11? ( dev-libs/opencryptoki )
+ "
+RDEPEND="${COMMON_DEPEND}
+ nls? ( virtual/libintl )"
+DEPEND="${COMMON_DEPEND}
+ nls? ( sys-devel/gettext )"
+
+src_prepare() {
+ sed -i -r \
+ -e '/CFLAGS/s/ -(Werror|m64)//' \
+ configure.in || die
+ epatch "${FILESDIR}/${P}-gold.patch"
+ epatch "${FILESDIR}/${P}-build.patch"
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf
+ # don't use --enable-pkcs11-support, configure is a mess.
+ use pkcs11 || myconf+=" --disable-pkcs11-support"
+
+ append-cppflags $(usex debug -DDEBUG -DNDEBUG)
+
+ econf \
+ $(use_enable nls) \
+ ${myconf}
+}
+
+src_install() {
+ default
+ rm -f "${ED}"/usr/lib*/libtpm_unseal.la
+}
diff --git a/app-crypt/trousers/Manifest b/app-crypt/trousers/Manifest
new file mode 100644
index 000000000000..7bb78b9d0e97
--- /dev/null
+++ b/app-crypt/trousers/Manifest
@@ -0,0 +1,2 @@
+DIST trousers-0.3.10.tar.gz 1658652 SHA256 eb9569de5c66d9698f6c3303de03777b95ec72827f68b7744454bfa9227bc530 SHA512 1835246f846d20bc1b2731d68440a9ca45865fcd52ad847d95485e4b126fae8bec09feaad559c27d83e243d92b8adc3a67934bff2034b318df075842fe9df4f0 WHIRLPOOL 7a27ef57b0038178cbf384c9fdec2d2e3e58dbeb5e5bc1503d2a7058a8312df54fa72b87968554631e4b5e483ae5e8c5e0a2367346bf3ae001b523a507ceff40
+DIST trousers-0.3.13.tar.gz 1371901 SHA256 bb908e4a3c88a17b247a4fc8e0fff3419d8a13170fe7bdfbe0e2c5c082a276d3 SHA512 c54407e538712f738b593707ffc6d617348d73de91dfddd9057273c2fcec26e5738e89db005d36d52596630a9d583f7fcb8cc388f597da6212891e2d79dce699 WHIRLPOOL 8099d2f01b1c64b2e92c78130c9f66766f9054a1ab557f0d6da149ca4869c9fed7ee3a26454ab50bd67069d30c758ccabb450dead1d9100ffacac9f596f6d46b
diff --git a/app-crypt/trousers/files/61-trousers.rules b/app-crypt/trousers/files/61-trousers.rules
new file mode 100644
index 000000000000..20e89cbe3acd
--- /dev/null
+++ b/app-crypt/trousers/files/61-trousers.rules
@@ -0,0 +1,2 @@
+KERNEL=="tpm[0-9]*", MODE="0660", OWNER="tss", GROUP="tss", SYMLINK+="tpm"
+# vim: ft=udevrules:
diff --git a/app-crypt/trousers/files/tcsd.confd b/app-crypt/trousers/files/tcsd.confd
new file mode 100644
index 000000000000..78bedb9fda30
--- /dev/null
+++ b/app-crypt/trousers/files/tcsd.confd
@@ -0,0 +1,9 @@
+# /etc/conf.d/tscd
+
+# Configuration file for the TrouSerS' TCS daemon (tcsd) init script
+# Have a look on /etc/tcsd.conf too, there is more to configure there.
+
+# TPM_MODULES: name of the module(s) that should be loaded. You only need to
+# set this if your driver is not compiled in kernel and is not already loaded
+# on boot. (default: unset)
+#TPM_MODULES="tpm_atmel"
diff --git a/app-crypt/trousers/files/tcsd.initd b/app-crypt/trousers/files/tcsd.initd
new file mode 100644
index 000000000000..969ccc170159
--- /dev/null
+++ b/app-crypt/trousers/files/tcsd.initd
@@ -0,0 +1,39 @@
+#!/sbin/runscript
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+ use logger
+ need net
+}
+
+checkconfig() {
+ local mod
+ if [ -n "${TPM_MODULES}" ] ; then
+ for mod in ${TPM_MODULES} ; do
+ lsmod | grep -q "^${mod}\b" \
+ || modprobe ${mod} &>/dev/null \
+ || ewarn "Failed to load module ${mod}"
+ done
+ # Should we sleep or something to wait for device creation?
+ fi
+ if [ ! -c /dev/tpm ] && [ ! -c /dev/tpm0 ] ; then
+ eerror "No TPM device found!"
+ return 1
+ fi
+ return 0
+}
+
+start() {
+ ebegin "Starting TrouSerS' TCS daemon (tcsd)"
+ checkconfig || eend $?
+ start-stop-daemon --start --user tss --exec /usr/sbin/tcsd
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping TrouSerS' TCS daemon (tcsd)"
+ start-stop-daemon --stop --quiet --exec /usr/sbin/tcsd --user tss
+ eend $?
+}
diff --git a/app-crypt/trousers/files/tcsd.service b/app-crypt/trousers/files/tcsd.service
new file mode 100644
index 000000000000..4a46e6143bc1
--- /dev/null
+++ b/app-crypt/trousers/files/tcsd.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=TCG Core Services Daemon
+
+[Service]
+User=tss
+ExecStart=/usr/sbin/tcsd -f
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/app-crypt/trousers/files/trousers-0.3.13-nouseradd.patch b/app-crypt/trousers/files/trousers-0.3.13-nouseradd.patch
new file mode 100644
index 000000000000..5426e9929f13
--- /dev/null
+++ b/app-crypt/trousers/files/trousers-0.3.13-nouseradd.patch
@@ -0,0 +1,12 @@
+diff -urNp trousers-0.3.13.org/dist/Makefile.am trousers-0.3.13/dist/Makefile.am
+--- trousers-0.3.13.org/dist/Makefile.am 2014-04-24 21:05:43.000000000 +0300
++++ trousers-0.3.13/dist/Makefile.am 2015-04-08 10:05:51.018955728 +0300
+@@ -11,8 +11,6 @@ endif
+ install-exec-hook:
+ /bin/sh -c 'if [ ! -e ${DESTDIR}/@localstatedir@/lib/tpm ];then mkdir -p ${DESTDIR}/@localstatedir@/lib/tpm; fi'
+ if !NOUSERCHECK
+- /usr/sbin/groupadd tss || true
+- /usr/sbin/useradd -r tss -g tss || true
+ /bin/chown tss:tss ${DESTDIR}/@localstatedir@/lib/tpm || true
+ /bin/chmod 0700 ${DESTDIR}/@localstatedir@/lib/tpm
+ endif
diff --git a/app-crypt/trousers/files/trousers-0.3.5-nouseradd.patch b/app-crypt/trousers/files/trousers-0.3.5-nouseradd.patch
new file mode 100644
index 000000000000..32114134daff
--- /dev/null
+++ b/app-crypt/trousers/files/trousers-0.3.5-nouseradd.patch
@@ -0,0 +1,11 @@
+--- dist/Makefile.am
++++ dist/Makefile.am
+@@ -6,8 +6,6 @@
+ /bin/chmod 0600 ${DESTDIR}/@sysconfdir@/tcsd.conf
+
+ install-exec-hook:
+- /usr/sbin/groupadd tss || true
+- /usr/sbin/useradd -r tss -g tss || true
+ /bin/sh -c 'if [ ! -e ${DESTDIR}/@localstatedir@/lib/tpm ];then mkdir -p ${DESTDIR}/@localstatedir@/lib/tpm; fi'
+ /bin/chown tss:tss ${DESTDIR}/@localstatedir@/lib/tpm || true
+ /bin/chmod 0700 ${DESTDIR}/@localstatedir@/lib/tpm
diff --git a/app-crypt/trousers/metadata.xml b/app-crypt/trousers/metadata.xml
new file mode 100644
index 000000000000..e47fe20d59bf
--- /dev/null
+++ b/app-crypt/trousers/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:debian:trousers</remote-id>
+ <remote-id type="sourceforge">trousers</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/trousers/trousers-0.3.10-r1.ebuild b/app-crypt/trousers/trousers-0.3.10-r1.ebuild
new file mode 100644
index 000000000000..abb3964774eb
--- /dev/null
+++ b/app-crypt/trousers/trousers-0.3.10-r1.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils linux-info readme.gentoo systemd user udev
+
+#MY_P="${PN}-${PV%.*}-${PV##*.}"
+
+DESCRIPTION="An open-source TCG Software Stack (TSS) v1.1 implementation"
+HOMEPAGE="http://trousers.sf.net"
+SRC_URI="mirror://sourceforge/trousers/${P}.tar.gz"
+
+LICENSE="CPL-1.0 GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~m68k ~ppc ~ppc64 ~s390 ~sh x86"
+IUSE="doc selinux" # gtk
+
+# gtk support presently does NOT compile.
+# gtk? ( >=x11-libs/gtk+-2 )
+
+CDEPEND=">=dev-libs/glib-2
+ >=dev-libs/openssl-0.9.7:0"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-tcsd )"
+# S="${WORKDIR}/${P}git"
+
+DOCS="AUTHORS ChangeLog NICETOHAVES README TODO"
+
+DOC_CONTENTS="
+ If you have problems starting tcsd, please check permissions and
+ ownership on /dev/tpm* and ~tss/system.data
+"
+
+pkg_setup() {
+ # Check for driver (not sure it can be an rdep, because ot depends on the
+ # version of virtual/linux-sources... Is that supported by portage?)
+ linux-info_pkg_setup
+ local tpm_kernel_version tpm_kernel_present tpm_module
+ kernel_is ge 2 6 12 && tpm_kernel_version="yes"
+ if linux_config_exists; then
+ linux_chkconfig_present TCG_TPM && tpm_kernel_present="yes"
+ else
+ ewarn "No kernel configuration could be found."
+ fi
+ has_version app-crypt/tpm-emulator && tpm_module="yes"
+ if [[ -n "${tpm_kernel_present}" ]]; then
+ einfo "Good, you seem to have in-kernel TPM support."
+ elif [[ -n "${tpm_module}" ]]; then
+ einfo "Good, you seem to have TPM support with the external module."
+ if [[ -n "${tpm_kernel_version}" ]]; then
+ elog
+ elog "Note that since you have a >=2.6.12 kernel, you could use"
+ elog "the in-kernel driver instead of (CONFIG_TCG_TPM)."
+ fi
+ elif [[ -n "${tpm_kernel_version}" ]]; then
+ eerror
+ eerror "To use this package, you will have to activate TPM support"
+ eerror "in your kernel configuration. That's at least CONFIG_TCG_TPM,"
+ eerror "plus probably a chip specific driver (like CONFIG_TCG_ATMEL)."
+ eerror
+ else
+ eerror
+ eerror "To use this package, you should install a TPM driver."
+ eerror "You can have the following options:"
+ eerror " - install app-crypt/tpm-emulator"
+ eerror " - switch to a >=2.6.12 kernel and compile the kernel module"
+ eerror
+ fi
+
+ # New user/group for the daemon
+ enewgroup tss
+ enewuser tss -1 -1 /var/lib/tpm tss
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.3.5-nouseradd.patch
+
+ sed -i -r \
+ -e '/CFLAGS/s/ -(Werror|m64)//' \
+ configure.in || die
+ eautoreconf
+}
+
+src_configure() {
+ # econf --with-gui=$(usex gtk gtk openssl)
+ econf --with-gui=openssl
+}
+
+src_install() {
+ keepdir /var/lib/tpm
+ default
+ use doc && dodoc doc/*
+ newinitd "${FILESDIR}"/tcsd.initd tcsd
+ newconfd "${FILESDIR}"/tcsd.confd tcsd
+ systemd_dounit "${FILESDIR}"/tcsd.service
+ udev_dorules "${FILESDIR}"/61-trousers.rules
+ fowners tss:tss /var/lib/tpm
+ prune_libtool_files
+ readme.gentoo_create_doc
+}
diff --git a/app-crypt/trousers/trousers-0.3.13.ebuild b/app-crypt/trousers/trousers-0.3.13.ebuild
new file mode 100644
index 000000000000..56cad8b1f0a7
--- /dev/null
+++ b/app-crypt/trousers/trousers-0.3.13.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils linux-info readme.gentoo systemd user udev
+
+#MY_P="${PN}-${PV%.*}-${PV##*.}"
+
+DESCRIPTION="An open-source TCG Software Stack (TSS) v1.1 implementation"
+HOMEPAGE="http://trousers.sf.net"
+SRC_URI="mirror://sourceforge/trousers/${P}.tar.gz"
+
+LICENSE="CPL-1.0 GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~ppc ~ppc64 ~s390 ~sh ~x86"
+IUSE="doc selinux" # gtk
+
+# gtk support presently does NOT compile.
+# gtk? ( >=x11-libs/gtk+-2 )
+
+CDEPEND=">=dev-libs/glib-2
+ >=dev-libs/openssl-0.9.7:0"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-tcsd )"
+# S="${WORKDIR}/${P}git"
+
+DOCS="AUTHORS ChangeLog NICETOHAVES README TODO"
+
+DOC_CONTENTS="
+ If you have problems starting tcsd, please check permissions and
+ ownership on /dev/tpm* and ~tss/system.data
+"
+
+pkg_setup() {
+ # Check for driver (not sure it can be an rdep, because ot depends on the
+ # version of virtual/linux-sources... Is that supported by portage?)
+ linux-info_pkg_setup
+ local tpm_kernel_version tpm_kernel_present tpm_module
+ kernel_is ge 2 6 12 && tpm_kernel_version="yes"
+ if linux_config_exists; then
+ linux_chkconfig_present TCG_TPM && tpm_kernel_present="yes"
+ else
+ ewarn "No kernel configuration could be found."
+ fi
+ has_version app-crypt/tpm-emulator && tpm_module="yes"
+ if [[ -n "${tpm_kernel_present}" ]]; then
+ einfo "Good, you seem to have in-kernel TPM support."
+ elif [[ -n "${tpm_module}" ]]; then
+ einfo "Good, you seem to have TPM support with the external module."
+ if [[ -n "${tpm_kernel_version}" ]]; then
+ elog
+ elog "Note that since you have a >=2.6.12 kernel, you could use"
+ elog "the in-kernel driver instead of (CONFIG_TCG_TPM)."
+ fi
+ elif [[ -n "${tpm_kernel_version}" ]]; then
+ eerror
+ eerror "To use this package, you will have to activate TPM support"
+ eerror "in your kernel configuration. That's at least CONFIG_TCG_TPM,"
+ eerror "plus probably a chip specific driver (like CONFIG_TCG_ATMEL)."
+ eerror
+ else
+ eerror
+ eerror "To use this package, you should install a TPM driver."
+ eerror "You can have the following options:"
+ eerror " - install app-crypt/tpm-emulator"
+ eerror " - switch to a >=2.6.12 kernel and compile the kernel module"
+ eerror
+ fi
+
+ # New user/group for the daemon
+ enewgroup tss
+ enewuser tss -1 -1 /var/lib/tpm tss
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-nouseradd.patch
+ mv configure.in configure.ac || die
+ eautoreconf
+}
+
+src_configure() {
+ # econf --with-gui=$(usex gtk gtk openssl)
+ econf --with-gui=openssl
+}
+
+src_install() {
+ keepdir /var/lib/tpm
+ default
+ use doc && dodoc doc/*
+ newinitd "${FILESDIR}"/tcsd.initd tcsd
+ newconfd "${FILESDIR}"/tcsd.confd tcsd
+ systemd_dounit "${FILESDIR}"/tcsd.service
+ udev_dorules "${FILESDIR}"/61-trousers.rules
+ fowners tss:tss /var/lib/tpm
+ prune_libtool_files
+ readme.gentoo_create_doc
+}
diff --git a/app-crypt/truecrypt/Manifest b/app-crypt/truecrypt/Manifest
new file mode 100644
index 000000000000..66652f77692d
--- /dev/null
+++ b/app-crypt/truecrypt/Manifest
@@ -0,0 +1,4 @@
+DIST TrueCrypt-7.2-source-unix.tar.gz 1061292 SHA256 59720350125dc7e325eb8e6d86f939f826492a2ebba247079bed3b0e1a9b66e8 SHA512 e0b238f01a8b89f752a4288cf0f6ae5b86bf0d60e6418cd2b0b47fc9d789418d9181500daeeff32006970e58d0ea73f00b78814d6360759d79741272877ea5fb WHIRLPOOL 8b2e3aa773c795c32532c51898f33f084edf89e663daf934d5f3ef14c78cbd5d4e62d1befd447d35ab6283c8ba1ed183b52ed4b58f56ed72dd1078239c47e995
+DIST truecrypt-7.1a-pkcs11.h 43544 SHA256 662d39cec5a0063c8aacc430d4fcba4b31b80a174f1e824dcc359f1c1420bc2c SHA512 bffce5344383a07c4313c30ee1cb0ed7063a749527521bd964263deb5d951cc181acf9c4386bcd2ad44d40be35b3a08d56b1404730b4994e43760db71649ef3c WHIRLPOOL bc5bfbcf711f8d8d8f13625bd2ea98b195662ca458b9186a6a1a01f51897ba1e9a488b91ddfec97af7fdbb770637db27b5c124ba5fa376a415c512af3c6aac74
+DIST truecrypt-7.1a.tar.gz 1949303 SHA256 e6214e911d0bbededba274a2f8f8d7b3f6f6951e20f1c3a598fc7a23af81c8dc SHA512 b5e766023168015cb91bfd85c9e2621055dd98408215e02704775861b5070c5a0234a00c64c1bf7faa34e6d0b51ac71cd36169dd7a6f84d7a34ad0cfa304796a WHIRLPOOL 5e7f4360746a30639aea96eaf4deac268289c111c0efa96f50487527f04064992c26ad4c8ae0fd565d80e77f0ce8add82b03930d877fe5adedc8a733b482fe38
+DIST truecrypt-7.2-pkcs11.h 43544 SHA256 662d39cec5a0063c8aacc430d4fcba4b31b80a174f1e824dcc359f1c1420bc2c SHA512 bffce5344383a07c4313c30ee1cb0ed7063a749527521bd964263deb5d951cc181acf9c4386bcd2ad44d40be35b3a08d56b1404730b4994e43760db71649ef3c WHIRLPOOL bc5bfbcf711f8d8d8f13625bd2ea98b195662ca458b9186a6a1a01f51897ba1e9a488b91ddfec97af7fdbb770637db27b5c124ba5fa376a415c512af3c6aac74
diff --git a/app-crypt/truecrypt/files/execstack-fix.diff b/app-crypt/truecrypt/files/execstack-fix.diff
new file mode 100644
index 000000000000..b76bfcc580c0
--- /dev/null
+++ b/app-crypt/truecrypt/files/execstack-fix.diff
@@ -0,0 +1,60 @@
+--- Crypto/Aes_hw_cpu.asm.old 2011-06-01 17:12:53.078000001 -0400
++++ Crypto/Aes_hw_cpu.asm 2011-06-01 17:12:53.080000002 -0400
+@@ -328,3 +328,12 @@
+
+
+ %endif ; __BITS__ != 16
++ %ifidn __OUTPUT_FORMAT__,elf
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
++ %ifidn __OUTPUT_FORMAT__,elf32
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
++ %ifidn __OUTPUT_FORMAT__,elf64
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
+--- Crypto/AesSmall_x86.asm.old 2011-06-01 17:12:53.084000002 -0400
++++ Crypto/AesSmall_x86.asm 2011-06-01 17:12:53.086000002 -0400
+@@ -1442,3 +1442,12 @@
+ db v8(0xe1),v8(0x69),v8(0x14),v8(0x63),v8(0x55),v8(0x21),v8(0x0c),v8(0x7d)
+
+ %endif
++ %ifidn __OUTPUT_FORMAT__,elf
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
++ %ifidn __OUTPUT_FORMAT__,elf32
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
++ %ifidn __OUTPUT_FORMAT__,elf64
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
+--- Crypto/Aes_x64.asm.old 2011-06-01 17:12:53.090000002 -0400
++++ Crypto/Aes_x64.asm 2011-06-01 17:12:53.092000002 -0400
+@@ -905,3 +905,12 @@
+ %endif
+
+ %endif
++ %ifidn __OUTPUT_FORMAT__,elf
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
++ %ifidn __OUTPUT_FORMAT__,elf32
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
++ %ifidn __OUTPUT_FORMAT__,elf64
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
+--- Crypto/Aes_x86.asm.old 2011-06-01 17:12:53.096000002 -0400
++++ Crypto/Aes_x86.asm 2011-06-01 17:12:53.097000002 -0400
+@@ -644,3 +644,12 @@
+ do_exit
+
+ %endif
++ %ifidn __OUTPUT_FORMAT__,elf
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
++ %ifidn __OUTPUT_FORMAT__,elf32
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
++ %ifidn __OUTPUT_FORMAT__,elf64
++ section .note.GNU-stack noalloc noexec nowrite progbits
++ %endif
diff --git a/app-crypt/truecrypt/files/makefile-archdetect.diff b/app-crypt/truecrypt/files/makefile-archdetect.diff
new file mode 100644
index 000000000000..312dcfa27002
--- /dev/null
+++ b/app-crypt/truecrypt/files/makefile-archdetect.diff
@@ -0,0 +1,11 @@
+--- Makefile 2010-09-05 10:32:10.000000000 -0400
++++ Makefile.new 2011-06-01 15:23:24.975000088 -0400
+@@ -120,7 +120,7 @@
+
+ export CPU_ARCH ?= unknown
+
+-ARCH = $(shell uname -p)
++ARCH = $(shell uname -m)
+ ifeq "$(ARCH)" "unknown"
+ ARCH = $(shell uname -m)
+ endif
diff --git a/app-crypt/truecrypt/files/truecrypt-7.1a-build.patch b/app-crypt/truecrypt/files/truecrypt-7.1a-build.patch
new file mode 100644
index 000000000000..e0b05d503b64
--- /dev/null
+++ b/app-crypt/truecrypt/files/truecrypt-7.1a-build.patch
@@ -0,0 +1,16 @@
+Add dl library, bug#481060.
+
+---
+
+diff -urNp truecrypt-7.1a-source.org/Main/Main.make truecrypt-7.1a-source/Main/Main.make
+--- truecrypt-7.1a-source.org/Main/Main.make 2012-02-07 12:36:48.000000000 +0200
++++ truecrypt-7.1a-source/Main/Main.make 2013-12-08 21:50:07.224586712 +0200
+@@ -105,7 +105,7 @@ TC_VERSION = $(shell grep VERSION_STRING
+
+ $(APPNAME): $(LIBS) $(OBJS)
+ @echo Linking $@
+- $(CXX) -o $(APPNAME) $(LFLAGS) $(OBJS) $(LIBS) $(FUSE_LIBS) $(WX_LIBS)
++ $(CXX) -o $(APPNAME) $(LFLAGS) $(OBJS) $(LIBS) $(FUSE_LIBS) $(WX_LIBS) -ldl
+
+ ifeq "$(TC_BUILD_CONFIG)" "Release"
+ ifndef NOSTRIP
diff --git a/app-crypt/truecrypt/files/truecrypt-stop.sh b/app-crypt/truecrypt/files/truecrypt-stop.sh
new file mode 100644
index 000000000000..50bb0b749fb0
--- /dev/null
+++ b/app-crypt/truecrypt/files/truecrypt-stop.sh
@@ -0,0 +1,9 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2 or later
+
+# Try to remove any dm-crypt mappings
+if [ -x /usr/bin/truecrypt ]; then
+ ebegin "Removing truecrypt mappings"
+ ! /usr/bin/truecrypt -l > /dev/null 2>&1 || /usr/bin/truecrypt -d
+ eend $?
+fi
diff --git a/app-crypt/truecrypt/files/truecrypt.init b/app-crypt/truecrypt/files/truecrypt.init
new file mode 100644
index 000000000000..8b47d73b520d
--- /dev/null
+++ b/app-crypt/truecrypt/files/truecrypt.init
@@ -0,0 +1,29 @@
+#!/sbin/runscript
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+ after localmount
+ if [ -e /lib/librc.so ]; then
+ need device-mapper
+ fi
+}
+
+start() {
+ if [ ! -e /lib/librc.so ]; then
+ eerror "The ${myservice} init script is written for baselayout-2"
+ eerror "Please do not use it with baselayout-1"
+ return 1
+ fi
+}
+
+stop() {
+ if [ ! -e /lib/librc.so ]; then
+ eerror "The ${myservice} init script is written for baselayout-2"
+ eerror "Please do not use it with baselayout-1"
+ return 1
+ fi
+
+ . /lib/rcscripts/addons/truecrypt-stop.sh
+}
diff --git a/app-crypt/truecrypt/metadata.xml b/app-crypt/truecrypt/metadata.xml
new file mode 100644
index 000000000000..749e2ecbb38f
--- /dev/null
+++ b/app-crypt/truecrypt/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <use>
+ <flag name="asm">Enable assembly for optimization</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">truecrypt</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/truecrypt/truecrypt-7.1a.ebuild b/app-crypt/truecrypt/truecrypt-7.1a.ebuild
new file mode 100644
index 000000000000..5145efcd2d7a
--- /dev/null
+++ b/app-crypt/truecrypt/truecrypt-7.1a.ebuild
@@ -0,0 +1,126 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit flag-o-matic linux-info multilib toolchain-funcs wxwidgets eutils pax-utils
+
+DESCRIPTION="Free open-source disk encryption software"
+HOMEPAGE="http://www.truecrypt.org/"
+SRC_URI="${P}.tar.gz
+ ${P}-pkcs11.h"
+
+LICENSE="truecrypt-3.0"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~ppc ~x86"
+IUSE="X +asm"
+RESTRICT="mirror fetch bindist"
+
+RDEPEND=">=sys-fs/lvm2-2.02.45
+ sys-fs/fuse
+ x11-libs/wxGTK:2.8[X?]
+ app-admin/sudo"
+DEPEND="${RDEPEND}
+ !ppc? ( dev-lang/nasm )"
+
+S="${WORKDIR}/${P}-source"
+
+#See bug 241650.
+pkg_nofetch() {
+ elog "Please download the source archive \"TrueCrypt ${PV} Source.tar.gz\" from:"
+ elog "http://www.truecrypt.org/downloads2"
+ elog "Then put the file in ${DISTDIR}/${P}.tar.gz"
+
+ # until we support restricted fetch per URI
+ elog ""
+ elog "Please execute:"
+ elog "curl 'http://git.gnupg.org/cgi-bin/gitweb.cgi?p=scute.git;a=blob_plain;f=src/pkcs11.h;hb=38bdba0bb1ab93950489c645938c93ed577f9139' > ${DISTDIR}/${P}-pkcs11.h"
+}
+
+pkg_setup() {
+ local CONFIG_CHECK="~BLK_DEV_DM ~DM_CRYPT ~FUSE_FS ~CRYPTO ~CRYPTO_XTS"
+ linux-info_pkg_setup
+
+ local WX_GTK_VER="2.8"
+ if use X; then
+ need-wxwidgets unicode
+ else
+ need-wxwidgets base-unicode
+ fi
+}
+
+src_prepare() {
+ if has_version x11-libs/wxGTK[X]; then
+ # Fix linking when NOGUI=1
+ sed -e "s/WX_CONFIG_LIBS := base/&,core/" -i Main/Main.make || die "sed Main/Main.make failed"
+ fi
+
+ epatch "${FILESDIR}/makefile-archdetect.diff"
+ epatch "${FILESDIR}/execstack-fix.diff"
+ epatch "${FILESDIR}/${P}-build.patch"
+ mkdir "${T}"/pkcs11 || die
+ ln -s "${DISTDIR}"/${P}-pkcs11.h "${T}"/pkcs11/pkcs11.h || die
+}
+
+src_compile() {
+ local EXTRA
+
+ use X || EXTRA+=" NOGUI=1"
+ use asm || EXTRA+=" NOASM=1"
+ append-flags -DCKR_NEW_PIN_MODE=0x000001B0 -DCKR_NEXT_OTP=0x000001B1
+
+ emake \
+ ${EXTRA} \
+ NOSTRIP=1 \
+ NOTEST=1 \
+ VERBOSE=1 \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ AR="$(tc-getAR)" \
+ RANLIB="$(tc-getRANLIB)" \
+ TC_EXTRA_CFLAGS="${CFLAGS}" \
+ TC_EXTRA_CXXFLAGS="${CXXFLAGS}" \
+ TC_EXTRA_LFLAGS="${LDFLAGS}" \
+ WX_CONFIG="${WX_CONFIG}" \
+ PKCS11_INC="${T}/pkcs11/"
+}
+
+src_test() {
+ "${S}/Main/truecrypt" --text --test || die "tests failed"
+}
+
+src_install() {
+ dobin Main/truecrypt
+ dodoc Readme.txt "Release/Setup Files/TrueCrypt User Guide.pdf"
+ exeinto "/$(get_libdir)/rcscripts/addons"
+ newexe "${FILESDIR}/${PN}-stop.sh" "${PN}-stop.sh"
+
+ newinitd "${FILESDIR}/${PN}.init" ${PN}
+
+ if use X; then
+ newicon Resources/Icons/TrueCrypt-48x48.xpm truecrypt.xpm
+ make_desktop_entry ${PN} "TrueCrypt" ${PN} "System"
+ fi
+
+ pax-mark -m "${D}/usr/bin/truecrypt"
+}
+
+pkg_postinst() {
+ elog "There is now an init script for TrueCrypt for Baselayout-2."
+ elog "If you are a baselayout-2 user and you would like the TrueCrypt"
+ elog "mappings removed on shutdown in order to prevent other file systems"
+ elog "from unmounting then run:"
+ elog "rc-update add truecrypt boot"
+ elog
+
+ ewarn "If you're getting errors about DISPLAY while using the terminal"
+ ewarn "it's a known upstream bug. To use TrueCrypt from the terminal"
+ ewarn "all that's necessary is to run: unset DISPLAY"
+ ewarn "This will make the display unaccessable from that terminal "
+ ewarn "but at least you will be able to access your volumes."
+ ewarn
+
+ ewarn "TrueCrypt has a very restrictive license. Please be explicitly aware"
+ ewarn "of the limitations on redistribution of binaries or modified source."
+}
diff --git a/app-crypt/truecrypt/truecrypt-7.2.ebuild b/app-crypt/truecrypt/truecrypt-7.2.ebuild
new file mode 100644
index 000000000000..43ab197efacc
--- /dev/null
+++ b/app-crypt/truecrypt/truecrypt-7.2.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit flag-o-matic linux-info multilib toolchain-funcs wxwidgets eutils pax-utils
+
+DESCRIPTION="Free open-source disk encryption software"
+HOMEPAGE="http://www.truecrypt.org/"
+SRC_URI="mirror://sourceforge/${PN}/TrueCrypt/Other/TrueCrypt-${PV}-source-unix.tar.gz
+ http://git.gnupg.org/cgi-bin/gitweb.cgi?p=scute.git;a=blob_plain;f=src/pkcs11.h;hb=38bdba0bb1ab93950489c645938c93ed577f9139 -> ${P}-pkcs11.h"
+
+LICENSE="truecrypt-3.0"
+SLOT="0"
+KEYWORDS=""
+IUSE="X +asm"
+RESTRICT="bindist"
+
+RDEPEND=">=sys-fs/lvm2-2.02.45
+ sys-fs/fuse
+ x11-libs/wxGTK:2.8[X?]
+ app-admin/sudo"
+DEPEND="${RDEPEND}
+ !ppc? ( dev-lang/nasm )"
+
+S="${WORKDIR}/${P}-source"
+
+pkg_setup() {
+ local CONFIG_CHECK="~BLK_DEV_DM ~DM_CRYPT ~FUSE_FS ~CRYPTO ~CRYPTO_XTS"
+ linux-info_pkg_setup
+
+ local WX_GTK_VER="2.8"
+ if use X; then
+ need-wxwidgets unicode
+ else
+ need-wxwidgets base-unicode
+ fi
+}
+
+src_prepare() {
+ if has_version x11-libs/wxGTK[X]; then
+ # Fix linking when NOGUI=1
+ sed -e "s/WX_CONFIG_LIBS := base/&,core/" -i Main/Main.make || die "sed Main/Main.make failed"
+ fi
+
+ epatch "${FILESDIR}/makefile-archdetect.diff"
+ epatch "${FILESDIR}/execstack-fix.diff"
+ epatch "${FILESDIR}/${PN}-7.1a-build.patch"
+ mkdir "${T}"/pkcs11 || die
+ ln -s "${DISTDIR}"/${P}-pkcs11.h "${T}"/pkcs11/pkcs11.h || die
+}
+
+src_compile() {
+ local EXTRA
+
+ use X || EXTRA+=" NOGUI=1"
+ use asm || EXTRA+=" NOASM=1"
+ append-flags -DCKR_NEW_PIN_MODE=0x000001B0 -DCKR_NEXT_OTP=0x000001B1
+
+ emake \
+ ${EXTRA} \
+ NOSTRIP=1 \
+ NOTEST=1 \
+ VERBOSE=1 \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ AR="$(tc-getAR)" \
+ RANLIB="$(tc-getRANLIB)" \
+ TC_EXTRA_CFLAGS="${CFLAGS}" \
+ TC_EXTRA_CXXFLAGS="${CXXFLAGS}" \
+ TC_EXTRA_LFLAGS="${LDFLAGS}" \
+ WX_CONFIG="${WX_CONFIG}" \
+ PKCS11_INC="${T}/pkcs11/"
+}
+
+src_test() {
+ "${S}/Main/truecrypt" --text --test || die "tests failed"
+}
+
+src_install() {
+ dobin Main/truecrypt
+ dodoc Readme.txt
+ exeinto "/$(get_libdir)/rcscripts/addons"
+ newexe "${FILESDIR}/${PN}-stop.sh" "${PN}-stop.sh"
+
+ newinitd "${FILESDIR}/${PN}.init" ${PN}
+
+ if use X; then
+ newicon Resources/Icons/TrueCrypt-48x48.xpm truecrypt.xpm
+ make_desktop_entry ${PN} "TrueCrypt" ${PN} "System"
+ fi
+
+ pax-mark -m "${D}/usr/bin/truecrypt"
+}
+
+pkg_postinst() {
+ elog "There is now an init script for TrueCrypt for Baselayout-2."
+ elog "If you are a baselayout-2 user and you would like the TrueCrypt"
+ elog "mappings removed on shutdown in order to prevent other file systems"
+ elog "from unmounting then run:"
+ elog "rc-update add truecrypt boot"
+ elog
+
+ ewarn "If you're getting errors about DISPLAY while using the terminal"
+ ewarn "it's a known upstream bug. To use TrueCrypt from the terminal"
+ ewarn "all that's necessary is to run: unset DISPLAY"
+ ewarn "This will make the display unaccessable from that terminal "
+ ewarn "but at least you will be able to access your volumes."
+ ewarn
+
+ ewarn "TrueCrypt has a very restrictive license. Please be explicitly aware"
+ ewarn "of the limitations on redistribution of binaries or modified source."
+}
diff --git a/app-crypt/xca/Manifest b/app-crypt/xca/Manifest
new file mode 100644
index 000000000000..48478d93b6df
--- /dev/null
+++ b/app-crypt/xca/Manifest
@@ -0,0 +1 @@
+DIST xca-1.1.0.tar.gz 854925 SHA256 997b62b523f6581f0d96a5f5ba2fa31dcdd2b3cf1ffe924f5c69a931b0dd44df SHA512 c22a594c61f63c71e8bc7c38ccdfabe05903a33bf5116630ca4c5072b725e551a128b10f624d01a464695d739fb9d77a510b3ced99fedc5d5378cb5fd563d954 WHIRLPOOL 1b58ec3dce44e0eb101265f7b1e68695ea2121c795f7d5f6a5349c812469c50f618ce34a5985991432b49a910b2c34fd3eb8e88ac735078a6e063801f1731be0
diff --git a/app-crypt/xca/files/xca-1.0.0-desktop.patch b/app-crypt/xca/files/xca-1.0.0-desktop.patch
new file mode 100644
index 000000000000..0d3516064ded
--- /dev/null
+++ b/app-crypt/xca/files/xca-1.0.0-desktop.patch
@@ -0,0 +1,8 @@
+--- misc/xca.desktop 2012-05-12 05:37:14.000000000 -0400
++++ xca.desktop.new 2013-01-03 19:43:35.877856711 -0500
+@@ -7,5 +7,5 @@
+ Icon=xca-32x32
+ Terminal=false
+-Categories=Application;Utility;Qt;
++Categories=Utility;Qt;
+ MimeType=application/x-xca-database;application/x-xca-template;application/x-x509-ca-cert;application/pkcs10;application/x-pkcs7-certificates;application/x-pkcs12;
diff --git a/app-crypt/xca/files/xca-1.1.0-ec.patch b/app-crypt/xca/files/xca-1.1.0-ec.patch
new file mode 100644
index 000000000000..617f7a14c31e
--- /dev/null
+++ b/app-crypt/xca/files/xca-1.1.0-ec.patch
@@ -0,0 +1,124 @@
+From ca758f29c89d87581b244c652f7a14c8306cc994 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Wed, 7 Jan 2015 14:43:37 +0200
+Subject: [PATCH] Add more EC conditionals
+
+Upstream bug:
+https://sourceforge.net/p/xca/patches/16/
+
+---
+ lib/pki_scard.cpp | 12 ++++++++++++
+ widgets/MW_help.cpp | 2 +-
+ widgets/NewKey.cpp | 2 +-
+ 3 files changed, 14 insertions(+), 2 deletions(-)
+
+diff --git a/lib/pki_scard.cpp b/lib/pki_scard.cpp
+index 444c81d..547c932 100644
+--- a/lib/pki_scard.cpp
++++ b/lib/pki_scard.cpp
+@@ -237,7 +237,9 @@ pk11_attlist pki_scard::objectAttributesNoId(EVP_PKEY *pk, bool priv) const
+ QByteArray ba;
+ RSA *rsa = pk->pkey.rsa;
+ DSA *dsa = pk->pkey.dsa;
++#ifndef OPENSSL_NO_EC
+ EC_KEY *ec = pk->pkey.ec;
++#endif
+
+ pk11_attlist attrs(pk11_attr_ulong(CKA_CLASS,
+ priv ? CKO_PRIVATE_KEY : CKO_PUBLIC_KEY));
+@@ -254,6 +256,7 @@ pk11_attlist pki_scard::objectAttributesNoId(EVP_PKEY *pk, bool priv) const
+ pk11_attr_data(CKA_SUBPRIME, dsa->q, false) <<
+ pk11_attr_data(CKA_BASE, dsa->g, false);
+ break;
++#ifndef OPENSSL_NO_EC
+ case EVP_PKEY_EC:
+ ba = i2d_bytearray(I2D_VOID(i2d_ECPKParameters),
+ EC_KEY_get0_group(ec));
+@@ -261,6 +264,7 @@ pk11_attlist pki_scard::objectAttributesNoId(EVP_PKEY *pk, bool priv) const
+ attrs << pk11_attr_ulong(CKA_KEY_TYPE, CKK_EC) <<
+ pk11_attr_data(CKA_EC_PARAMS, ba);
+ break;
++#endif
+ default:
+ throw errorEx(QString("Unkown Keytype %d").arg(pk->type));
+
+@@ -330,7 +334,9 @@ void pki_scard::store_token(slotid slot, EVP_PKEY *pkey)
+ QByteArray ba;
+ RSA *rsa = pkey->pkey.rsa;
+ DSA *dsa = pkey->pkey.dsa;
++#ifndef OPENSSL_NO_EC
+ EC_KEY *ec = pkey->pkey.ec;
++#endif
+ pk11_attlist pub_atts;
+ pk11_attlist priv_atts;
+ QList<CK_OBJECT_HANDLE> objects;
+@@ -381,6 +387,7 @@ void pki_scard::store_token(slotid slot, EVP_PKEY *pkey)
+ priv_atts << pk11_attr_data(CKA_VALUE, dsa->priv_key, false);
+ pub_atts << pk11_attr_data(CKA_VALUE, dsa->pub_key, false);
+ break;
++#ifndef OPENSSL_NO_EC
+ case EVP_PKEY_EC: {
+ /* Public Key */
+ BIGNUM *point;
+@@ -410,6 +417,7 @@ void pki_scard::store_token(slotid slot, EVP_PKEY *pkey)
+ EC_KEY_get0_private_key(ec));
+ break;
+ }
++#endif
+ default:
+ throw errorEx(QString("Unkown Keytype %d").arg(pkey->type));
+
+@@ -459,11 +467,13 @@ QList<int> pki_scard::possibleHashNids()
+ case CKM_DSA_SHA1: nids << NID_sha1; break;
+ }
+ break;
++#ifndef OPENSSL_NO_EC
+ case EVP_PKEY_EC:
+ switch (mechanism) {
+ case CKM_ECDSA_SHA1: nids << NID_sha1; break;
+ }
+ break;
++#endif
+ }
+ }
+ if (nids.count() == 0) {
+@@ -473,7 +483,9 @@ QList<int> pki_scard::possibleHashNids()
+ NID_sha384 << NID_sha512 << NID_ripemd160;
+ break;
+ case EVP_PKEY_DSA:
++#ifndef OPENSSL_NO_EC
+ case EVP_PKEY_EC:
++#endif
+ nids << NID_sha1;
+ break;
+ }
+diff --git a/widgets/MW_help.cpp b/widgets/MW_help.cpp
+index 67faa2a..c13c309 100644
+--- a/widgets/MW_help.cpp
++++ b/widgets/MW_help.cpp
+@@ -65,7 +65,7 @@ void MainWindow::about()
+ }
+ #endif
+ #else
+- brainpool = "(Elliptic Curve Cryptography support disabled)"
++ brainpool = "(Elliptic Curve Cryptography support disabled)";
+ #endif
+ openssl = SSLeay_version(SSLEAY_VERSION);
+ qt = qVersion();
+diff --git a/widgets/NewKey.cpp b/widgets/NewKey.cpp
+index 824456d..0dba2c2 100644
+--- a/widgets/NewKey.cpp
++++ b/widgets/NewKey.cpp
+@@ -79,8 +79,8 @@ class keyListItem
+ */
+ ec_flags = CKF_EC_F_P | CKF_EC_F_2M;
+ }
+- }
+ #endif
++ }
+ printname = QString("%1 #%2 (%3 Key of %4 - %5 bits)").
+ arg(ti.label()).arg(ti.serial()).
+ arg(tl->name).
+--
+2.0.5
+
diff --git a/app-crypt/xca/metadata.xml b/app-crypt/xca/metadata.xml
new file mode 100644
index 000000000000..d80f3df4eec7
--- /dev/null
+++ b/app-crypt/xca/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <upstream>
+ <remote-id type="sourceforge">xca</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/xca/xca-1.1.0.ebuild b/app-crypt/xca/xca-1.1.0.ebuild
new file mode 100644
index 000000000000..0ed5bc3a9b3b
--- /dev/null
+++ b/app-crypt/xca/xca-1.1.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A GUI to OpenSSL, RSA public keys, certificates, signing requests and revokation lists"
+HOMEPAGE="http://xca.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="bindist"
+
+RDEPEND=">=dev-libs/openssl-0.9.8:*[bindist=]
+ dev-qt/qtgui:4"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.0.0-desktop.patch
+ epatch "${FILESDIR}"/${P}-ec.patch
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ STRIP=true
+}
+
+src_compile() {
+ # enforce all to avoid the automatic silent rules
+ emake all
+}
+
+src_install() {
+ # non standard destdir
+ emake install destdir="${ED}"
+
+ insinto /etc/xca
+ doins misc/*.txt
+}
diff --git a/app-crypt/xor-analyze/Manifest b/app-crypt/xor-analyze/Manifest
new file mode 100644
index 000000000000..d62ae5261916
--- /dev/null
+++ b/app-crypt/xor-analyze/Manifest
@@ -0,0 +1 @@
+DIST xor-analyze-0.5.tar.gz 26635 SHA256 5f66b0f11fd284335780781aa0b18abef4d03fae7808d5e99053ee5f05d41ce9 SHA512 e28aef799dc6f64a57609638f578bbe66c3ced5784599a65be6bf4ee14921600b7d292880f1288b5ad81ed3dd0897b6aeff2d741b96efc30cf0eab453e4b21b1 WHIRLPOOL b81bf3f384fc085a9ee5b0b4ab552efc9fff2d47a2f0b9e6fb2b1842a6e30202a7d7ec104c1beac680c0be6caedb4b770231b2ec6cd9f0b204361f0fc92b7b35
diff --git a/app-crypt/xor-analyze/metadata.xml b/app-crypt/xor-analyze/metadata.xml
new file mode 100644
index 000000000000..effbbf33eac8
--- /dev/null
+++ b/app-crypt/xor-analyze/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><email>maintainer-needed@gentoo.org</email></maintainer>
+</pkgmetadata>
diff --git a/app-crypt/xor-analyze/xor-analyze-0.5.ebuild b/app-crypt/xor-analyze/xor-analyze-0.5.ebuild
new file mode 100644
index 000000000000..6d09b34370db
--- /dev/null
+++ b/app-crypt/xor-analyze/xor-analyze-0.5.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit toolchain-funcs
+
+DESCRIPTION="program for cryptanalyzing xor 'encryption' with variable key length"
+HOMEPAGE="http://www.habets.pp.se/synscan/programs.php?prog=xor-analyze"
+SRC_URI="http://www.habets.pp.se/synscan/files/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+src_compile() {
+ rm -f Makefile
+ emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" xor-analyze xor-enc || die
+}
+
+src_install() {
+ dobin xor-analyze xor-enc || die
+ dosym xor-enc /usr/bin/xor-dec
+ dodoc README TODO
+}
diff --git a/app-crypt/yubikey-neo-manager/Manifest b/app-crypt/yubikey-neo-manager/Manifest
new file mode 100644
index 000000000000..c8e21df2939f
--- /dev/null
+++ b/app-crypt/yubikey-neo-manager/Manifest
@@ -0,0 +1,3 @@
+DIST yubikey-neo-manager-1.1.0.tar.gz 119986 SHA256 eb8cc90bf4818feffe360d6330ebafa47452a1ce9c14900e13fcdd4cb921c837 SHA512 ee1bff88946be85cd3127a92deceb826b8bd35da76d3356993e1a369cb9119d6267a708a0023afeb185adcb1e4cdbaaa1c8983fd0cac32c51a4ece81840e8553 WHIRLPOOL a7123760c51333af30343b5dcff56398754aa4c214afdba75473d7555983aff9988d1ba0db5c12314170b0a810ed5d609cd3736258101198ab3b417133cd9957
+DIST yubikey-neo-manager-1.2.1.tar.gz 120802 SHA256 b09e59576dd6cb664966e4848854f728b8162ae74d35f87825d9a8bff07f018a SHA512 37b4807419803bb303b88b185293b49d5475c51d564614636ca1ead0c06efdb0ec867dac8de8b0030ab1ea85a726676bb63abdcc352428cb5a18068556a3b1b8 WHIRLPOOL e4a4e32d2d94dae0cf02abaff4bc9c2d281bc6bdf21d9dea76c2d6c05052a6a6bffc2955ee912bc5adb6ae070af3b10216691bfd9764b6895df7a3dedadb780b
+DIST yubikey-neo-manager-1.3.0.tar.gz 121242 SHA256 d8dba9ec6ee885af17b6c6b6b88fdd5df7b994cbee64946253a43713b12075c6 SHA512 fc5690d73fdc8cd1119c1c693bf31fd0b0f7145fa04af437d84e2f0f513798a88d44e80179d6b02f7641f61a9a1fd27d909518dfa1d881cc9ffb19cd5ad7c398 WHIRLPOOL 9c09bf133bb04926453ca05f41ca4d0825874b7320f2990743caa110330775cceb3049f7181788f1bbf2fae996e6c98df50760b9e8a5e7714a6c965bfb0013bd
diff --git a/app-crypt/yubikey-neo-manager/metadata.xml b/app-crypt/yubikey-neo-manager/metadata.xml
new file mode 100644
index 000000000000..ea116bbc890c
--- /dev/null
+++ b/app-crypt/yubikey-neo-manager/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>crypto</herd>
+ <maintainer>
+ <email>flameeyes@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Yubico/libykneomgr</remote-id>
+ <remote-id type="pypi">yubikey-neo-manager</remote-id>
+ <bugs-to>https://github.com/Yubico/libykneomgr/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.1.0.ebuild b/app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.1.0.ebuild
new file mode 100644
index 000000000000..0666ab1f22fc
--- /dev/null
+++ b/app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.1.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1
+
+DESCRIPTION="Cross platform personalization tool for the YubiKey NEO"
+HOMEPAGE="https://developers.yubico.com/yubikey-neo-manager/"
+SRC_URI="https://developers.yubico.com/${PN}/Releases/${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+CDEPEND="
+ dev-python/pyside[webkit,${PYTHON_USEDEP}]
+ app-crypt/libu2f-host
+ app-crypt/libykneomgr
+ sys-auth/ykpers"
+
+DEPEND="
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ >=dev-python/nose-1.0[${PYTHON_USEDEP}]
+ dev-python/pycrypto[${PYTHON_USEDEP}]
+ ${CDEPEND}"
+
+RDEPEND="${CDEPEND}"
+
+DOCS=( NEWS README )
+
+python_test() {
+ nosetests || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ doman scripts/neoman.1
+ domenu resources/neoman.desktop
+ doicon resources/neoman.xpm
+ newicon -s 128 resources/neoman-large.png neoman.png
+}
diff --git a/app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.2.1.ebuild b/app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.2.1.ebuild
new file mode 100644
index 000000000000..0666ab1f22fc
--- /dev/null
+++ b/app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.2.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1
+
+DESCRIPTION="Cross platform personalization tool for the YubiKey NEO"
+HOMEPAGE="https://developers.yubico.com/yubikey-neo-manager/"
+SRC_URI="https://developers.yubico.com/${PN}/Releases/${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+CDEPEND="
+ dev-python/pyside[webkit,${PYTHON_USEDEP}]
+ app-crypt/libu2f-host
+ app-crypt/libykneomgr
+ sys-auth/ykpers"
+
+DEPEND="
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ >=dev-python/nose-1.0[${PYTHON_USEDEP}]
+ dev-python/pycrypto[${PYTHON_USEDEP}]
+ ${CDEPEND}"
+
+RDEPEND="${CDEPEND}"
+
+DOCS=( NEWS README )
+
+python_test() {
+ nosetests || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ doman scripts/neoman.1
+ domenu resources/neoman.desktop
+ doicon resources/neoman.xpm
+ newicon -s 128 resources/neoman-large.png neoman.png
+}
diff --git a/app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.3.0.ebuild b/app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.3.0.ebuild
new file mode 100644
index 000000000000..00a11ffd92d3
--- /dev/null
+++ b/app-crypt/yubikey-neo-manager/yubikey-neo-manager-1.3.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1
+
+DESCRIPTION="Cross platform personalization tool for the YubiKey NEO"
+HOMEPAGE="https://developers.yubico.com/yubikey-neo-manager/"
+SRC_URI="
+ mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
+ https://developers.yubico.com/${PN}/Releases/${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+CDEPEND="
+ dev-python/pyside[webkit,${PYTHON_USEDEP}]
+ app-crypt/libu2f-host
+ app-crypt/libykneomgr
+ sys-auth/ykpers"
+
+DEPEND="
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ >=dev-python/nose-1.0[${PYTHON_USEDEP}]
+ dev-python/pycrypto[${PYTHON_USEDEP}]
+ ${CDEPEND}"
+
+RDEPEND="${CDEPEND}"
+
+DOCS=( NEWS README )
+
+python_test() {
+ nosetests || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ doman scripts/neoman.1
+ domenu resources/neoman.desktop
+ doicon resources/neoman.xpm
+ newicon -s 128 resources/neoman-large.png neoman.png
+}