summaryrefslogtreecommitdiff
path: root/debian/cf/hack/msp_nullclient.m4
diff options
context:
space:
mode:
Diffstat (limited to 'debian/cf/hack/msp_nullclient.m4')
-rw-r--r--debian/cf/hack/msp_nullclient.m495
1 files changed, 95 insertions, 0 deletions
diff --git a/debian/cf/hack/msp_nullclient.m4 b/debian/cf/hack/msp_nullclient.m4
new file mode 100644
index 0000000..db9f8cc
--- /dev/null
+++ b/debian/cf/hack/msp_nullclient.m4
@@ -0,0 +1,95 @@
+divert(-1)dnl
+#-----------------------------------------------------------------------------
+# $Sendmail: ./msp_nullclient.m4,v 8.12.0 2001/05/23 14:30:00 cowboy Exp $
+#
+# Copyright (c) 2001-2001 Richard Nelson. All Rights Reserved.
+#
+# msp_nullclient.m4 m4 file for supporting a nullclient in the MSP
+# environment. That is, change the feature(msp) to feature(msp_nullclient)
+# in /etc/mail/submit.mc. An MTA listener is now optional, and you can
+# run with only MSP mode (setgid mail).
+#
+# This file is blatantly cut&pasted from nullclient.m4 and msp.m4 !!!
+#
+# If you've a better idea, please let me know
+#
+#-----------------------------------------------------------------------------
+#
+# Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers.
+# All rights reserved.
+# Copyright (c) 1983 Eric P. Allman. All rights reserved.
+# Copyright (c) 1988, 1993
+# The Regents of the University of California. 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.
+#
+#
+ifelse(defn(`_ARG_'), `', `errprint(`Hack "msp_nullclient" requires argument')',
+ `define(`_NULL_CLIENT_', _ARG_)')
+
+#
+# This is used only for relaying mail from a client to a hub when
+# that client does absolutely nothing else -- i.e., it is a "null
+# mailer". In this sense, it acts like the "R" option in Sun
+# sendmail.
+#
+
+divert(0)dnl
+VERSIONID(`$Id: msp_nullclient.m4,v 8.12.0 2001/05/23 14:30:00 cowboy Exp $')
+divert(-1)dnl
+
+dnl #
+dnl # This *MUST* be used within the context of MSP
+ifdef(`DEBIAN_MSP', `dnl', `DOMAIN(`debian-msp')')
+dnl #
+dnl # Restrict listening to localhost (to increase security)
+ifelse(defn(`_DPO_'), `',
+`DAEMON_OPTIONS(`Name=NoMTA, Addr=127.0.0.1, M=E')dnl')
+
+dnl #-------------------- Now the Nullclient carp ---------------------------
+undefine(`ALIAS_FILE')
+define(`MAIL_HUB', _NULL_CLIENT_)
+define(`SMART_HOST', _NULL_CLIENT_)
+define(`confFORWARD_PATH', `')
+ifdef(`confFROM_HEADER',, `define(`confFROM_HEADER', `<$g>')')
+dnl #-------------------- Now the MSP carp ----------------------------------
+ifdef(`STATUS_FILE',
+`define(`_F_',
+`define(`_b_', index(STATUS_FILE, `sendmail.st'))ifelse(_b_, `-1', `STATUS_FILE', `substr(STATUS_FILE, 0, _b_)sm-client.st')')
+define(`STATUS_FILE', _F_)
+undefine(`_b_') undefine(`_F_')',
+`define(`STATUS_FILE', `/var/run/sm-client.st')')
+define(`confUSE_MSP', `True')dnl
+define(`confFORWARD_PATH', `')dnl
+define(`confPRIVACY_FLAGS', `goaway,noetrn')dnl
+dnl ---------------------------------------------
+dnl run as this user (even if called by root)
+define(`confRUN_AS_USER', `smmsp')dnl
+define(`confTRUSTED_USER', `confRUN_AS_USER')dnl
+dnl ---------------------------------------------
+dnl This queue directory must have the same group
+dnl as sendmail and it must be group-writable.
+dnl notice: do not test for QUEUE_DIR, it is set in some ostype/*.m4 files
+ifdef(`MSP_QUEUE_DIR',
+`define(`QUEUE_DIR', `MSP_QUEUE_DIR')',
+`define(`QUEUE_DIR', `/var/spool/clientmqueue')')dnl
+dnl ---------------------------------------------
+ifdef(`confPID_FILE', `dnl',
+`define(`confPID_FILE', QUEUE_DIR`/sm-client.pid')')
+define(`confQUEUE_FILE_MODE', `0660')dnl
+FEATURE(`no_default_msa')dnl
+ifelse(defn(`_DPO_'), `',
+`DAEMON_OPTIONS(`Name=NoMTA, Addr=127.0.0.1, M=E')dnl')
+dnl #---------------------- Debian MSP fixup -------------------------------
+dnl define(`confHOST_STATUS_DIRECTORY', `/var/lib/sendmail/host_status')dnl
+define(`confRUN_AS_USER', `mail')dnl
+define(`confTRUSTED_USER', `confRUN_AS_USER')dnl
+dnl #---------------------- back to nullclient carp ------------------------
+define(`_DEF_LOCAL_MAILER_FLAGS', `lsDFM5q')
+MASQUERADE_AS(_NULL_CLIENT_)
+FEATURE(`allmasquerade')
+FEATURE(`masquerade_envelope')
+MAILER(`local')
+MAILER(`smtp')