X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=sbr%2Faddrsbr.c;h=8a468bbb141b72c3086e15801236fa55076ddb67;hb=0287c2e441fbc748cb11f96a5afd6dbdf68b0818;hp=649e06f4631f226555dde622820e4110c1a6de9d;hpb=19f0a0fb37951be3155401e02425cb25365ff601;p=mmh diff --git a/sbr/addrsbr.c b/sbr/addrsbr.c index 649e06f..8a468bb 100644 --- a/sbr/addrsbr.c +++ b/sbr/addrsbr.c @@ -145,7 +145,7 @@ getm (char *str, char *dfhost, int dftype, int wanthost, char *eresult) } if (dfhost == NULL) { - dfhost = LocalName (); + dfhost = LocalName (0); dftype = LOCALHOST; } @@ -202,10 +202,10 @@ getm (char *str, char *dfhost, int dftype, int wanthost, char *eresult) } if (wanthost == AD_NHST) - mp->m_type = !mh_strcasecmp (LocalName (), mp->m_host) + mp->m_type = !mh_strcasecmp (LocalName (0), mp->m_host) ? LOCALHOST : NETHOST; else - mp->m_type = mh_strcasecmp (LocalName(), mp->m_host) ? NETHOST : LOCALHOST; + mp->m_type = mh_strcasecmp (LocalName(0), mp->m_host) ? NETHOST : LOCALHOST; got_host: ; if (route) @@ -287,17 +287,20 @@ auxformat (struct mailname *mp, int extras) /* - * address specific "sprintf" + * This used to be adrsprintf() (where it would format an address for you + * given a username and a domain). But somewhere we got to the point where + * the only caller was post, and it only called it with both arguments NULL. + * So the function was renamed with a more sensible name. */ char * -adrsprintf (char *username, char *domain) +getlocaladdr(void) { int snprintf_return; + char *username, *domain; static char addr[BUFSIZ]; - if (username == NULL) - username = getusername(); + username = getusername(); if (username_extension_masquerading) { /* mts.conf contains "masquerade:[...]username_extension[...]", so tack @@ -312,7 +315,7 @@ adrsprintf (char *username, char *domain) "%s%s", username, extension); if (snprintf_return < 0 || - snprintf_return >= sizeof(username_with_extension)) + snprintf_return >= (int) sizeof(username_with_extension)) adios(NULL, "snprintf() error writing username (%d chars) and" " $USERNAME_EXTENSION (%d chars) to array of BUFSIZ (%d)" " chars", @@ -324,12 +327,11 @@ adrsprintf (char *username, char *domain) return username; - if (domain == NULL) - domain = LocalName(); + domain = LocalName(0); snprintf_return = snprintf (addr, sizeof(addr), "%s@%s", username, domain); - if (snprintf_return < 0 || snprintf_return >= sizeof(addr)) + if (snprintf_return < 0 || snprintf_return >= (int) sizeof(addr)) adios(NULL, "snprintf() error writing username (%d chars), domain (%d" " chars), and 1 separator char to array of BUFSIZ (%d) chars", strlen(username), strlen(domain), BUFSIZ); @@ -361,7 +363,7 @@ ismymbox (struct mailname *np) char buffer[BUFSIZ]; struct mailname *mp; static char *am = NULL; - static struct mailname mq={NULL}; + static struct mailname mq; /* * If this is the first call, initialize @@ -417,7 +419,7 @@ ismymbox (struct mailname *np) switch (np->m_type) { case NETHOST: - len = strlen (cp = LocalName ()); + len = strlen (cp = LocalName (0)); if (!uprf (np->m_host, cp) || np->m_host[len] != '.') break; goto local_test;