+++ /dev/null
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-inherit toolchain-funcs
-
-DESCRIPTION="A robust implementation of POP-before-SMTP"
-HOMEPAGE="http://mail.cc.umanitoba.ca/drac/"
-SRC_URI="ftp://ftp.cc.umanitoba.ca/src/${PN}.tar.Z"
-
-LICENSE="rc"
-SLOT="0"
-KEYWORDS="x86 sparc ppc hppa ~amd64 ppc64"
-IUSE="debug"
-
-DEPEND="virtual/mta
- >=sys-libs/db-3.2.9
- >=sys-apps/sed-4"
-RDEPEND="${DEPEND}
- >=net-nds/portmap-5b-r6"
-
-S="${WORKDIR}"
-
-src_compile() {
- local mysed
- if use debug ; then
- mysed="s:^CFLAGS.*:CFLAGS = \$(DEFS) -g ${CFLAGS}:"
- else
- mysed="s:^CFLAGS.*:CFLAGS = \$(DEFS) ${CFLAGS}:"
- fi
-
- sed -e "s:^INSTALL = .*:INSTALL = /usr/bin/install:" \
- -e "s:^EBIN = .*:EBIN = /usr/sbin:" \
- -e "s:^MAN = .*:MAN = /usr/share/man/man:" \
- -e "s:^DEFS = .*:DEFS = -DSOCK_RPC -DFCNTL_LOCK -DGETHOST -DDASH_C:" \
- -e "s:^CC = .*:CC = $(tc-getCC):" \
- -e "s:^LDLIBS = .*:LDLIBS = -ldb:" \
- -e "s:^TSTLIBS = .*:TSTLIBS = -L. -ldrac:" \
- -e "s:^RPCGENFLAGS = .*:RPCGENFLAGS = -C -I:" \
- -e "s:^MANADM = .*:MANADM = 8:" \
- -e "${mysed}" \
- -i Makefile || die "sed failed"
-
- # Parallel build does not work.
- emake -j1 || die "compile problem"
-}
-
-src_install() {
- newsbin rpc.dracd dracd
- dosbin "${FILESDIR}/drac_rotate"
-
- dolib.a libdrac.a
-
- newinitd "${FILESDIR}/dracd.rc6" dracd
-
- dodoc Changes COPYRIGHT INSTALL PORTING README
- newman rpc.dracd.1m dracd.8
- doman dracauth.3
-
- keepdir /var/lib/drac
- fowners mail:mail /var/lib/drac
- fperms 750 /var/lib/drac
-}
-
-pkg_postinst() {
- elog "After configuring your IMAP/POP server for DRAC, and starting the"
- elog "dracd server (e.g. by running /etc/init.d/dracd start) you can"
- elog "set up your MTA to check for authenticated hosts in:"
- elog " /var/lib/drac/drac"
- elog "Please see the MTA documentation for more details."
- echo
-}
+++ /dev/null
-#!/bin/bash
-
-usage="[/path/to/real_file.db [/path/to/link_file.db]] [--debug] [--verbose]"
-help="
-A DRAC-enabled MTA performs better by using a seldomly, instead of
-constantly changing, access database. This script creates a link
-to a snapshotted database which the MTA can use. It is designed
-to run every minute from cron. Here is an example cron configuration:
-
- * * * * * $(basename "$0")
-"
-
-for i in $* ; do
- case "${i}" in
- --verbose | -verbose | -v | --debug | -debug | -d)
- debug=1
- ;;
- --usage | -usage | -u )
- echo "usage: $(basename "$0") ${usage}"
- exit 1
- ;;
- --help | -help | -h)
- echo "${help}"
- echo "usage: $(basename "$0") ${usage}"
- echo
- exit 1
- ;;
- *)
- args[${#args}]="${i}"
- ;;
- esac
-done
-
-debug_print() {
- if [ -n "${debug}" ] ; then
- if [ -n "$2" ] ; then
- echo -n "$1 ... "
- else
- echo "$1"
- fi
- fi
-}
-
-check_result() {
- if [ "$?" -ne 0 ] ; then
- debug_print
- if [ -n "$1" ] ; then
- echo "$(basename "$0"): $1, exiting ..."
- else
- echo "$(basename "$0"): exiting ..."
- fi
- exit 1
- fi
-}
-
-debug_print "finding current minute" "1"
-min="$(date '+%-M')" && \
-[ -n "${min}" ]
-check_result "can't determine current minute"
-debug_print "success! (${min})"
-
-debug_print "finding drac database file" "1"
-real="${args[0]:-/var/lib/drac/drac.db}" && \
-[ -n "${real}" -a -f "${real}" ]
-check_result "can't find drac database file"
-debug_print "success! (${real})"
-
-debug_print "setting drac link file" "1"
-link="${args[1]:-/var/lib/drac/drac_link.db}" && \
-[ -n "${link}" -a -d "$(dirname "${link}")" ]
-check_result "can't set drac link file"
-debug_print "success! (${link})"
-
-debug_print "finding new drac database" "1"
-new="${real}$(( ${min} % 3 ))" && \
-[ "${new}" != "${real}" ]
-check_result "can't set new drac database"
-debug_print "success! (${new})"
-
-debug_print "finding old drac database" "1"
-old="${real}$(( (${min} + 1) % 3 ))" && \
-[ "${old}" != "${real}" -a "${old}" != "${new}" ]
-check_result "can't set old drac database"
-debug_print "success! (${old})"
-
-debug_print "creating new drac database" "1"
-cp "${real}" "${new}"
-check_result "can't create new drac database"
-debug_print "success! ($(basename "${real}") -> $(basename "${new}"))"
-
-debug_print "linking new drac database" "1"
-ln -sf "${new}" "${link}"
-check_result "can't link new drac database"
-debug_print "success! ($(basename "${new}") -> $(basename "${link}"))"
-
-debug_print "removing old drac database" "1"
-rm -f "${old}"
-check_result "can't remove old drac database"
-debug_print "success! (${old})"