summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /mail-mta/qmail-ldap
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'mail-mta/qmail-ldap')
-rw-r--r--mail-mta/qmail-ldap/Manifest7
-rw-r--r--mail-mta/qmail-ldap/files/1.03-warnings.patch55
-rw-r--r--mail-mta/qmail-ldap/files/samples.ldif32
-rw-r--r--mail-mta/qmail-ldap/metadata.xml19
-rw-r--r--mail-mta/qmail-ldap/qmail-ldap-1.03-r8.ebuild226
5 files changed, 339 insertions, 0 deletions
diff --git a/mail-mta/qmail-ldap/Manifest b/mail-mta/qmail-ldap/Manifest
new file mode 100644
index 000000000000..802588557643
--- /dev/null
+++ b/mail-mta/qmail-ldap/Manifest
@@ -0,0 +1,7 @@
+DIST genqmail-20080406.tar.bz2 10252 SHA256 501ca2120c7619569bd9ac3e0035cb0022bfd0cdc9c720b5c43c9e3a4eb07ce8
+DIST qmail-1.03.tar.gz 220668 SHA256 21ed6c562cbb55092a66197c35c8222b84115d1acab0854fdb1ad1f301626f88
+DIST qmail-ldap-1.03-20060201-controls20060401d.patch 195962 SHA256 49b4418d620af20bb2f3a1b3a9413b51c831bfe7c9ea153f0aef3d5dc76a3577
+DIST qmail-ldap-1.03-20060201.patch.gz 270788 SHA256 92ba895df1957109ad856cc1d1554ece4d25d59017e77127dd52d76afd05525a
+DIST qmail-ldap-1.03-queue-custom-error.patch 2472 SHA256 77536616109591ef5f4bc0f309879167a14b3d6ce4778ff3f2dcaee9a424c25a
+DIST qmail-ldap-1.03-spp-0.42.patch 13618 SHA256 0f673a5944347d5e46c7beffd5d9fa760cecb2e61a3291c3392ffa6777cee8c8
+DIST qmail-spp-0.42.tar.gz 18689 SHA256 1518e7e82d10fbbb8ecc520f51daf503edeb9c3a9fb935be65a8185e7b53808d
diff --git a/mail-mta/qmail-ldap/files/1.03-warnings.patch b/mail-mta/qmail-ldap/files/1.03-warnings.patch
new file mode 100644
index 000000000000..324d4b35730b
--- /dev/null
+++ b/mail-mta/qmail-ldap/files/1.03-warnings.patch
@@ -0,0 +1,55 @@
+Files qmail-1.03.orig/auth_imap and qmail-1.03/auth_imap differ
+Files qmail-1.03.orig/auth_pop and qmail-1.03/auth_pop differ
+Files qmail-1.03.orig/auth_smtp and qmail-1.03/auth_smtp differ
+diff -NurpP qmail-1.03.orig/control.c qmail-1.03/control.c
+--- qmail-1.03.orig/control.c 2008-04-06 19:06:15.683511000 +0000
++++ qmail-1.03/control.c 2008-04-06 19:15:47.923622781 +0000
+@@ -1,3 +1,6 @@
++#define _GNU_SOURCE 1
++#include <string.h>
++
+ #include <unistd.h>
+ #include "readwrite.h"
+ #include "open.h"
+@@ -10,10 +13,6 @@
+ #include "scan.h"
+ #include "limit.h"
+
+-#if defined(USE_CONTROLDB) || defined(SECUREBIND_SASL) || defined(SECUREBIND_SSL) || defined(SECUREBIND_TLS) || defined(SECUREBIND_ALL)
+-#include <string.h>
+-#endif
+-
+ #ifdef USE_CONTROLDB
+ #include <syslog.h>
+
+@@ -48,7 +47,6 @@ int control_ldap_search(const char *fn,
+
+ #if defined(SECUREBIND_SASL) || defined(SECUREBIND_SSL) || defined(SECUREBIND_TLS) || defined(SECUREBIND_ALL)
+ #include <malloc.h>
+-#include <string.h>
+ #include <malloc.h>
+
+ #include "subfd.h"
+Files qmail-1.03.orig/control.o and qmail-1.03/control.o differ
+Files qmail-1.03.orig/pbsadd and qmail-1.03/pbsadd differ
+Files qmail-1.03.orig/pbscheck and qmail-1.03/pbscheck differ
+Files qmail-1.03.orig/pbsdbd and qmail-1.03/pbsdbd differ
+Files qmail-1.03.orig/qmail-forward and qmail-1.03/qmail-forward differ
+Files qmail-1.03.orig/qmail-group and qmail-1.03/qmail-group differ
+Files qmail-1.03.orig/qmail-inject and qmail-1.03/qmail-inject differ
+Files qmail-1.03.orig/qmail-ldaplookup and qmail-1.03/qmail-ldaplookup differ
+Files qmail-1.03.orig/qmail-lspawn and qmail-1.03/qmail-lspawn differ
+Files qmail-1.03.orig/qmail-newmrh and qmail-1.03/qmail-newmrh differ
+Files qmail-1.03.orig/qmail-pw2u and qmail-1.03/qmail-pw2u differ
+Files qmail-1.03.orig/qmail-qmqpc and qmail-1.03/qmail-qmqpc differ
+Files qmail-1.03.orig/qmail-qmtpd and qmail-1.03/qmail-qmtpd differ
+Files qmail-1.03.orig/qmail-queue and qmail-1.03/qmail-queue differ
+Files qmail-1.03.orig/qmail-quotawarn and qmail-1.03/qmail-quotawarn differ
+Files qmail-1.03.orig/qmail-remote and qmail-1.03/qmail-remote differ
+Files qmail-1.03.orig/qmail-reply and qmail-1.03/qmail-reply differ
+Files qmail-1.03.orig/qmail-secretary and qmail-1.03/qmail-secretary differ
+Files qmail-1.03.orig/qmail-send and qmail-1.03/qmail-send differ
+Files qmail-1.03.orig/qmail-showctl and qmail-1.03/qmail-showctl differ
+Files qmail-1.03.orig/qmail-smtpd and qmail-1.03/qmail-smtpd differ
+Files qmail-1.03.orig/qmail-todo and qmail-1.03/qmail-todo differ
+Files qmail-1.03.orig/qmail-verify and qmail-1.03/qmail-verify differ
diff --git a/mail-mta/qmail-ldap/files/samples.ldif b/mail-mta/qmail-ldap/files/samples.ldif
new file mode 100644
index 000000000000..c1a77c4d97ca
--- /dev/null
+++ b/mail-mta/qmail-ldap/files/samples.ldif
@@ -0,0 +1,32 @@
+#ldapauth, better to use this than your rootdn for security reasons
+dn: uid=ldapauth,ou=People,dc=yhourhost,dc=net
+uid: ldapauth
+cn: ldapuath
+objectClass: account
+objectClass: posixAccount
+objectClass: top
+objectClass: shadowAccount
+shadowLastChange: 12116
+loginShell: /bin/true
+uidNumber: 11184
+gidNumber: 2110
+homeDirectory: /var/qmail/maildirs/
+gecos: ldap authorization,,,
+userPassword: libcrypt_format
+
+#sample user dn
+dn: uid=denverj ,ou=people,dc=yourhost,dc=net
+objectClass: top
+objectClass: inetOrgPerson
+objectClass: qmailUser
+objectClass: person
+cn: John Denver
+givenName: denverj
+sn: denverj
+uid: denverj
+mail: denverj@yourhost.net
+mailMessageStore: /var/qmail/maildirs/denverj/Maildir/
+nohomeDirectory: /var/qmail/maildirs/denverj/
+mailAlternateAddress: denverj@alias.host.net
+userPassword: libcrypt_format
+
diff --git a/mail-mta/qmail-ldap/metadata.xml b/mail-mta/qmail-ldap/metadata.xml
new file mode 100644
index 000000000000..76f44a9e5963
--- /dev/null
+++ b/mail-mta/qmail-ldap/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>qmail</herd>
+ <use>
+ <flag name="cluster">Enable this if you want to have cluster support in
+ qmail-ldap</flag>
+ <flag name="gencertdaily">Generate SSL certificates daily instead of
+ hourly</flag>
+ <flag name="highvolume">Prepare qmail for high volume servers</flag>
+ <flag name="rfc2307">Add support for RFC2307 compliant uid/gid
+ attributes</flag>
+ <flag name="rfc822">Add support for RFC822 compliant mail
+ attributes</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">qmail-spp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/mail-mta/qmail-ldap/qmail-ldap-1.03-r8.ebuild b/mail-mta/qmail-ldap/qmail-ldap-1.03-r8.ebuild
new file mode 100644
index 000000000000..eaa93338c92d
--- /dev/null
+++ b/mail-mta/qmail-ldap/qmail-ldap-1.03-r8.ebuild
@@ -0,0 +1,226 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+GENQMAIL_PV=20080406
+QMAIL_SPP_PV=0.42
+
+QMAIL_LDAP_PV=20060201
+QMAIL_LDAP_F=${P}-${QMAIL_LDAP_PV}.patch.gz
+
+QMAIL_LDAP_SPP_F=${P}-spp-${QMAIL_SPP_PV}.patch
+
+QMAIL_LDAP_CONTROLS_PV=20060401d
+QMAIL_LDAP_CONTROLS_F=${P}-${QMAIL_LDAP_PV}-controls${QMAIL_LDAP_CONTROLS_PV}.patch
+
+inherit eutils qmail
+
+DESCRIPTION="qmail -- a secure, reliable, efficient, simple message transfer agent"
+HOMEPAGE="
+ http://www.qmail-ldap.org
+ http://cr.yp.to/qmail.html
+ http://qmail.org
+"
+SRC_URI="mirror://qmail/qmail-${PV}.tar.gz
+ http://dev.gentoo.org/~hollow/distfiles/${GENQMAIL_F}
+ http://www.nrg4u.com/qmail/${QMAIL_LDAP_F}
+ mirror://gentoo/${QMAIL_LDAP_CONTROLS_F}
+ mirror://gentoo/${P}-queue-custom-error.patch
+ !vanilla? (
+ qmail-spp? (
+ mirror://sourceforge/qmail-spp/${QMAIL_SPP_F}
+ mirror://gentoo/${QMAIL_LDAP_SPP_F}
+ )
+ )
+"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="cluster debug gencertdaily highvolume qmail-spp rfc2307 rfc822 ssl vanilla zlib"
+RESTRICT="test"
+
+DEPEND="
+ !mail-mta/qmail
+ net-nds/openldap
+ net-mail/queue-repair
+ ssl? ( dev-libs/openssl )
+"
+RDEPEND="
+ !mail-mta/courier
+ !mail-mta/esmtp
+ !mail-mta/exim
+ !mail-mta/mini-qmail
+ !mail-mta/msmtp
+ !mail-mta/netqmail
+ !mail-mta/nullmailer
+ !mail-mta/postfix
+ !mail-mta/sendmail
+ !mail-mta/opensmtpd
+ !mail-mta/ssmtp
+ >=sys-apps/ucspi-tcp-0.88-r17
+ ssl? ( >=sys-apps/ucspi-ssl-0.70-r1 )
+ virtual/daemontools
+ >=net-mail/dot-forward-0.71-r3
+ ${DEPEND}
+"
+
+S="${WORKDIR}"/qmail-${PV}
+
+pkg_setup() {
+ if [[ -n "${QMAIL_PATCH_DIR}" ]]; then
+ eerror
+ eerror "The QMAIL_PATCH_DIR variable for custom patches"
+ eerror "has been removed from ${PN}. If you need custom patches"
+ eerror "you should create a copy of this ebuild in an overlay."
+ eerror
+ die "QMAIL_PATCH_DIR is not supported anymore"
+ fi
+
+ qmail_create_users
+}
+
+src_unpack() {
+ genqmail_src_unpack
+ use qmail-spp && qmail_spp_src_unpack
+
+ unpack qmail-${PV}.tar.gz
+
+ cd "${S}"
+
+ # main ldap patch
+ # includes: netqmail-1.05, EXTTODO, BIGTODO, TLS/SMTPAUTH, 0.0.0.0 fix
+ epatch "${DISTDIR}"/${QMAIL_LDAP_F}
+
+ # QmailLDAP/Controls patch
+ # includes: RFC2307/822 fixes
+ epatch "${DISTDIR}"/${QMAIL_LDAP_CONTROLS_F}
+ epatch "${FILESDIR}"/${PV}-warnings.patch
+
+ # fix libraries for controls patch
+ sed -i -e 's|NEWLDAPPROGLIBS=.*|& str.a|' Makefile
+
+ ht_fix_file Makefile*
+
+ if ! use vanilla; then
+ # Add custom bounce messages to qmail-queue
+ epatch "${DISTDIR}"/${P}-queue-custom-error.patch
+
+ # qmail-spp patch
+ use qmail-spp && epatch "${DISTDIR}"/${QMAIL_LDAP_SPP_F}
+ fi
+
+ # makefile options
+ local INCLUDES="-I/usr/include"
+ local LDAPLIBS="-L/usr/lib -lldap -llber"
+ local LDAPFLAGS="-DALTQUEUE -DEXTERNAL_TODO -DDASH_EXT -DSMTPEXECCHECK"
+ local CONTROLDB="-DUSE_CONTROLDB -DQLDAP_BAILOUT"
+ local SECUREBIND= RFCFLAGS=
+
+ use cluster && LDAPFLAGS="${LDAPFLAGS} -DQLDAP_CLUSTER"
+ use highvolume && LDAPFLAGS="${LDAPFLAGS} -DBIGTODO"
+ use zlib && LDAPFLAGS="${LDAPFLAGS} -DDATA_COMPRESS -D QMQP_COMPRESS"
+
+ use rfc2307 && RFCFLAGS="${RFCFLAGS} -DUSE_RFC2307"
+ use rfc822 && RFCFLAGS="${RFCFLAGS} -DUSE_RFC822"
+
+ use ssl && SECUREBIND="-DSECUREBIND_TLS -DSECUREBIND_SSL"
+
+ # a lot of sed magic to get Makefile right
+ local EXP=
+
+ EXP="${EXP} s|^#LDAPINCLUDES=.*|LDAPINCLUDES=${INCLUDES}|;"
+ EXP="${EXP} s|^#LDAPLIBS=.*|LDAPLIBS=${LDAPLIBS}|;"
+ EXP="${EXP} s|^#LDAPFLAGS=.*|LDAPFLAGS=${LDAPFLAGS}|;"
+
+ EXP="${EXP} s|^#CONTROLDB=.*|CONTROLDB=${CONTROLDB}|;"
+ EXP="${EXP} s|^#RFCFLAGS=.*|RFCFLAGS=${RFCFLAGS}|;"
+ EXP="${EXP} s|^#SECUREBIND=.*|SECUREBIND=${SECUREBIND}|;"
+
+ # TODO: do we even need this with LDAP?
+ EXP="${EXP} s|^#SHADOWLIBS=.*|SHADOWLIBS=-lcrypt|;"
+
+ # automagic maildir creation
+ EXP="${EXP} s|^#\(MDIRMAKE=.*\)|\1|;"
+ EXP="${EXP} s|^#\(HDIRMAKE=.*\)|\1|;"
+
+ use debug && EXP="${EXP} s|^#\(DEBUG=.*\)|\1|;"
+ use zlib && EXP="${EXP} s|^#ZLIB=.*|ZLIB=-lz|;"
+
+ if use ssl; then
+ EXP="${EXP} s|^#\(TLS=.*\)|\1|;"
+ EXP="${EXP} s|^#TLSINCLUDES=.*|TLSINCLUDES=${INCLUDES}|;"
+ EXP="${EXP} s|^#TLSLIBS=.*|TLSLIBS=-L/usr/lib -lssl -lcrypto|;"
+ EXP="${EXP} s|^#OPENSSLBIN=.*|OPENSSLBIN=/usr/bin/openssl|;"
+ fi
+
+ qmail_src_postunpack
+
+ sed -i -e "${EXP}" Makefile || die "could not patch Makefile"
+}
+
+src_compile() {
+ qmail_src_compile ldap
+ use qmail-spp && qmail_spp_src_compile
+}
+
+qmail_full_install_hook() {
+ insinto ${QMAIL_HOME}/bin
+ insopts -o root -g qmail -m 0755
+ doins auth_smtp condwrite digest dirmaker pbs{add,check,dbd} \
+ qmail-{forward,group,quotawarn,reply,secretary,verify}
+
+ insopts -o root -g root -m 0750
+ doins qmail-ldaplookup
+
+ insopts -o root -g qmail -m 0711
+ doins qmail-todo
+
+ insopts -o root -g qmail -m 0700
+ doins auth_{imap,pop} qmail-cdb
+}
+
+qmail_man_install_hook() {
+ dodoc EXTTODO POPBEFORESMTP QLDAP* "${FILESDIR}"/samples.ldif
+}
+
+qmail_config_install_hook() {
+ einfo "Installing OpenLDAP schema"
+ insinto /etc/openldap/schema
+ doins qmail.schema qmail-ldap-control/qmailControl.schema
+}
+
+src_install() {
+ qmail_src_install
+}
+
+pkg_postinst() {
+ qmail_queue_setup
+ qmail_rootmail_fixup
+ qmail_tcprules_build
+
+ qmail_config_notice
+ qmail_supervise_config_notice
+ elog
+ elog "If you are looking for documentation, check those links:"
+ elog "http://www.lifewithqmail.com/ldap/"
+ elog " -- Life with qmail-ldap"
+ elog
+ elog "For sample ldifs, please check /usr/share/doc/${PF}/"
+ elog
+}
+
+pkg_preinst() {
+ qmail_tcprules_fixup
+}
+
+pkg_config() {
+ # avoid some weird locale problems
+ export LC_ALL=C
+
+ qmail_config_fast
+ qmail_tcprules_config
+ qmail_tcprules_build
+
+ use ssl && qmail_ssl_generate
+}