Made DUMB the default and removed the the #ifdefs.
authormarkus schnalke <meillo@marmaro.de>
Wed, 21 Mar 2012 15:25:08 +0000 (16:25 +0100)
committermarkus schnalke <meillo@marmaro.de>
Wed, 21 Mar 2012 15:25:08 +0000 (16:25 +0100)
DUMB had been the default and forces MH to use a full RFC 822 address
parser instead of guessing on addresses.

acconfig.h
sbr/addrsbr.c

index 06fab56..3ab8a46 100644 (file)
  */
 #define DBMPWD  1
 
-/*
- * Directs nmh not to try and rewrite addresses
- * to their official form.  You probably don't
- * want to change this without good reason.
- */
-#define DUMB    1
-
 
 /***** END USER CONFIGURATION SECTION *****/
 @TOP@
index 42742d2..a829c1d 100644 (file)
 ** addresses.  The routines in sbr/addrsbr.c associate semantics with those
 ** addresses.
 **
-** If #ifdef DUMB is in effect, a full 822-style parser is called
-** for syntax recongition.  This breaks each address into its components.
-** Note however that no semantics are assumed about the parts or their
-** totality.  This means that implicit hostnames aren't made explicit,
-** and explicit hostnames aren't expanded to their "official" represenations.
-**
-** If DUMB is not in effect, then this module does some
-** high-level thinking about what the addresses are.
-**
-** 1. for MMDF systems:
-**
-**      string%<uucp>@<local>  ->  string
-**
-** 2. for non-MMDF systems:
-**
-**      string@host.<uucp>  ->  host!string
-**
-** 3. for any system, an address interpreted relative to the local host:
-**
-**      string@<uucp>  ->  string
-**
-** For cases (1) and (3) above, the leftmost host is extracted.  If it's not
-** present, the local host is used.  If the tests above fail, the address is
-** considered to be a real 822-style address.
-**
-** If an explicit host is not present, then MH checks for a bang to indicate
-** an explicit UUCP-style address.  If so, this is noted.  If not, the host is
-** defaulted, typically to the local host.  The lack of an explict host is
-** also noted.
-**
-** If an explicit 822-style host is present, then MH checks to see if it
-** can expand this to the official name for the host.  If the hostname is
-** unknown, the address is so typed.
+** A full 822-style parser is called for syntax recongition. This breaks
+** each address into its components. Note however that no semantics are
+** assumed about the parts or their totality. This means that implicit
+** hostnames aren't made explicit, and explicit hostnames aren't expanded
+** to their "official" represenations.
 **
 ** To summarize, when we're all done, here's what MH knows about the address:
-**
-** DUMB - type: local, uucp, or network
-**              host:  not locally defaulted, not explicitly expanded
-**              everything else
-**
-** other - type: local, uucp, network, unknown
-**               everything else
+**       type: local, uucp, or network
+**       host:  not locally defaulted, not explicitly expanded
+**       everything else
 */
 
 
@@ -107,9 +75,6 @@ getm(char *str, char *dfhost, int dftype, int wanthost, char *eresult)
 {
        char *pp;
        struct mailname *mp;
-#ifndef DUMB
-       char *dp;
-#endif /* not DUMB */
 
        if (err[0]) {
                if (eresult)
@@ -177,13 +142,10 @@ getm(char *str, char *dfhost, int dftype, int wanthost, char *eresult)
                } else {
                        mp->m_nohost = 1;
                        mp->m_mbox = getcpy(mbox);
-#ifdef DUMB
                        if (route == NULL && dftype == LOCALHOST) {
                                mp->m_host = NULL;
                                mp->m_type = dftype;
-                       } else
-#endif /* DUMB */
-                       {
+                       } else {
                                mp->m_host = route ? NULL : getcpy(dfhost);
                                mp->m_type = route ? NETHOST : dftype;
                        }
@@ -194,26 +156,8 @@ getm(char *str, char *dfhost, int dftype, int wanthost, char *eresult)
        if (wanthost == AD_NHST)
                mp->m_type = !mh_strcasecmp(LocalName(), mp->m_host)
                        ? LOCALHOST : NETHOST;
-#ifdef DUMB
        else
                mp->m_type = mh_strcasecmp(LocalName(), mp->m_host) ?  NETHOST : LOCALHOST;
-#else /* not DUMB */
-       else
-               if (pp = OfficialName(mp->m_host)) {
-       got_real_host: ;
-                       free (mp->m_host);
-                       mp->m_host = getcpy(pp);
-                       mp->m_type = mh_strcasecmp(LocalName(), mp->m_host) ? NETHOST : LOCALHOST;
-               } else {
-                       if (dp = strchr(mp->m_host, '.')) {
-                               *dp = NULL;
-                               if (pp = OfficialName(mp->m_host))
-                                       goto got_real_host;
-                               *dp = '.';
-                       }
-                       mp->m_type = BADHOST;
-               }
-#endif /* not DUMB */
 
 got_host: ;
        if (route)
@@ -261,18 +205,12 @@ adrformat(struct mailname *mp)
        static char addr[BUFSIZ];
        static char buffer[BUFSIZ];
 
-#ifdef DUMB
        if (mp->m_nohost)
                strncpy(addr, mp->m_mbox ? mp->m_mbox : "", sizeof(addr));
-       else
-#endif /* DUMB */
-
-#ifndef BANG
-       if (mp->m_type != UUCPHOST)
+       else if (mp->m_type != UUCPHOST)
                snprintf(addr, sizeof(addr), mp->m_host ? "%s%s@%s" : "%s%s",
                        empty(mp->m_path), empty(mp->m_mbox), mp->m_host);
        else
-#endif /* not BANG */
                snprintf(addr, sizeof(addr), "%s!%s", mp->m_host, mp->m_mbox);
 
        if (mp->m_pers || mp->m_path) {