Add upstream patch to fix #136781 a whole load better.
authorRoy Marples <uberlord@gentoo.org>
Fri, 16 Jun 2006 11:28:55 +0000 (11:28 +0000)
committerRoy Marples <uberlord@gentoo.org>
Fri, 16 Jun 2006 11:28:55 +0000 (11:28 +0000)
Package-Manager: portage-2.1

net-mail/dovecot/ChangeLog
net-mail/dovecot/Manifest
net-mail/dovecot/dovecot-1.0_beta9-r2.ebuild [new file with mode: 0644]
net-mail/dovecot/files/digest-dovecot-1.0_beta9-r2 [new file with mode: 0644]
net-mail/dovecot/files/dovecot-1.0_beta9-ssl_listen.patch [new file with mode: 0644]

index 11e19eea9cf2095a1b5b885ec1c843ee3470feb5..61946fe31a197042a6304a1256a3c5bda1160c5a 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for net-mail/dovecot
 # Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-mail/dovecot/ChangeLog,v 1.54 2006/06/16 08:42:06 uberlord Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-mail/dovecot/ChangeLog,v 1.55 2006/06/16 11:28:55 uberlord Exp $
+
+*dovecot-1.0_beta9-r2 (16 Jun 2006)
+
+  16 Jun 2006; Roy Marples <uberlord@gentoo.org>
+  +files/dovecot-1.0_beta9-ssl_listen.patch, +dovecot-1.0_beta9-r2.ebuild:
+  Add upstream patch to fix #136781 a whole load better.
 
 *dovecot-1.0_beta9-r1 (16 Jun 2006)
 
index 88b98f954b5d2c2d110926c6655b2b4c10d252e4..97c7a7f2fafc1cc19bb3284753321ddce8c91681 100644 (file)
@@ -2,6 +2,10 @@ AUX dovecot-1.0_beta9-configure.patch 5320 RMD160 9896dc22d4f3517d024f420f5449cd
 MD5 2a79dc0c1c24b5e51d8c93c3a590c899 files/dovecot-1.0_beta9-configure.patch 5320
 RMD160 9896dc22d4f3517d024f420f5449cd9e3cb151cf files/dovecot-1.0_beta9-configure.patch 5320
 SHA256 3b230cb7c5c474a044501dd5e74aee4b4dc4e94b3dc613f1efde38c998b8023c files/dovecot-1.0_beta9-configure.patch 5320
+AUX dovecot-1.0_beta9-ssl_listen.patch 612 RMD160 0f0bd71636cb0af8b575cefb3b901dc06bd64004 SHA1 267fbbc1f96c623815b45ea1be7f275a849e43be SHA256 20a47e302d90b3b922ba218cef37ecbf2a0fa1af6f91fce71a28b96f00d932df
+MD5 6962c02a7f827ac8235b8e10fa11c962 files/dovecot-1.0_beta9-ssl_listen.patch 612
+RMD160 0f0bd71636cb0af8b575cefb3b901dc06bd64004 files/dovecot-1.0_beta9-ssl_listen.patch 612
+SHA256 20a47e302d90b3b922ba218cef37ecbf2a0fa1af6f91fce71a28b96f00d932df files/dovecot-1.0_beta9-ssl_listen.patch 612
 AUX dovecot.init 619 RMD160 b0693a3f1e4aa34f2db5389e29d79b7e669622a8 SHA1 408fc13f5a9ccd8b40e7f82f99e3b18912e24c1f SHA256 833c2121376e753c0a983cedc3854a855bce9b3765f6479aa15cad9acb23ca43
 MD5 155396035a3ecb1f5171b0432072181b files/dovecot.init 619
 RMD160 b0693a3f1e4aa34f2db5389e29d79b7e669622a8 files/dovecot.init 619
@@ -16,10 +20,14 @@ EBUILD dovecot-1.0_beta9-r1.ebuild 5112 RMD160 4a89796c50f6ccee78e32ca2accc5a89a
 MD5 54848d55bbb5965e8429fe516e681c40 dovecot-1.0_beta9-r1.ebuild 5112
 RMD160 4a89796c50f6ccee78e32ca2accc5a89a039753b dovecot-1.0_beta9-r1.ebuild 5112
 SHA256 848c5f84555c9ecb23c4f272e48a78f96aa87526c0a5531fa0fcf2b796b2033e dovecot-1.0_beta9-r1.ebuild 5112
-MISC ChangeLog 10132 RMD160 1b9546eec93a4f359d4637b1467caba51a746bcb SHA1 83ee48620eb5216d810859100ab2e69e116b4fcb SHA256 a9d8129650bb9608aae881e06415d4e0bdfd3e452a34737cefe6fa953d9ea79d
-MD5 4c506e9f155adc18fa44caf080167d87 ChangeLog 10132
-RMD160 1b9546eec93a4f359d4637b1467caba51a746bcb ChangeLog 10132
-SHA256 a9d8129650bb9608aae881e06415d4e0bdfd3e452a34737cefe6fa953d9ea79d ChangeLog 10132
+EBUILD dovecot-1.0_beta9-r2.ebuild 5037 RMD160 61c23aba34aab11e2cf2bded5d62781ac32261be SHA1 9e19601a4cf116e47c292abb521867ed62faedac SHA256 254bb9452b8ad71b344c4238d733504db412794971118080684c8711cb2cef44
+MD5 ac23260f50a03f29212593e0eaa7faf0 dovecot-1.0_beta9-r2.ebuild 5037
+RMD160 61c23aba34aab11e2cf2bded5d62781ac32261be dovecot-1.0_beta9-r2.ebuild 5037
+SHA256 254bb9452b8ad71b344c4238d733504db412794971118080684c8711cb2cef44 dovecot-1.0_beta9-r2.ebuild 5037
+MISC ChangeLog 10351 RMD160 ba996d4dd329fd747180238845a33ca9e29b430c SHA1 ad490168832ef2e1388e601f6dbd554baae08713 SHA256 a0e5087afb89ea62716a806361de44aa4433728be848d8f3c4ac898b05009e21
+MD5 03262c7531d6d0a7fb17088800c9a7a6 ChangeLog 10351
+RMD160 ba996d4dd329fd747180238845a33ca9e29b430c ChangeLog 10351
+SHA256 a0e5087afb89ea62716a806361de44aa4433728be848d8f3c4ac898b05009e21 ChangeLog 10351
 MISC metadata.xml 252 RMD160 97c0c41abc4b61586ab48653ced79067cb964aa6 SHA1 57de811cfb02936b35c4bef2108018e6b2697a99 SHA256 419ffa57f459d89a62dd42ee4bb01934f03e6913b470323f5b2b8a7c89e2dc66
 MD5 b6ff89c08602229bdd234da83a89df77 metadata.xml 252
 RMD160 97c0c41abc4b61586ab48653ced79067cb964aa6 metadata.xml 252
@@ -30,3 +38,6 @@ SHA256 ea917d2411bb907e433ecae9ae8c396bb0bcf20e54bfd69e95338d2aca4674b5 files/di
 MD5 8fcd45ae0df65f8003fff7b5cf52ca34 files/digest-dovecot-1.0_beta9-r1 256
 RMD160 0f4e4d23d25958324702954e021b86156ca4d319 files/digest-dovecot-1.0_beta9-r1 256
 SHA256 ac470d07b4fb41fbfd3758040462ab8ab425d5331d649360ec887e3157c0bcb9 files/digest-dovecot-1.0_beta9-r1 256
+MD5 8fcd45ae0df65f8003fff7b5cf52ca34 files/digest-dovecot-1.0_beta9-r2 256
+RMD160 0f4e4d23d25958324702954e021b86156ca4d319 files/digest-dovecot-1.0_beta9-r2 256
+SHA256 ac470d07b4fb41fbfd3758040462ab8ab425d5331d649360ec887e3157c0bcb9 files/digest-dovecot-1.0_beta9-r2 256
diff --git a/net-mail/dovecot/dovecot-1.0_beta9-r2.ebuild b/net-mail/dovecot/dovecot-1.0_beta9-r2.ebuild
new file mode 100644 (file)
index 0000000..89c70f6
--- /dev/null
@@ -0,0 +1,176 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-mail/dovecot/dovecot-1.0_beta9-r2.ebuild,v 1.1 2006/06/16 11:28:55 uberlord Exp $
+
+inherit autotools eutils
+
+DESCRIPTION="An IMAP and POP3 server written with security primarily in mind"
+HOMEPAGE="http://dovecot.org/"
+MY_P="${P/_/.}"
+S="${WORKDIR}/${MY_P}"
+SRC_URI="http://dovecot.org/releases/${MY_P}.tar.gz"
+
+SLOT="0"
+LICENSE="LGPL-2.1"
+KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86"
+
+IUSE="debug doc ipv6 kerberos ldap mbox mysql pop3d pam postgres ssl vpopmail"
+
+DEPEND=">=sys-apps/sed-4
+       kerberos? ( virtual/krb5 )
+       ldap? ( net-nds/openldap )
+       pam? ( virtual/pam )
+       ssl? ( dev-libs/openssl )
+       postgres? ( dev-db/postgresql )
+       mysql? ( dev-db/mysql )
+       vpopmail? ( net-mail/vpopmail )"
+
+RDEPEND="${DEPEND}
+       >=net-mail/mailbase-0.00-r8"
+
+pkg_setup() {
+       # Add user and group for login process (same as for fedora/redhat)
+       enewgroup dovecot 97
+       enewuser dovecot 97 -1 /dev/null dovecot
+}
+
+src_unpack() {
+       unpack ${A}
+       cd "${S}"
+
+       # Fix ssl_listen
+       epatch "${FILESDIR}/${P}"-ssl_listen.patch
+
+       # Get dovecot to autodetect nice kernel features such as inotify and kqueue
+       epatch "${FILESDIR}/${P}"-configure.patch
+       eautoconf
+       epunt_cxx
+}
+
+src_compile() {
+       local myconf
+       use ssl && myconf="${myconf} --with-ssl=openssl" \
+               || myconf="${myconf} --without-ssl"
+
+       econf --localstatedir=/var \
+               $(use_enable debug) \
+               $(use_enable ipv6) \
+               $(use_with kerberos gssapi) \
+               $(use_with ldap) \
+               $(use_with mysql) \
+               $(use_with pam) \
+               $(use_with pop3d) \
+               $(use_with postgres pgsql) \
+               $(use_with vpopmail) \
+               ${myconf} || die "configure failed"
+       emake || die "make failed"
+}
+
+src_install () {
+       make DESTDIR="${D}" install || die "make install failed"
+
+       newinitd "${FILESDIR}"/dovecot.init dovecot
+
+       # Create the dovecot.conf file from the dovecot-example.conf file that
+       # the dovecot folks nicely left for us....
+       mv "${D}"/etc/dovecot-example.conf "${D}"/etc/dovecot.conf
+       fperms 0600 /etc/dovecot.conf
+
+       # .maildir is the Gentoo default, but we need to support mbox to
+       local mailenv="maildir:%h/.maildir"
+       if use mbox ; then
+               mailenv="mbox:/var/spool/mail/%u:INDEX=/var/dovecot/%u"
+               keepdir /var/dovecot
+               sed -i -e 's|#mail_extra_groups =|mail_extra_groups = mail|' \
+                       "${D}"/etc/dovecot.conf
+       fi
+       sed -i -e \
+               "s|#default_mail_env =|default_mail_env = ${mailenv}|" \
+               "${D}"/etc/dovecot.conf
+
+       # We're using pam files (imap and pop3) provided by mailbase
+       if use pam ; then
+               sed -i -e '/passdb pam/, /^[ \t]*}/ s|#args = dovecot|args = "\*"|' \
+                       "${D}"/etc/dovecot.conf
+       fi
+
+       # Listen on ipv6 and ipv4
+       if use ipv6 ; then
+               sed -i -e 's/^#listen = \*/listen = \[::\]/g' \
+                       "${D}"/etc/dovecot.conf
+       fi
+
+       # Install SQL configuration
+       if use mysql || use postgres ; then
+               cp doc/dovecot-sql.conf "${D}"/etc
+               fperms 600 /etc/dovecot-sql.conf
+               sed -i -e '/db sql/,/args/ s|=|= /etc/dovecot-sql.conf|' \
+                       "${D}"/etc/dovecot.conf
+       fi
+
+       # Install LDAP configuration
+       if use ldap ; then
+               cp doc/dovecot-ldap.conf "${D}"/etc
+               fperms 600 /etc/dovecot-ldap.conf
+               sed -i -e '/db ldap/,/args/ s|=|= /etc/dovecot-ldap.conf|' \
+                       "${D}"/etc/dovecot.conf
+       fi
+
+       # Documentation
+       rm -rf "${D}"/usr/share/doc/dovecot
+       if use doc ; then
+               dodoc AUTHORS NEWS README TODO dovecot-example.conf
+               dodoc doc/*.txt doc/*.conf doc/*.cnf doc/mkcert.sh
+       fi
+
+       # Create SSL certificates
+       if use ssl ; then
+               dodir /etc/ssl/certs
+               dodir /etc/ssl/private
+               # Let's not make a new certificate if we already have one
+               if ! [[ -e /etc/ssl/certs/dovecot.pem && \
+                       -e /etc/ssl/private/dovecot.pem ]]; then
+                       einfo "Generating X.509 certificate for SSL"
+                       pushd doc >/dev/null && \
+                               SSLDIR="${D}"/etc/ssl sh mkcert.sh && \
+                               popd >/dev/null
+               fi
+       fi
+
+       dodir /var/run/dovecot
+       fowners root:0 /var/run/dovecot
+       fperms 0700 /var/run/dovecot
+       keepdir /var/run/dovecot/login
+       fowners root:dovecot /var/run/dovecot/login
+       fperms 0750 /var/run/dovecot/login
+}
+
+get_config_var() {
+       sed -n 's/^[[:space:]]\?base_dir[[:space:]]*="*\([^#"]\+\)"*/\1/p' \
+               /etc/dovecot.conf
+}
+
+pkg_postinst() {
+       einfo "The dovecot configuration has vastly changed since 0.99."
+       einfo "You are encouraged to start afresh with a new configuration file."
+       einfo "see http://wiki.dovecot.org/ for configuration examples."
+
+       local base_dir="$(get_config_var base_dir)"
+       base_dir="${basedir:-/var/run/dovecot}"
+       if [[ ! -e "${ROOT}/${base_dir}/login/ssl-parameters.dat" ]] ; then
+               einfo
+               einfo "Dovecot requires DH SSL Parameters if you use SSL connections"
+               einfo "These take some time to make, and dovecot will create them before"
+               einfo "it allows any SSL connections."
+               einfo "You can create them now before starting dovecot like so"
+               einfo "   emerge --config =${PF}"
+       fi
+}
+
+pkg_config() {
+       local base_dir="$(get_config_var base_dir)"
+       base_dir="${base_dir:-/var/run/dovecot}"
+
+       einfo "Regenerating SSL parameters. This will take some time."
+       /usr/libexec/dovecot/ssl-build-param "${base_dir}/login/ssl-parameters.dat"
+}
diff --git a/net-mail/dovecot/files/digest-dovecot-1.0_beta9-r2 b/net-mail/dovecot/files/digest-dovecot-1.0_beta9-r2
new file mode 100644 (file)
index 0000000..5e22728
--- /dev/null
@@ -0,0 +1,3 @@
+MD5 5c19a21afb8a02c95f3f62fa37d8e1ed dovecot-1.0.beta9.tar.gz 1245601
+RMD160 30d423b9fd2056fd8d898bc4bc630d3806cc64c4 dovecot-1.0.beta9.tar.gz 1245601
+SHA256 1bc44e2ab23ac8863aea42ce4ea5045d5f6ee2375804e432d8e7f918c14379b8 dovecot-1.0.beta9.tar.gz 1245601
diff --git a/net-mail/dovecot/files/dovecot-1.0_beta9-ssl_listen.patch b/net-mail/dovecot/files/dovecot-1.0_beta9-ssl_listen.patch
new file mode 100644 (file)
index 0000000..2bd8822
--- /dev/null
@@ -0,0 +1,13 @@
+--- src/master/main.c.orig     2006-06-16 12:07:06.000000000 +0100
++++ src/master/main.c  2006-06-16 12:08:01.000000000 +0100
+@@ -355,7 +355,9 @@
+       resolve_ip(set->listen, &set->listen_ip, &set->listen_port);
+       resolve_ip(set->ssl_listen, &set->ssl_listen_ip, &set->ssl_listen_port);
+-      if (set->ssl_listen_ip.family == 0 && set->ssl_listen == NULL)
++      /* if ssl_listen wasn't explicitly set in the config file,
++         use the non-ssl IP settings for the ssl listener, too. */
++      if (set->ssl_listen_ip.family == 0 && *set->ssl_listen == '\0')
+               set->ssl_listen_ip = set->listen_ip;
+       /* register wanted protocols */