divert(-1) # # Copyright (c) 2004 Sendmail, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set # forth in the LICENSE file which can be found at the top level of # the sendmail distribution. # # # # backport to 8.12 by Victor Ustugov # # hacks disscussion's maillist - http://www.mta.org.ua/mailman/listinfo/sendmail-conf # # divert(0) VERSIONID(`$Id: greet_pause.m4,v 1.1 2004/02/23 21:36:04 gshapiro Exp $') divert(-1) ifelse(len(X`'_ARG_),`1',`ifdef(`_ACCESS_TABLE_', `', `errprint(`*** ERROR: FEATURE(`greet_pause') requires FEATURE(`access_db') ')')') LOCAL_RULESETS ###################################################################### ### greet_pause: lookup pause time before 220 greeting ### ### Parameters: ### $1: {client_name} ### $2: {client_addr} ###################################################################### Sgreet_pause ifdef(`_ACCESS_TABLE_', `dnl R$+ $| $+ $: $>D < $1 > < $2 > R $| $+ $: $>A < $1 > <> empty client_name R <$+> $: $>A < $1 > <> no: another lookup ifelse(len(X`'_ARG_),`1', `R <$*> $@', `R <$*> $# _ARG_') R<$* > <$*> $@ R<$+> <$*> $# $1',`dnl R$* $# _ARG_') LOCAL_CONFIG ifdef(`confGREET_PAUSE_SLEEP', `', `define(`confGREET_PAUSE_SLEEP', `/bin/sleep')') dnl confGREET_PAUSE_DELIMITER must be `.' on FreeBSD ifdef(`confGREET_PAUSE_DELIMITER', `', `define(`confGREET_PAUSE_DELIMITER', `,')') Ksleep program confGREET_PAUSE_SLEEP LOCAL_RULESETS SLocal_check_mail R $* $: $1 $| $>greet_pause $&{client_name} $| $&{client_addr} #R $* $| $# $+ $: $1 $| $# $(arith / $@ $2 $@ 1000 $) confGREET_PAUSE_DELIMITER $(arith % $@ $2 $@ 1000 $) R $* $| $# $+ $: $1 $| $# $(arith / $@ $2 $@ 1000 $) R $* $| $# $+ $: $1 $| $# $(sleep $2 $) R $* $| $* $: $1