[arch-commits] Commit in dovecot/repos (7 files)
Evangelos Foutras
foutrelis at archlinux.org
Mon Apr 27 22:41:06 UTC 2020
Date: Monday, April 27, 2020 @ 22:41:05
Author: foutrelis
Revision: 621949
archrelease: copy trunk to community-staging-x86_64
Added:
dovecot/repos/community-staging-x86_64/
dovecot/repos/community-staging-x86_64/PKGBUILD
(from rev 621948, dovecot/trunk/PKGBUILD)
dovecot/repos/community-staging-x86_64/dovecot.ld.so.conf
(from rev 621948, dovecot/trunk/dovecot.ld.so.conf)
dovecot/repos/community-staging-x86_64/dovecot.pam
(from rev 621948, dovecot/trunk/dovecot.pam)
dovecot/repos/community-staging-x86_64/dovecot.sysusersd
(from rev 621948, dovecot/trunk/dovecot.sysusersd)
dovecot/repos/community-staging-x86_64/dovecot.tmpfilesd
(from rev 621948, dovecot/trunk/dovecot.tmpfilesd)
dovecot/repos/community-staging-x86_64/fix-mysql-double-free.patch
(from rev 621948, dovecot/trunk/fix-mysql-double-free.patch)
-----------------------------+
PKGBUILD | 127 ++++++++++++++++++++++++++++++++++++++++++
dovecot.ld.so.conf | 1
dovecot.pam | 5 +
dovecot.sysusersd | 2
dovecot.tmpfilesd | 1
fix-mysql-double-free.patch | 36 +++++++++++
6 files changed, 172 insertions(+)
Copied: dovecot/repos/community-staging-x86_64/PKGBUILD (from rev 621948, dovecot/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD (rev 0)
+++ community-staging-x86_64/PKGBUILD 2020-04-27 22:41:05 UTC (rev 621949)
@@ -0,0 +1,127 @@
+# Maintainer: Johannes Löthberg <johannes at kyriasis.com>
+# Maintainer: Thore Bödecker <foxxx0 at archlinux.org>
+# Contributor: Bartłomiej Piotrowski <bpiotrowski at archlinux.org>
+# Contributor: Andreas Radke <andyrtr at archlinux.org>
+# Contributor: Paul Mattal <paul at mattal.com>
+# Contributor: Federico Quagliata (quaqo) <quaqo at despammed.com>
+# Contributor: GARETTE Emmanuel <gnunux at laposte dot net>
+# Contributor: Phillip Schichtel <phillip at schich.tel>
+
+# --->>> remember to rebuild/bump pigeonhole in one step <<<---
+
+pkgname=dovecot
+pkgver=2.3.10
+pkgrel=2
+
+pkgdesc="An IMAP and POP3 server written with security primarily in mind"
+url="https://dovecot.org/"
+arch=('x86_64')
+license=("LGPL")
+
+depends=('krb5' 'openssl' 'sqlite' 'mariadb-libs' 'libsodium'
+ 'postgresql-libs' 'bzip2' 'lz4' 'expat' 'curl' 'pam')
+makedepends=('libcap' 'libldap' 'clucene' 'libsodium' 'lua')
+optdepends=('libldap: ldap plugin'
+ 'xz: imap zlib plugin'
+ 'clucene: alternative FTS indexer'
+ 'lua: LUA auth and push support')
+
+provides=('imap-server' 'pop3-server')
+
+backup=('etc/pam.d/dovecot')
+
+options=('!emptydirs')
+
+source=("https://dovecot.org/releases/2.3/${pkgname}-${pkgver}.tar.gz"{,.sig}
+ 'dovecot.sysusersd'
+ 'dovecot.tmpfilesd'
+ 'dovecot.ld.so.conf'
+ 'dovecot.pam')
+
+sha256sums=('473184723d854a4d1dbd99c11a7b9f65156ca5fe6ecf85d9a44b5127e6f871c5'
+ 'SKIP'
+ 'c5e3a8ffe23e5deb4f7893d9877d972347c2ee45c4ebf713de85c537e47cfcaf'
+ '0b0625b1e66ca6a95d506fd00d6a68e70620c8ea28606e2528953ffb1806b08e'
+ 'a457a1691cfa82495fc0503bfa4b61e54b149e63400fe0f568dff2c24a3f7858'
+ 'ad9245f5e916480edd67139603cbe52e7a868233075f900ab63a0ce58f03741a')
+
+validpgpkeys=(
+ 'E643F0BDFDCD04D9FFCB6279C948525140558AC9' # Timo Sirainen <tss at iki.fi>
+ '2BE74AAB3EE754DFB9C80D3318A348AEED409DA1' # Dovecot Community Edition
+)
+
+prepare() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ local filename
+ for filename in "${source[@]}"; do
+ if [[ "$filename" =~ \.patch$ ]]; then
+ patch -p1 -N -l -i "$srcdir/${filename##*/}"
+ fi
+ done
+
+ # fix path in helper script
+ sed -i 's:OPENSSLCONFIG=${OPENSSLCONFIG-dovecot-openssl.cnf}:OPENSSLCONFIG=${OPENSSLCONFIG- /etc/ssl/dovecot-openssl.cnf}:' doc/mkcert.sh
+}
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --sbindir=/usr/bin \
+ --localstatedir=/var \
+ --libexecdir=/usr/lib \
+ --with-rundir=/run/dovecot \
+ --with-moduledir=/usr/lib/dovecot/modules \
+ --with-systemdsystemunitdir=/usr/lib/systemd/system \
+ --disable-static \
+ --with-nss \
+ --with-pam \
+ --with-mysql \
+ --with-pgsql \
+ --with-sqlite \
+ --with-ssl=openssl \
+ --with-ssldir=/etc/ssl \
+ --with-gssapi \
+ --with-ldap=plugin \
+ --with-lua=plugin \
+ --with-zlib \
+ --with-bzlib \
+ --with-lzma \
+ --with-lz4 \
+ --with-libcap \
+ --with-solr \
+ --with-lucene \
+ --with-sodium \
+ --with-docs
+
+ make
+}
+
+check() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make check
+}
+
+package() {
+ # system user/group dovenull - 74
+ # system user/group dovecot - 76
+
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="$pkgdir" install
+ install -Dm644 "${srcdir}/dovecot.sysusersd" \
+ "${pkgdir}/usr/lib/sysusers.d/dovecot.conf"
+ install -Dm644 "${srcdir}/dovecot.tmpfilesd" \
+ "${pkgdir}/usr/lib/tmpfiles.d/dovecot.conf"
+ install -d -m755 "${pkgdir}/etc/dovecot/conf.d"
+ rm -f "${pkgdir}/etc/dovecot/README"
+
+ # install mkcert helper script
+ install -m 755 doc/mkcert.sh "${pkgdir}/usr/lib/dovecot/mkcert.sh"
+
+ # add dovecot libdir
+ install -Dm644 "${srcdir}/dovecot.ld.so.conf" "${pkgdir}/etc/ld.so.conf.d/dovecot.conf"
+
+ # install PAM snippet for dovecot
+ install -Dm644 "${srcdir}/dovecot.pam" "${pkgdir}/etc/pam.d/dovecot"
+}
Copied: dovecot/repos/community-staging-x86_64/dovecot.ld.so.conf (from rev 621948, dovecot/trunk/dovecot.ld.so.conf)
===================================================================
--- community-staging-x86_64/dovecot.ld.so.conf (rev 0)
+++ community-staging-x86_64/dovecot.ld.so.conf 2020-04-27 22:41:05 UTC (rev 621949)
@@ -0,0 +1 @@
+/usr/lib/dovecot
Copied: dovecot/repos/community-staging-x86_64/dovecot.pam (from rev 621948, dovecot/trunk/dovecot.pam)
===================================================================
--- community-staging-x86_64/dovecot.pam (rev 0)
+++ community-staging-x86_64/dovecot.pam 2020-04-27 22:41:05 UTC (rev 621949)
@@ -0,0 +1,5 @@
+#%PAM-1.0
+auth include system-auth
+account include system-auth
+session include system-auth
+password include system-auth
Copied: dovecot/repos/community-staging-x86_64/dovecot.sysusersd (from rev 621948, dovecot/trunk/dovecot.sysusersd)
===================================================================
--- community-staging-x86_64/dovecot.sysusersd (rev 0)
+++ community-staging-x86_64/dovecot.sysusersd 2020-04-27 22:41:05 UTC (rev 621949)
@@ -0,0 +1,2 @@
+u dovenull 74 "Dovecot user for completely untrustworthy processes" -
+u dovecot 76 "Dovecot user" -
Copied: dovecot/repos/community-staging-x86_64/dovecot.tmpfilesd (from rev 621948, dovecot/trunk/dovecot.tmpfilesd)
===================================================================
--- community-staging-x86_64/dovecot.tmpfilesd (rev 0)
+++ community-staging-x86_64/dovecot.tmpfilesd 2020-04-27 22:41:05 UTC (rev 621949)
@@ -0,0 +1 @@
+d /run/dovecot 0755 root dovecot -
Copied: dovecot/repos/community-staging-x86_64/fix-mysql-double-free.patch (from rev 621948, dovecot/trunk/fix-mysql-double-free.patch)
===================================================================
--- community-staging-x86_64/fix-mysql-double-free.patch (rev 0)
+++ community-staging-x86_64/fix-mysql-double-free.patch 2020-04-27 22:41:05 UTC (rev 621949)
@@ -0,0 +1,36 @@
+From 3c5101ffdd2a8115e03ed7180d53578765dea4c9 Mon Sep 17 00:00:00 2001
+From: Aki Tuomi <aki.tuomi at dovecot.fi>
+Date: Tue, 4 Dec 2018 14:40:04 +0200
+Subject: [PATCH] driver-mysql: Avoid double-closing MySQL connection
+
+Fixes double-free
+---
+ src/lib-sql/driver-mysql.c | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/src/lib-sql/driver-mysql.c b/src/lib-sql/driver-mysql.c
+index c87e825e4b..5dd1c3124f 100644
+--- a/src/lib-sql/driver-mysql.c
++++ b/src/lib-sql/driver-mysql.c
+@@ -173,7 +173,9 @@ static int driver_mysql_connect(struct sql_db *_db)
+ static void driver_mysql_disconnect(struct sql_db *_db)
+ {
+ struct mysql_db *db = (struct mysql_db *)_db;
+- mysql_close(db->mysql);
++ if (db->mysql != NULL)
++ mysql_close(db->mysql);
++ db->mysql = NULL;
+ }
+
+ static int driver_mysql_parse_connect_string(struct mysql_db *db,
+@@ -311,7 +313,9 @@ static void driver_mysql_deinit_v(struct sql_db *_db)
+ _db->no_reconnect = TRUE;
+ sql_db_set_state(&db->api, SQL_DB_STATE_DISCONNECTED);
+
+- mysql_close(db->mysql);
++ if (db->mysql != NULL)
++ mysql_close(db->mysql);
++ db->mysql = NULL;
+
+ sql_connection_log_finished(_db);
+ event_unref(&_db->event);
More information about the arch-commits
mailing list