X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/9514ca81bd12a47df977822efc14ff285bd5bc10..94187a80bd60baab4b9c4b949ad820d730578123:/sbr/addrsbr.c diff --git a/sbr/addrsbr.c b/sbr/addrsbr.c index 68bb6dec..eadf1d07 100644 --- a/sbr/addrsbr.c +++ b/sbr/addrsbr.c @@ -77,7 +77,7 @@ static char adr[BUFSIZ]; static int eai = 0; void -enable_eai() { +enable_eai(void) { eai = 1; } @@ -89,7 +89,7 @@ getname (const char *addrs) pers = mbox = host = route = grp = note = NULL; err[0] = '\0'; - if ((ap = getadrx (addrs ? addrs : "", eai)) == NULL) { + if ((ap = getadrx (FENDNULL(addrs), eai)) == NULL) { return NULL; } @@ -204,20 +204,18 @@ mnfree (struct mailname *mp) if (!mp) return; - mh_xfree(mp->m_text); - mh_xfree(mp->m_pers); - mh_xfree(mp->m_mbox); - mh_xfree(mp->m_host); - mh_xfree(mp->m_path); - mh_xfree(mp->m_gname); - mh_xfree(mp->m_note); + free(mp->m_text); + free(mp->m_pers); + free(mp->m_mbox); + free(mp->m_host); + free(mp->m_path); + free(mp->m_gname); + free(mp->m_note); free(mp); } -#define empty(s) ((s) ? (s) : "") - char * auxformat (struct mailname *mp, int extras) { @@ -225,15 +223,13 @@ auxformat (struct mailname *mp, int extras) static char buffer[BUFSIZ]; if (mp->m_nohost) - strncpy (addr, mp->m_mbox ? mp->m_mbox : "", sizeof(addr)); - else - - if (mp->m_type != UUCPHOST) { + strncpy (addr, FENDNULL(mp->m_mbox), sizeof(addr)); + else if (mp->m_type != UUCPHOST) { if (mp->m_host) - snprintf (addr, sizeof(addr), "%s%s@%s", empty(mp->m_path), - empty(mp->m_mbox), mp->m_host); - else snprintf (addr, sizeof(addr), "%s%s", empty(mp->m_path), - empty(mp->m_mbox)); + snprintf (addr, sizeof(addr), "%s%s@%s", FENDNULL(mp->m_path), + FENDNULL(mp->m_mbox), mp->m_host); + else snprintf (addr, sizeof(addr), "%s%s", FENDNULL(mp->m_path), + FENDNULL(mp->m_mbox)); } else snprintf (addr, sizeof(addr), "%s!%s", mp->m_host, mp->m_mbox); @@ -249,12 +245,10 @@ auxformat (struct mailname *mp, int extras) snprintf (buffer, sizeof(buffer), "%s <%s>", legal_person (mp->m_pers ? mp->m_pers : mp->m_mbox), addr); - } + } else if (mp->m_note) + snprintf (buffer, sizeof(buffer), "%s %s", addr, mp->m_note); else - if (mp->m_note) - snprintf (buffer, sizeof(buffer), "%s %s", addr, mp->m_note); - else - strncpy (buffer, addr, sizeof(buffer)); + strncpy (buffer, addr, sizeof(buffer)); return buffer; } @@ -273,7 +267,7 @@ auxformat (struct mailname *mp, int extras) * Check if this is my address */ -int +bool ismymbox (struct mailname *np) { int oops; @@ -300,12 +294,12 @@ ismymbox (struct mailname *np) if ((cp = getname(am)) == NULL) { inform("Unable to find address in local-mailbox, continuing..."); - return 0; + return false; } if ((mq.m_next = getm (cp, NULL, 0, NULL, 0)) == NULL) { inform("invalid entry in local-mailbox: %s, continuing...", cp); - return 0; + return false; } /* Sigh, it turns out that the address parser gets messed up @@ -355,8 +349,8 @@ ismymbox (struct mailname *np) for (mp = &mq; mp; mp = mp->m_next) { fprintf (stderr, "Local- or Alternate-Mailbox: text=\"%s\" " "mbox=\"%s\" host=\"%s\" %s\n", - mp->m_text ? mp->m_text : "", mp->m_mbox, - mp->m_host ? mp->m_host : "", + FENDNULL(mp->m_text), mp->m_mbox, + FENDNULL(mp->m_host), snprintb (buffer, sizeof(buffer), (unsigned) mp->m_type, WBITS)); } @@ -364,7 +358,7 @@ ismymbox (struct mailname *np) } if (np == NULL) /* XXX */ - return 0; + return false; /* * Don't perform this "local" test if we have a Local-Mailbox set @@ -385,7 +379,7 @@ ismymbox (struct mailname *np) case LOCALHOST: local_test: ; if (!strcasecmp (np->m_mbox, mq.m_mbox)) - return 1; + return true; break; default: @@ -423,7 +417,7 @@ local_test: ; } if (mp->m_nohost) - return 1; + return true; if (np->m_host == NULL || mp->m_host == NULL) continue; if ((len = strlen (cp = np->m_host)) @@ -447,8 +441,8 @@ local_test: ; continue; break; } - return 1; + return true; } - return 0; + return false; }