/*
* whom.c -- report to whom a message would be sent
*
- * $Id$
+ * This code is Copyright (c) 2002, by the authors of nmh. See the
+ * COPYRIGHT file in the root directory of the nmh distribution for
+ * complete copyright information.
*/
#include <h/mh.h>
#include <h/signals.h>
#include <signal.h>
+#ifndef CYRUS_SASL
+# define SASLminc(a) (a)
+#else /* CYRUS_SASL */
+# define SASLminc(a) 0
+#endif /* CYRUS_SASL */
+
+#ifndef TLS_SUPPORT
+# define TLSminc(a) (a)
+#else /* TLS_SUPPORT */
+# define TLSminc(a) 0
+#endif /* TLS_SUPPORT */
+
static struct swit switches[] = {
#define ALIASW 0
{ "alias aliasfile", 0 },
#define VERSIONSW 7
{ "version", 0 },
#define HELPSW 8
- { "help", 4 },
+ { "help", 0 },
#define CLIESW 9
{ "client host", -6 },
#define SERVSW 10
{ "server host", -6 },
#define SNOOPSW 11
{ "snoop", -5 },
+#define SASLSW 12
+ { "sasl", SASLminc(4) },
+#define SASLMECHSW 13
+ { "saslmech mechanism", SASLminc(-5) },
+#define USERSW 14
+ { "user username", SASLminc(-4) },
+#define PORTSW 15
+ { "port server port name/number", 4 },
+#define TLSSW 16
+ { "tls", TLSminc(-3) },
{ NULL, 0 }
};
vec[vecp++] = "-library";
vec[vecp++] = getcpy (m_maildir (""));
+ /* Don't need to feed fileproc or mhlproc to post because
+ it doesn't use them when used for whom. */
+
while ((cp = *argp++)) {
if (*cp == '-') {
switch (smatch (++cp, switches)) {
case CHKSW:
case NOCHKSW:
case SNOOPSW:
+ case SASLSW:
+ case TLSSW:
vec[vecp++] = --cp;
continue;
case ALIASW:
case CLIESW:
case SERVSW:
+ case USERSW:
+ case PORTSW:
+ case SASLMECHSW:
vec[vecp++] = --cp;
if (!(cp = *argp++) || *cp == '-')
adios (NULL, "missing argument to %s", argp[-2]);