summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEray Aslan <eras@gentoo.org>2011-06-27 07:03:04 +0000
committerEray Aslan <eras@gentoo.org>2011-06-27 07:03:04 +0000
commit17d803c19391f1e3b4ee9ed6aaa9db9e4720eb12 (patch)
treeb60ee346cf72d6f940e04f0d7d0c6803212cdf01
parentVersion bump (bug #370665 by Paolo Pedroni). (diff)
downloadhistorical-17d803c19391f1e3b4ee9ed6aaa9db9e4720eb12.tar.gz
historical-17d803c19391f1e3b4ee9ed6aaa9db9e4720eb12.tar.bz2
historical-17d803c19391f1e3b4ee9ed6aaa9db9e4720eb12.zip
Version bump - bug #370407. Herd from no-herd to net-mail
Package-Manager: portage-2.1.10.3/cvs/Linux x86_64
-rw-r--r--mail-filter/opendkim/ChangeLog11
-rw-r--r--mail-filter/opendkim/Manifest29
-rw-r--r--mail-filter/opendkim/files/opendkim-2.4.0-ipv6.patch18
-rw-r--r--mail-filter/opendkim/files/opendkim-2.4.0-oversign.patch14
-rw-r--r--mail-filter/opendkim/files/opendkim.init.r255
-rw-r--r--mail-filter/opendkim/metadata.xml4
-rw-r--r--mail-filter/opendkim/opendkim-2.4.0.ebuild202
7 files changed, 328 insertions, 5 deletions
diff --git a/mail-filter/opendkim/ChangeLog b/mail-filter/opendkim/ChangeLog
index b36e7e9712b9..4e0fbcbd3cf1 100644
--- a/mail-filter/opendkim/ChangeLog
+++ b/mail-filter/opendkim/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for mail-filter/opendkim
-# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/mail-filter/opendkim/ChangeLog,v 1.21 2010/11/30 11:27:37 dragonheart Exp $
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/mail-filter/opendkim/ChangeLog,v 1.22 2011/06/27 07:03:04 eras Exp $
+
+*opendkim-2.4.0 (27 Jun 2011)
+
+ 27 Jun 2011; Eray Aslan <eras@gentoo.org> +opendkim-2.4.0.ebuild,
+ +files/opendkim-2.4.0-ipv6.patch, +files/opendkim-2.4.0-oversign.patch,
+ +files/opendkim.init.r2, metadata.xml:
+ Version bump - bug #370407. Herd from no-herd to net-mail
*opendkim-2.2.2 (30 Nov 2010)
diff --git a/mail-filter/opendkim/Manifest b/mail-filter/opendkim/Manifest
index 64ab8528ea87..68b6b68a635d 100644
--- a/mail-filter/opendkim/Manifest
+++ b/mail-filter/opendkim/Manifest
@@ -1,13 +1,38 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+AUX opendkim-2.4.0-ipv6.patch 765 RMD160 607f7d55c6bf6d4453651f899927e36682ec2673 SHA1 bc7a1fcae1aff97366e60612e2052ef7b03be14d SHA256 ab04590e0ca8543e0bff17f243134e265f36095a4a23d044521c9a07701b897d
+AUX opendkim-2.4.0-oversign.patch 578 RMD160 caf4e6e812793c8135bd91170b924486e6215d29 SHA1 38a8a5ecf7cd47a3d79a3bdd1e7ff630bdd0804a SHA256 0053d8a06e82855944ae06eaa16c0949a747743160f69bb274483b685523faac
AUX opendkim.init 1403 RMD160 515d7ac2956c79602cad27a6866ee99f0bafc3d3 SHA1 f9b4134325607868b734720d36ae6945df79c433 SHA256 91d833fb67800f298a5ab876b38e1e6c02f0f7e13424b6fdc612a5494c8862ed
+AUX opendkim.init.r2 1533 RMD160 11dc7939f7f7c2890504cd06295f598f45f35ae1 SHA1 b68137fb885ae39170dfcebc78cce699813286d0 SHA256 0e8fab90020c109f602d8367a6501bfb3b397a50f020b6fade5024e2facf593c
DIST opendkim-2.0.3.tar.gz 964034 RMD160 964659db05799a555a5a5ba8427cc63044862abb SHA1 c26fcf1edd70f1aac767f687043b13a3597cb19d SHA256 7d2ef1e97f2b878ddd902ecf97763da60f439f799f4fc8ec5b0c8d216e84ee38
DIST opendkim-2.0.4.tar.gz 965804 RMD160 30bf63ca214942b48d2d4d40f6b1971752ddbf52 SHA1 34b6e315bed100c11b073860406eb77ca320dc82 SHA256 ce1807613a9d194d3c0dce949f8e26bc7b2f1e1c6c908728cdec748c54cda40e
DIST opendkim-2.1.0.tar.gz 1004640 RMD160 17d799c2dacfd0114addcd707817294ee49cc106 SHA1 fa19ffd96e0629abc65dd410eeb076429d5fd016 SHA256 70dca767cbd029f5c02879e0ccb399c6c886ae6bbb2c196f0775020c8cc2a039
DIST opendkim-2.1.3.tar.gz 1011019 RMD160 09a215481eda0dee4f5248b1f1981ccf17f800f2 SHA1 81911d2a2ff15f49c039b0c90d6209e5ec7f76a3 SHA256 c889f18ec98ff9454bc211eaad4c746365a763500127ca022e03c087a7028eba
DIST opendkim-2.2.2.tar.gz 1098812 RMD160 6122e160b79de039d5ae0ab5a2f8689d51c81938 SHA1 cd79dacf24ce1ba742618d7cf676f990841172ba SHA256 049fbf05ad6c22dacd0005886e4067533af6af6ebbd9ffb76ddcd2410d84c80b
+DIST opendkim-2.4.0.tar.gz 1323170 RMD160 736836ea38cff622a76fc2cb6b881e45d9c4b907 SHA1 0e5a0d2717f1dff38ede38452d8ab59e01680e62 SHA256 824997f9d632defc37cf61c90e90252a6dd5b4c753c8e0a58edd13bfec2c1075
EBUILD opendkim-2.0.3.ebuild 5736 RMD160 d7713b03df6153e580fe8749253c538749e41275 SHA1 d3ea1826d28665e96f5c66e999255728ec345475 SHA256 d1c191ed2162dce6acf2f0562294f527bf64ff76b5f2aee3a7f5903003a05b39
EBUILD opendkim-2.0.4.ebuild 5731 RMD160 546dcc0ed648091ba417d5178d9d9ea49487f731 SHA1 51a5a59aba55f90816dba13515e39fd50d73b0de SHA256 ea74d0a18430fb74d103a8867ec670afe133e952b515e8a9abac4bacf3df8132
EBUILD opendkim-2.1.0.ebuild 5776 RMD160 8dcd9883ac320a8414f440ae7d6164792f3b8762 SHA1 baf2c827d352a7b40fa91dfa70c43f8de408f6f5 SHA256 23fb3bc45a86cf38e48bdb908161060b1d88e2fe62965ef589cdfd5521058a67
EBUILD opendkim-2.1.3.ebuild 5713 RMD160 45985ba2d0d6c391283479f277f57212fff38ca2 SHA1 49d809aa4ab3fee8a3564dc0d1a56ad29a91fc1b SHA256 3c55f96bfe414a8343b1ea22b9ecc67e6fa7861fbd290edc5ac2163a3e073888
EBUILD opendkim-2.2.2.ebuild 5971 RMD160 0bec93cf1e7f56193abb34335f4d90a9f4d0f6ef SHA1 3ad6fe129d68312dca22d35bfd829de4d353e5af SHA256 0c155beadfd75badedb11b17421e793405102ed71f7fb6db66fe0ff0c7475795
-MISC ChangeLog 4676 RMD160 816817af7ac362095454e4c902380622d5dd0005 SHA1 779300300793396dd101deb5e3ae3a3461608172 SHA256 dba8ade1ee397c710d737c0cbbf99279ae6c5533e0e3a9d414aae3e42d1f7513
-MISC metadata.xml 1444 RMD160 25d767047ea540eeb22f7f2356e83548be5954f9 SHA1 a9d03f567205963ded4a26eb9f9b61f13c6a5b58 SHA256 8fb69e68d1fd09bde49461b53470ec8047de2fa2af497278a5fe514a3dd828f4
+EBUILD opendkim-2.4.0.ebuild 6349 RMD160 39864d67e9b4e7a6de0dce052f4bcb2645369568 SHA1 2a231f0eaab383e39ec17b0a9073517d5b3353cc SHA256 c7939b77bf68d448b7490461b9587d65ecb071a30e3ff3bda6d2c86877283696
+MISC ChangeLog 4944 RMD160 5d803009a5ee12959006eb6f7e8ee4d0c3e7c499 SHA1 08dcf4dd0035343447911319f89ce0bf39f5352e SHA256 ca73de9bfb4868f956c0617da89533b469803a5c4b7ca51396665554e06cc8cf
+MISC metadata.xml 1551 RMD160 34cc4bf6611d1229bc16e1cb0ab33f27e0887fe9 SHA1 5932876ea49f29184d4e9f13181f9493925b71df SHA256 c439598ff404fe8bc7b9f6652d61fa7a421adbbd6ba07e0eead0bea3826f6614
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.17 (GNU/Linux)
+
+iQIcBAEBCAAGBQJOCCs0AAoJEHfx8XVYajsfCvkP/3yhk62cLIYHVnaOdvoqhgfK
+bq1DBw+0PWEeItvWI5Zdr2BopqdDng7zVs79OKKietbilcXvQKolV4CfGjK5SYbn
+mTa4eaSREQNEiHBqgWGC/DwURz95hSQi3ufsabDHtLGWrXRmuljhVCqw1+UnBYlm
+c5xEWCNzm6rs/AYjeiHb1/z9oGnve8iTYWa+8FNxN4kL5idPSxhLkt22dqX97P+b
+Uh2dpq1rf2El+bCP2yI6NWj/tQ0fPc+HNuxtmJjzFHU6CE4WdMa9m1Sq6MY7yvjH
+7snPvr1zmf89JmYFJPFOjgl2QQ3gfVe2l0u4iDk9CVmC5MjDqxm7EMYePd3mDoIA
+tEFWel5gQPc9TJyznOedswHzA/r+1BPCwWujOxIb+RdrLqk+htBqgmFUC2e1xjoa
+QRQnWymAx1p7zy3lbNIAzi2HUNMEvNUomwS1cXzynwEzIKhLDzSUQmG3pUIJcGQU
+o/Ujhnhi5VICCYFU8wDBLRVMmolI/saaf1wV1efpvmhPkCbG9gICc2sxP+RLnthz
+J7oP9mMb5QAQ/QA+PZnn+tc8hfNRJbNSjiZLE7G3rgnH1gm9h8rJKB17MPJEPzNR
+NJN1WzxQlKCot/7M6Cz31/G06Ofcl8uU9xzttohFbhjCiz5A3G1Ewx99gRb+4Lwh
+Uv9FCGL/ZLz5efv92Q6u
+=p+/W
+-----END PGP SIGNATURE-----
diff --git a/mail-filter/opendkim/files/opendkim-2.4.0-ipv6.patch b/mail-filter/opendkim/files/opendkim-2.4.0-ipv6.patch
new file mode 100644
index 000000000000..334087d9de71
--- /dev/null
+++ b/mail-filter/opendkim/files/opendkim-2.4.0-ipv6.patch
@@ -0,0 +1,18 @@
+Don't assume ipv6 is available
+--- opendkim/tests/t-peer.lua 2011-03-19 06:11:53.000000000 +0200
++++ opendkim/tests/t-peer.lua 2011-06-27 09:42:25.342413931 +0300
+@@ -37,14 +37,6 @@
+ { "localhost", "192.168.1.130", SMFIR_CONTINUE },
+ { "localhost", "192.168.1.131", SMFIR_CONTINUE },
+ { "localhost", "192.168.1.132", SMFIR_ACCEPT },
+--- ipv6 tests
+- { "localhost", "9001:db8::8:800:200c:417a", SMFIR_CONTINUE },
+- { "localhost", "2001:db8::91", SMFIR_ACCEPT },
+- { "localhost", "2001:db8::fff0", SMFIR_CONTINUE },
+- { "localhost", "2001:db8::fff1", SMFIR_CONTINUE },
+- { "localhost", "2001:db8::fff2", SMFIR_CONTINUE },
+- { "localhost", "2001:db8::fff3", SMFIR_CONTINUE },
+- { "localhost", "2001:db8::fff4", SMFIR_ACCEPT }
+ }
+
+ for index = 1, table.getn(test)
diff --git a/mail-filter/opendkim/files/opendkim-2.4.0-oversign.patch b/mail-filter/opendkim/files/opendkim-2.4.0-oversign.patch
new file mode 100644
index 000000000000..1b725990d744
--- /dev/null
+++ b/mail-filter/opendkim/files/opendkim-2.4.0-oversign.patch
@@ -0,0 +1,14 @@
+diff --git a/libopendkim/dkim.c b/libopendkim/dkim.c
+index 075bb0c..cd4facc 100644
+--- a/libopendkim/dkim.c
++++ b/libopendkim/dkim.c
+@@ -4352,6 +4352,9 @@ dkim_init(void *(*caller_mallocf)(void *closure, size_t nbytes),
+ libhandle->dkiml_timeout = DEFTIMEOUT;
+ libhandle->dkiml_senderhdrs = (u_char **) dkim_default_senderhdrs;
+ libhandle->dkiml_alwayshdrs = NULL;
++#ifdef _FFR_OVERSIGN
++ libhandle->dkiml_oversignhdrs = NULL;
++#endif /* _FFR_OVERSIGN */
+ libhandle->dkiml_nalwayshdrs = 0;
+ libhandle->dkiml_mbs = NULL;
+ libhandle->dkiml_querymethod = DKIM_QUERY_UNKNOWN;
diff --git a/mail-filter/opendkim/files/opendkim.init.r2 b/mail-filter/opendkim/files/opendkim.init.r2
new file mode 100644
index 000000000000..5450daffa12a
--- /dev/null
+++ b/mail-filter/opendkim/files/opendkim.init.r2
@@ -0,0 +1,55 @@
+#!/sbin/runscript
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/mail-filter/opendkim/files/opendkim.init.r2,v 1.1 2011/06/27 07:03:04 eras Exp $
+
+CONFFILE=/etc/opendkim/${SVCNAME}.conf
+
+depend() {
+ use dns logger net
+}
+
+check_cfg() {
+
+ PIDFILE=$(sed -ne 's/^[[:space:]]*PidFile[[:space:]]\+//p' "${CONFFILE}")
+ local PIDDIR="${PIDFILE%/*}"
+ if [ ! -d "${PIDDIR}" ] ; then
+ checkpath -q -d -o milter:milter -m 0755 "${PIDDIR}" || return 1
+ fi
+ if [ ! -f "${CONFFILE}" ] ; then
+ eerror "Configuration file ${CONFFILE} is missing"
+ return 1
+ fi
+ if [ -z "${PIDFILE}" ] ; then
+ eerror "Configuration file needs PidFile setting - recommend adding 'PidFile /var/run/opendkim/${SVCNAME}.pid' to ${CONFFILE}"
+ return 1
+ fi
+
+ if egrep -q '^[[:space:]]*Background[[:space:]]+no' "${CONFFILE}" ; then
+ eerror "${SVCNAME} service cannot run with Background key set to yes!"
+ return 1
+ fi
+}
+
+start() {
+ check_cfg || return 1
+
+ # Remove stalled Unix socket if no other process is using it
+ local UNIX_SOCKET=$(sed -ne 's/^[[:space:]]*Socket[[:space:]]\+\(unix\|local\)://p' "${CONFFILE}")
+
+ if [ -S "${UNIX_SOCKET}" ] && ! fuser -s "${UNIX_SOCKET}"; then
+ rm "${UNIX_SOCKET}"
+ fi
+
+ ebegin "Starting OpenDKIM"
+ start-stop-daemon --start --pidfile "${PIDFILE}" \
+ --exec /usr/sbin/opendkim -- -x "${CONFFILE}"
+ eend $?
+}
+
+stop() {
+ check_cfg || return 1
+ ebegin "Stopping OpenDKIM"
+ start-stop-daemon --stop --pidfile "${PIDFILE}"
+ eend $?
+}
diff --git a/mail-filter/opendkim/metadata.xml b/mail-filter/opendkim/metadata.xml
index 89aa37d7279b..34807ec2df47 100644
--- a/mail-filter/opendkim/metadata.xml
+++ b/mail-filter/opendkim/metadata.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>no-herd</herd>
+<herd>net-mail</herd>
<maintainer>
<email>dragonheart@gentoo.org</email>
<name>Daniel Black</name>
@@ -27,6 +27,8 @@ using the DKIM standard. This is a fork of Sendmail's DKIM-milter</longdescripti
supports.</flag>
<flag name='lua'>Enables control over signature verification, filtering and
policy to be controlled by user defined lua scripts.</flag>
+ <flag name='poll'>Use poll() instead of select() for the provided
+ asynchronous resolver library.</flag>
</use>
</pkgmetadata>
diff --git a/mail-filter/opendkim/opendkim-2.4.0.ebuild b/mail-filter/opendkim/opendkim-2.4.0.ebuild
new file mode 100644
index 000000000000..ee0398b38ce9
--- /dev/null
+++ b/mail-filter/opendkim/opendkim-2.4.0.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/mail-filter/opendkim/opendkim-2.4.0.ebuild,v 1.1 2011/06/27 07:03:04 eras Exp $
+
+EAPI=4
+
+inherit eutils db-use
+
+# for betas
+#MY_P=${P/_b/.B}
+#S=${WORKDIR}/${PN}-2.0.0
+#SRC_URI="mirror://sourceforge/opendkim/${MY_P}.tar.gz"
+
+DESCRIPTION="A milter-based application to provide DKIM signing and verification"
+HOMEPAGE="http://opendkim.org"
+SRC_URI="mirror://sourceforge/opendkim/${P}.tar.gz"
+
+LICENSE="Sendmail-Open-Source BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="asyncdns +berkdb ldap lua opendbx poll sasl +ssl unbound"
+
+# FUTURE: diffheaders (libtre error) - bug #296813
+
+DEPEND="|| ( mail-filter/libmilter mail-mta/sendmail )
+ ssl? ( >=dev-libs/openssl-0.9.8 )
+ berkdb? ( >=sys-libs/db-3.2 )
+ opendbx? ( >=dev-db/opendbx-1.4.0 )
+ lua? ( dev-lang/lua )
+ ldap? ( net-nds/openldap )
+ sasl? ( dev-libs/cyrus-sasl )
+ unbound? ( >=net-dns/unbound-1.4.1 net-dns/dnssec-root )"
+ #diffheaders? ( dev-libs/tre )
+ #gnutls? ( >=net-libs/gnutls-2.11.7 )
+
+RDEPEND="${DEPEND}"
+
+REQUIRED_USE="sasl? ( ldap )"
+
+pkg_setup() {
+ enewgroup milter
+ # mail-milter/spamass-milter creates milter user with this home directory
+ # For consistency reasons, milter user must be created here with this home directory
+ # even though this package doesn't need a home directory for this user (#280571)
+ enewuser milter -1 -1 /var/lib/milter milter
+}
+
+src_prepare() {
+ sed -i -e 's:/var/db/dkim:/etc/opendkim:g' \
+ -e 's:/var/db/opendkim:/var/lib/opendkim:g' \
+ -e 's:/etc/mail:/etc/opendkim:g' \
+ -e 's:mailnull:milter:g' \
+ -e 's:^#[[:space:]]*PidFile.*:PidFile /var/run/opendkim/opendkim.pid:' \
+ opendkim/opendkim.conf.sample opendkim/opendkim.conf.simple.in \
+ contrib/stats/opendkim-reportstats || die
+
+ epatch "${FILESDIR}/${P}-oversign.patch"
+ epatch "${FILESDIR}/${P}-ipv6.patch"
+}
+
+src_configure() {
+ local myconf
+ if use berkdb ; then
+ myconf=$(db_includedir)
+ myconf="--with-db-incdir=${myconf#-I}"
+ myconf+=" --enable-popauth"
+ myconf+=" --enable-query_cache"
+ myconf+=" --enable-report_intervals"
+ myconf+=" --enable-stats"
+ fi
+ if use asyncdns ; then
+ if use unbound; then
+ myconf+=" --with-unbound"
+ else
+ myconf+=" --enable-arlib"
+ fi
+ else
+ myconf+=" $(use_with unbound) --disable-arlib"
+ fi
+ if use ldap; then
+ myconf+=" $(use_with sasl)"
+ fi
+ econf \
+ $(use_with berkdb db) \
+ $(use_with opendbx odbx) \
+ $(use_with lua) \
+ $(use_enable lua statsext) \
+ $(use_enable lua rbl) \
+ $(use_with ldap openldap) \
+ $(use_enable ldap ldap_caching) \
+ $(use_enable poll) \
+ ${myconf} \
+ --docdir=/usr/share/doc/${PF} \
+ --enable-filter \
+ --without-domainkeys \
+ --enable-oversign \
+ --enable-adsp_lists \
+ --enable-dkim_reputation \
+ --enable-identity_header \
+ --enable-rate_limit \
+ --enable-redirect \
+ --enable-resign \
+ --enable-replace_rules \
+ --enable-selector_header \
+ --enable-default_sender \
+ --enable-sender_macro \
+ --enable-vbr \
+ --disable-rpath \
+ --disable-live-testing
+ #$(use_enable diffheaders)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ # file collision
+ rm -f "${D}"/usr/share/man/man3/ar.3
+
+ dosbin contrib/stats/opendkim-reportstats
+ newinitd "${FILESDIR}/opendkim.init.r2" opendkim
+ dodir /etc/opendkim /var/lib/opendkim
+ fowners milter:milter /var/lib/opendkim
+
+ # default configuration
+ if [ ! -f "${ROOT}"/etc/opendkim/opendkim.conf ]; then
+ grep ^[^#] "${S}"/opendkim/opendkim.conf.simple \
+ > "${D}"/etc/opendkim/opendkim.conf
+ if use unbound; then
+ echo TrustedAnchorFile /etc/dnssec/root-anchors.txt >> "${D}"/etc/opendkim/opendkim.conf
+ fi
+ echo UserID milter >> "${D}"/etc/opendkim/opendkim.conf
+ if use berkdb; then
+ echo Statistics /var/lib/opendkim/stats.dat >> \
+ "${D}"/etc/opendkim/opendkim.conf
+ fi
+ fi
+}
+
+pkg_postinst() {
+ elog "If you want to sign your mail messages and need some help"
+ elog "please run:"
+ elog " emerge --config ${CATEGORY}/${PN}"
+ elog "It will help you create your key and give you hints on how"
+ elog "to configure your DNS and MTA."
+
+ ewarn "Make sure your MTA has r/w access to the socket file."
+ ewarn "This can be done either by setting UMask to 002 and adding MTA's user"
+ ewarn "to milter group or you can simply set UMask to 000."
+}
+
+pkg_config() {
+ local selector keysize pubkey
+
+ read -p "Enter the selector name (default ${HOSTNAME}): " selector
+ [[ -n "${selector}" ]] || selector=${HOSTNAME}
+ if [[ -z "${selector}" ]]; then
+ eerror "Oddly enough, you don't have a HOSTNAME."
+ return 1
+ fi
+ if [[ -f "${ROOT}"etc/opendkim/${selector}.private ]]; then
+ ewarn "The private key for this selector already exists."
+ else
+ einfo "Select the size of private key:"
+ einfo " [1] 512 bits"
+ einfo " [2] 1024 bits"
+ while read -n 1 -s -p " Press 1 or 2 on the keyboard to select the key size " keysize ; do
+ [[ "${keysize}" == "1" || "${keysize}" == "2" ]] && echo && break
+ done
+ case ${keysize} in
+ 1) keysize=512 ;;
+ *) keysize=1024 ;;
+ esac
+
+ # generate the private and public keys
+ opendkim-genkey -b ${keysize} -D "${ROOT}"etc/opendkim/ \
+ -s ${selector} -d '(your domain)' && \
+ chown milter:milter \
+ "${ROOT}"etc/opendkim/"${selector}".private || \
+ { eerror "Failed to create private and public keys." ; return 1; }
+ chmod go-r "${ROOT}"etc/opendkim/"${selector}".private
+ fi
+
+ # opendkim selector configuration
+ echo
+ einfo "Make sure you have the following settings in your /etc/opendkim/opendkim.conf:"
+ einfo " Keyfile /etc/opendkim/${selector}.private"
+ einfo " Selector ${selector}"
+
+ # MTA configuration
+ echo
+ einfo "If you are using Postfix, add following lines to your main.cf:"
+ einfo " smtpd_milters = unix:/var/run/opendkim/opendkim.sock"
+ einfo " non_smtpd_milters = unix:/var/run/opendkim/opendkim.sock"
+ einfo " and read http://www.postfix.org/MILTER_README.html"
+
+ # DNS configuration
+ einfo "After you configured your MTA, publish your key by adding this TXT record to your domain:"
+ cat "${ROOT}"etc/opendkim/${selector}.txt
+ einfo "t=y signifies you only test the DKIM on your domain. See following page for the complete list of tags:"
+ einfo " http://www.dkim.org/specs/rfc4871-dkimbase.html#key-text"
+ einfo
+ einfo "Also look at the ADSP http://tools.ietf.org/html/rfc5617"
+}