X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Fwhom.c;h=ad49d86a4ccb8ddb2dbdea95397aeb9426d593c4;hb=293b37f3c3eab8af5c87c9ad8ee9df89c998cf48;hp=aeb8d3b660ea3b167e6c2e72c202e73422a1e1ac;hpb=1691e80890e5d8ba258c51c214a3e91880e1db2b;p=mmh diff --git a/uip/whom.c b/uip/whom.c index aeb8d3b..ad49d86 100644 --- a/uip/whom.c +++ b/uip/whom.c @@ -2,13 +2,27 @@ /* * 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 #include #include +#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 }, @@ -27,13 +41,27 @@ static struct swit switches[] = { #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) }, +#define NTLSSW 17 + { "notls", TLSminc(-5) }, +#define MTSSW 18 + { "mts smtp|sendmail/smtp|sendmail/pipe", 0 }, { NULL, 0 } }; @@ -64,6 +92,9 @@ main (int argc, char **argv) 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)) { @@ -76,14 +107,17 @@ main (int argc, char **argv) case HELPSW: snprintf (buf, sizeof(buf), "%s [switches] [file]", invo_name); print_help (buf, switches, 1); - done (1); + done (0); case VERSIONSW: print_version(invo_name); - done (1); + done (0); case CHKSW: case NOCHKSW: case SNOOPSW: + case SASLSW: + case TLSSW: + case NTLSSW: vec[vecp++] = --cp; continue; @@ -113,6 +147,10 @@ main (int argc, char **argv) case ALIASW: case CLIESW: case SERVSW: + case USERSW: + case PORTSW: + case SASLMECHSW: + case MTSSW: vec[vecp++] = --cp; if (!(cp = *argp++) || *cp == '-') adios (NULL, "missing argument to %s", argp[-2]); @@ -185,5 +223,5 @@ main (int argc, char **argv) done (status); } - exit (-1); /* NOT REACHED */ + return 0; /* dead code to satisfy the compiler */ }