From 0924c25117221cccead69fa65d416e6d7efff8fa Mon Sep 17 00:00:00 2001 From: Richard Russon Date: Tue, 28 Nov 2017 19:08:21 +0000 Subject: [PATCH] standardise the address functions --- address.c | 93 ++++++++++++++++++++++---------------------- address.h | 20 +++++----- alias.c | 10 ++--- commands.c | 8 ++-- compose.c | 2 +- copy.c | 6 +-- edit.c | 8 ++-- envelope.c | 16 ++++---- group.c | 6 +-- hcache/hcache.c | 2 +- init.c | 24 ++++++------ main.c | 12 +++--- mbox.c | 8 ++-- ncrypt/crypt.c | 16 ++++---- ncrypt/crypt_gpgme.c | 14 +++---- ncrypt/pgp.c | 10 ++--- ncrypt/pgpkey.c | 4 +- ncrypt/smime.c | 2 +- parse.c | 30 +++++++------- pop_auth.c | 2 +- query.c | 26 ++++++------- recvcmd.c | 8 ++-- remailer.c | 6 +-- send.c | 76 ++++++++++++++++++------------------ sendlib.c | 24 ++++++------ url.c | 2 +- 26 files changed, 217 insertions(+), 218 deletions(-) diff --git a/address.c b/address.c index ef0a96d80..8e5f90e81 100644 --- a/address.c +++ b/address.c @@ -38,16 +38,15 @@ * | addrsrc() | Search for an e-mail address in a list * | has_recips() | Count the number of Addresses with valid recipients * | mutt_parse_adrlist() | Parse a list of email addresses - * | rfc822_append() | Append one list of addresses onto another - * | rfc822_cat() | Copy a string and escape the specified characters - * | rfc822_cpy_adr() | Copy an Address - * | rfc822_cpy_adr_real | Copy the real address - * | rfc822_free_address() | Free a list of Addresses - * | rfc822_parse_adrlist() | Parse a list of email addresses - * | rfc822_qualify() | Expand local names in an Address list using a hostname - * | rfc822_remove_from_adrlist() | Remove an Address from a list - * | rfc822_valid_msgid() | Is this a valid Message ID? - * | rfc822_write_address | Write an address to a buffer + * | mutt_addr_append() | Append one list of addresses onto another + * | mutt_addr_cat() | Copy a string and escape the specified characters + * | mutt_addr_copy_list() | Copy an Address + * | mutt_addr_copy | Copy the real address + * | mutt_addr_free() | Free a list of Addresses + * | mutt_addr_parse_list() | Parse a list of email addresses + * | mutt_addr_qualify() | Expand local names in an Address list using a hostname + * | mutt_addr_remove_from_list() | Remove an Address from a list + * | mutt_addr_valid_msgid() | Is this a valid Message ID? */ #include "config.h" @@ -87,12 +86,12 @@ const char *const RFC822Errors[] = { }; /** - * rfc822_new_address - Create a new Address + * mutt_addr_new - Create a new Address * @retval ptr Newly allocated Address * - * Free the result with free_address() or rfc822_free_address() + * Free the result with free_address() or mutt_addr_free() */ -struct Address *rfc822_new_address(void) +struct Address *mutt_addr_new(void) { return mutt_mem_calloc(1, sizeof(struct Address)); } @@ -111,13 +110,13 @@ static void free_address(struct Address *a) } /** - * rfc822_remove_from_adrlist - Remove an Address from a list + * mutt_addr_remove_from_list - Remove an Address from a list * @param a Address list * @param mailbox Email address to match * @retval 0 Success * @retval -1 Error, or email not found */ -int rfc822_remove_from_adrlist(struct Address **a, const char *mailbox) +int mutt_addr_remove_from_list(struct Address **a, const char *mailbox) { struct Address *p = NULL, *last = NULL, *t = NULL; int rc = -1; @@ -148,10 +147,10 @@ int rfc822_remove_from_adrlist(struct Address **a, const char *mailbox) } /** - * rfc822_free_address - Free a list of Addresses + * mutt_addr_free - Free a list of Addresses * @param p Top of the list */ -void rfc822_free_address(struct Address **p) +void mutt_addr_free(struct Address **p) { struct Address *t = NULL; @@ -462,11 +461,11 @@ static const char *parse_addr_spec(const char *s, char *comment, size_t *comment static void add_addrspec(struct Address **top, struct Address **last, const char *phrase, char *comment, size_t *commentlen, size_t commentmax) { - struct Address *cur = rfc822_new_address(); + struct Address *cur = mutt_addr_new(); if (parse_addr_spec(phrase, comment, commentlen, commentmax, cur) == NULL) { - rfc822_free_address(&cur); + mutt_addr_free(&cur); return; } @@ -478,13 +477,13 @@ static void add_addrspec(struct Address **top, struct Address **last, const char } /** - * rfc822_parse_adrlist - Parse a list of email addresses + * mutt_addr_parse_list - Parse a list of email addresses * @param top List to append addresses * @param s String to parse * @retval ptr Top of the address list * @retval NULL Error */ -struct Address *rfc822_parse_adrlist(struct Address *top, const char *s) +struct Address *mutt_addr_parse_list(struct Address *top, const char *s) { int ws_pending, nl; const char *ps = NULL; @@ -529,7 +528,7 @@ struct Address *rfc822_parse_adrlist(struct Address *top, const char *s) ps = next_token(s, comment, &commentlen, sizeof(comment) - 1); if (!ps) { - rfc822_free_address(&top); + mutt_addr_free(&top); return NULL; } s = ps; @@ -541,14 +540,14 @@ struct Address *rfc822_parse_adrlist(struct Address *top, const char *s) ps = parse_quote(s + 1, phrase, &phraselen, sizeof(phrase) - 1); if (!ps) { - rfc822_free_address(&top); + mutt_addr_free(&top); return NULL; } s = ps; } else if (*s == ':') { - cur = rfc822_new_address(); + cur = mutt_addr_new(); terminate_buffer(phrase, phraselen); cur->mailbox = mutt_str_strdup(phrase); cur->group = 1; @@ -577,7 +576,7 @@ struct Address *rfc822_parse_adrlist(struct Address *top, const char *s) } /* add group terminator */ - cur = rfc822_new_address(); + cur = mutt_addr_new(); if (last) { last->next = cur; @@ -591,14 +590,14 @@ struct Address *rfc822_parse_adrlist(struct Address *top, const char *s) else if (*s == '<') { terminate_buffer(phrase, phraselen); - cur = rfc822_new_address(); + cur = mutt_addr_new(); if (phraselen) cur->personal = mutt_str_strdup(phrase); ps = parse_route_addr(s + 1, comment, &commentlen, sizeof(comment) - 1, cur); if (!ps) { - rfc822_free_address(&top); - rfc822_free_address(&cur); + mutt_addr_free(&top); + mutt_addr_free(&cur); return NULL; } @@ -619,7 +618,7 @@ struct Address *rfc822_parse_adrlist(struct Address *top, const char *s) ps = next_token(s, phrase, &phraselen, sizeof(phrase) - 1); if (!ps) { - rfc822_free_address(&top); + mutt_addr_free(&top); return NULL; } s = ps; @@ -644,14 +643,14 @@ struct Address *rfc822_parse_adrlist(struct Address *top, const char *s) } /** - * rfc822_qualify - Expand local names in an Address list using a hostname + * mutt_addr_qualify - Expand local names in an Address list using a hostname * @param addr Address list * @param host Hostname * * Any addresses containing a bare name will be expanded using the hostname. * e.g. "john", "example.com" -> 'john@example.com'. */ -void rfc822_qualify(struct Address *addr, const char *host) +void mutt_addr_qualify(struct Address *addr, const char *host) { char *p = NULL; @@ -668,13 +667,13 @@ void rfc822_qualify(struct Address *addr, const char *host) } /** - * rfc822_cat - Copy a string and escape the specified characters + * mutt_addr_cat - Copy a string and escape the specified characters * @param buf Buffer for the result * @param buflen Length of the result buffer * @param value String to copy * @param specials Characters to be escaped */ -void rfc822_cat(char *buf, size_t buflen, const char *value, const char *specials) +void mutt_addr_cat(char *buf, size_t buflen, const char *value, const char *specials) { if (strpbrk(value, specials)) { @@ -701,15 +700,15 @@ void rfc822_cat(char *buf, size_t buflen, const char *value, const char *special } /** - * rfc822_cpy_adr_real - Copy the real address + * mutt_addr_copy - Copy the real address * @param addr Address to copy * @retval ptr New Address * - * this should be rfc822_cpy_adr + * this should be mutt_addr_copy_list */ -struct Address *rfc822_cpy_adr_real(struct Address *addr) +struct Address *mutt_addr_copy(struct Address *addr) { - struct Address *p = rfc822_new_address(); + struct Address *p = mutt_addr_new(); p->personal = mutt_str_strdup(addr->personal); p->mailbox = mutt_str_strdup(addr->mailbox); @@ -720,14 +719,14 @@ struct Address *rfc822_cpy_adr_real(struct Address *addr) } /** - * rfc822_cpy_adr - Copy a list of addresses + * mutt_addr_copy_list - Copy a list of addresses * @param addr Address list * @param prune Skip groups if there are more addresses * @retval ptr New Address list * * this should be rfc822_cpy_adrlist */ -struct Address *rfc822_cpy_adr(struct Address *addr, int prune) +struct Address *mutt_addr_copy_list(struct Address *addr, int prune) { struct Address *top = NULL, *last = NULL; @@ -739,17 +738,17 @@ struct Address *rfc822_cpy_adr(struct Address *addr, int prune) } else if (last) { - last->next = rfc822_cpy_adr_real(addr); + last->next = mutt_addr_copy(addr); last = last->next; } else - top = last = rfc822_cpy_adr_real(addr); + top = last = mutt_addr_copy(addr); } return top; } /** - * rfc822_append - Append one list of addresses onto another + * mutt_addr_append - Append one list of addresses onto another * @param a Destination Address list * @param b Source Address list * @param prune Skip groups if there are more addresses @@ -757,7 +756,7 @@ struct Address *rfc822_cpy_adr(struct Address *addr, int prune) * * Append the Source onto the end of the Destination Address list. */ -struct Address *rfc822_append(struct Address **a, struct Address *b, int prune) +struct Address *mutt_addr_append(struct Address **a, struct Address *b, int prune) { struct Address *tmp = *a; @@ -766,22 +765,22 @@ struct Address *rfc822_append(struct Address **a, struct Address *b, int prune) if (!b) return tmp; if (tmp) - tmp->next = rfc822_cpy_adr(b, prune); + tmp->next = mutt_addr_copy_list(b, prune); else - tmp = *a = rfc822_cpy_adr(b, prune); + tmp = *a = mutt_addr_copy_list(b, prune); while (tmp && tmp->next) tmp = tmp->next; return tmp; } /** - * rfc822_valid_msgid - Is this a valid Message ID? + * mutt_addr_valid_msgid - Is this a valid Message ID? * @param msgid Message ID * @retval bool True if it is valid * * Incomplete. Only used to thwart the APOP MD5 attack (#2846). */ -bool rfc822_valid_msgid(const char *msgid) +bool mutt_addr_valid_msgid(const char *msgid) { /* msg-id = "<" addr-spec ">" * addr-spec = local-part "@" domain diff --git a/address.h b/address.h index f7c59bf51..609491f3c 100644 --- a/address.h +++ b/address.h @@ -51,18 +51,18 @@ enum AddressError ERR_BAD_ADDR_SPEC }; -struct Address *rfc822_new_address(void); -void rfc822_free_address(struct Address **p); -void rfc822_qualify(struct Address *addr, const char *host); -struct Address *rfc822_parse_adrlist(struct Address *top, const char *s); -struct Address *rfc822_cpy_adr(struct Address *addr, int prune); -struct Address *rfc822_cpy_adr_real(struct Address *addr); -struct Address *rfc822_append(struct Address **a, struct Address *b, int prune); +struct Address *mutt_addr_new(void); +void mutt_addr_free(struct Address **p); +void mutt_addr_qualify(struct Address *addr, const char *host); +struct Address *mutt_addr_parse_list(struct Address *top, const char *s); +struct Address *mutt_addr_copy_list(struct Address *addr, int prune); +struct Address *mutt_addr_copy(struct Address *addr); +struct Address *mutt_addr_append(struct Address **a, struct Address *b, int prune); int rfc822_write_address(char *buf, size_t buflen, struct Address *addr, int display); void rfc822_write_address_single(char *buf, size_t buflen, struct Address *addr, int display); -void rfc822_cat(char *buf, size_t buflen, const char *value, const char *specials); -bool rfc822_valid_msgid(const char *msgid); -int rfc822_remove_from_adrlist(struct Address **a, const char *mailbox); +void mutt_addr_cat(char *buf, size_t buflen, const char *value, const char *specials); +bool mutt_addr_valid_msgid(const char *msgid); +int mutt_addr_remove_from_list(struct Address **a, const char *mailbox); extern int RFC822Error; extern const char *const RFC822Errors[]; diff --git a/alias.c b/alias.c index dcf51d523..9a0bf1457 100644 --- a/alias.c +++ b/alias.c @@ -83,7 +83,7 @@ static struct Address *expand_aliases_r(struct Address *a, struct ListHead *expn if (!i) { mutt_list_insert_head(expn, mutt_str_strdup(a->mailbox)); - w = rfc822_cpy_adr(t, 0); + w = mutt_addr_copy_list(t, 0); w = expand_aliases_r(w, expn); if (head) last->next = w; @@ -95,7 +95,7 @@ static struct Address *expand_aliases_r(struct Address *a, struct ListHead *expn t = a; a = a->next; t->next = NULL; - rfc822_free_address(&t); + mutt_addr_free(&t); continue; } else @@ -126,7 +126,7 @@ static struct Address *expand_aliases_r(struct Address *a, struct ListHead *expn if (option(OPT_USE_DOMAIN) && (fqdn = mutt_fqdn(1))) { /* now qualify all local addresses */ - rfc822_qualify(head, fqdn); + mutt_addr_qualify(head, fqdn); } return head; @@ -355,7 +355,7 @@ retry_name: return; } - new->addr = rfc822_parse_adrlist(new->addr, buf); + new->addr = mutt_addr_parse_list(new->addr, buf); if (!new->addr) BEEP(); if (mutt_addrlist_to_intl(new->addr, &err)) @@ -687,7 +687,7 @@ void mutt_free_alias(struct Alias **p) *p = (*p)->next; mutt_alias_delete_reverse(t); FREE(&t->name); - rfc822_free_address(&t->addr); + mutt_addr_free(&t->addr); FREE(&t); } } diff --git a/commands.c b/commands.c index 8a6afaa08..70fc1860c 100644 --- a/commands.c +++ b/commands.c @@ -312,7 +312,7 @@ void ci_bounce_message(struct Header *h) { mutt_error(_("Bad IDN: '%s'"), err); FREE(&err); - rfc822_free_address(&adr); + mutt_addr_free(&adr); return; } @@ -334,7 +334,7 @@ void ci_bounce_message(struct Header *h) if (query_quadoption(OPT_BOUNCE, prompt) != MUTT_YES) { - rfc822_free_address(&adr); + mutt_addr_free(&adr); mutt_window_clearline(MuttMessageWindow, 0); mutt_message(h ? _("Message not bounced.") : _("Messages not bounced.")); return; @@ -343,7 +343,7 @@ void ci_bounce_message(struct Header *h) mutt_window_clearline(MuttMessageWindow, 0); rc = mutt_bounce_message(NULL, h, adr); - rfc822_free_address(&adr); + mutt_addr_free(&adr); /* If no error, or background, display message. */ if ((rc == 0) || (rc == S_BKG)) mutt_message(h ? _("Message bounced.") : _("Messages bounced.")); @@ -986,7 +986,7 @@ int mutt_edit_content_type(struct Header *h, struct Body *b, FILE *fp) { l = strlen(buf); - rfc822_cat(tmp, sizeof(tmp), p->value, MimeSpecials); + mutt_addr_cat(tmp, sizeof(tmp), p->value, MimeSpecials); snprintf(buf + l, sizeof(buf) - l, "; %s=%s", p->attribute, tmp); } } diff --git a/compose.c b/compose.c index ef06acdb0..c113ad202 100644 --- a/compose.c +++ b/compose.c @@ -474,7 +474,7 @@ static void edit_address_list(int line, struct Address **addr) rfc822_write_address(buf, sizeof(buf), *addr, 0); if (mutt_get_field(_(Prompts[line]), buf, sizeof(buf), MUTT_ALIAS) == 0) { - rfc822_free_address(addr); + mutt_addr_free(addr); *addr = mutt_parse_adrlist(*addr, buf); *addr = mutt_expand_aliases(*addr); } diff --git a/copy.c b/copy.c index 63c44db70..33767954c 100644 --- a/copy.c +++ b/copy.c @@ -396,7 +396,7 @@ int mutt_copy_header(FILE *in, struct Header *h, FILE *out, int flags, const cha fputs("Content-Type: text/plain; charset=", out); mutt_canonical_charset(chsbuf, sizeof(chsbuf), Charset ? Charset : "us-ascii"); - rfc822_cat(buffer, sizeof(buffer), chsbuf, MimeSpecials); + mutt_addr_cat(buffer, sizeof(buffer), chsbuf, MimeSpecials); fputs(buffer, out); fputc('\n', out); } @@ -1026,7 +1026,7 @@ static int address_header_decode(char **h) return 0; } - a = rfc822_parse_adrlist(a, s + l); + a = mutt_addr_parse_list(a, s + l); if (!a) return 0; @@ -1047,7 +1047,7 @@ static int address_header_decode(char **h) format_address_header(h, a); } - rfc822_free_address(&a); + mutt_addr_free(&a); FREE(&s); return 1; diff --git a/edit.c b/edit.c index 349d4bfeb..66fbadd78 100644 --- a/edit.c +++ b/edit.c @@ -262,7 +262,7 @@ static void be_edit_header(struct Envelope *e, int force) { if (mutt_enter_string(tmp, sizeof(tmp), 4, 0) == 0) { - rfc822_free_address(&e->to); + mutt_addr_free(&e->to); e->to = mutt_parse_adrlist(e->to, tmp); e->to = mutt_expand_aliases(e->to); mutt_addrlist_to_intl(e->to, NULL); /* XXX - IDNA error reporting? */ @@ -295,7 +295,7 @@ static void be_edit_header(struct Envelope *e, int force) rfc822_write_address(tmp, sizeof(tmp), e->cc, 0); if (mutt_enter_string(tmp, sizeof(tmp), 4, 0) == 0) { - rfc822_free_address(&e->cc); + mutt_addr_free(&e->cc); e->cc = mutt_parse_adrlist(e->cc, tmp); e->cc = mutt_expand_aliases(e->cc); tmp[0] = '\0'; @@ -316,7 +316,7 @@ static void be_edit_header(struct Envelope *e, int force) rfc822_write_address(tmp, sizeof(tmp), e->bcc, 0); if (mutt_enter_string(tmp, sizeof(tmp), 5, 0) == 0) { - rfc822_free_address(&e->bcc); + mutt_addr_free(&e->bcc); e->bcc = mutt_parse_adrlist(e->bcc, tmp); e->bcc = mutt_expand_aliases(e->bcc); mutt_addrlist_to_intl(e->bcc, NULL); @@ -433,7 +433,7 @@ int mutt_builtin_editor(const char *path, struct Header *msg, struct Header *cur mutt_str_replace(&msg->env->subject, p); break; case 't': - msg->env->to = rfc822_parse_adrlist(msg->env->to, p); + msg->env->to = mutt_addr_parse_list(msg->env->to, p); msg->env->to = mutt_expand_aliases(msg->env->to); break; case 'u': diff --git a/envelope.c b/envelope.c index 192e6940e..a65f2f38c 100644 --- a/envelope.c +++ b/envelope.c @@ -61,14 +61,14 @@ void mutt_free_envelope(struct Envelope **p) { if (!*p) return; - rfc822_free_address(&(*p)->return_path); - rfc822_free_address(&(*p)->from); - rfc822_free_address(&(*p)->to); - rfc822_free_address(&(*p)->cc); - rfc822_free_address(&(*p)->bcc); - rfc822_free_address(&(*p)->sender); - rfc822_free_address(&(*p)->reply_to); - rfc822_free_address(&(*p)->mail_followup_to); + mutt_addr_free(&(*p)->return_path); + mutt_addr_free(&(*p)->from); + mutt_addr_free(&(*p)->to); + mutt_addr_free(&(*p)->cc); + mutt_addr_free(&(*p)->bcc); + mutt_addr_free(&(*p)->sender); + mutt_addr_free(&(*p)->reply_to); + mutt_addr_free(&(*p)->mail_followup_to); FREE(&(*p)->list_post); FREE(&(*p)->subject); diff --git a/group.c b/group.c index 97998d717..01897218b 100644 --- a/group.c +++ b/group.c @@ -54,7 +54,7 @@ static void group_remove(struct Group *g) if (!g) return; mutt_hash_delete(Groups, g->name, g, NULL); - rfc822_free_address(&g->as); + mutt_addr_free(&g->as); mutt_free_regex_list(&g->rs); FREE(&g->name); FREE(&g); @@ -113,7 +113,7 @@ static void group_add_adrlist(struct Group *g, struct Address *a) for (p = &g->as; *p; p = &((*p)->next)) ; - q = rfc822_cpy_adr(a, 0); + q = mutt_addr_copy_list(a, 0); q = mutt_remove_xrefs(g->as, q); *p = q; } @@ -128,7 +128,7 @@ static int group_remove_adrlist(struct Group *g, struct Address *a) return -1; for (p = a; p; p = p->next) - rfc822_remove_from_adrlist(&g->as, p->mailbox); + mutt_addr_remove_from_list(&g->as, p->mailbox); return 0; } diff --git a/hcache/hcache.c b/hcache/hcache.c index 0683fd546..e24356d18 100644 --- a/hcache/hcache.c +++ b/hcache/hcache.c @@ -262,7 +262,7 @@ static void restore_address(struct Address **a, const unsigned char *d, int *off while (counter) { - *a = rfc822_new_address(); + *a = mutt_addr_new(); restore_char(&(*a)->personal, d, off, convert); restore_char(&(*a)->mailbox, d, off, false); restore_int((unsigned int *) &(*a)->group, d, off); diff --git a/init.c b/init.c index dbfb236bb..9975a00ec 100644 --- a/init.c +++ b/init.c @@ -456,9 +456,9 @@ int mutt_option_set(const struct Option *val, struct Buffer *err) } break; case DT_ADDRESS: - rfc822_free_address((struct Address **) MuttVars[idx].data); + mutt_addr_free((struct Address **) MuttVars[idx].data); *((struct Address **) MuttVars[idx].data) = - rfc822_parse_adrlist(NULL, (const char *) val->data); + mutt_addr_parse_list(NULL, (const char *) val->data); break; case DT_PATH: { @@ -711,7 +711,7 @@ static void free_opt(struct Option *p) switch (DTYPE(p->type)) { case DT_ADDRESS: - rfc822_free_address((struct Address **) p->data); + mutt_addr_free((struct Address **) p->data); break; case DT_REGEX: pp = (struct Regex *) p->data; @@ -1509,7 +1509,7 @@ static int parse_group(struct Buffer *buf, struct Buffer *s, unsigned long data, { snprintf(err->data, err->dsize, _("%sgroup: warning: bad IDN '%s'.\n"), data == 1 ? "un" : "", estr); - rfc822_free_address(&addr); + mutt_addr_free(&addr); FREE(&estr); goto bail; } @@ -1517,7 +1517,7 @@ static int parse_group(struct Buffer *buf, struct Buffer *s, unsigned long data, mutt_group_context_add_adrlist(gc, addr); else if (data == MUTT_UNGROUP) mutt_group_context_remove_adrlist(gc, addr); - rfc822_free_address(&addr); + mutt_addr_free(&addr); break; } } @@ -1933,7 +1933,7 @@ static int parse_alias(struct Buffer *buf, struct Buffer *s, unsigned long data, { mutt_alias_delete_reverse(tmp); /* override the previous value */ - rfc822_free_address(&tmp->addr); + mutt_addr_free(&tmp->addr); if (CurrentMenu == MENU_ALIAS) mutt_set_current_menu_redraw_full(); } @@ -2117,9 +2117,9 @@ static void restore_default(struct Option *p) } break; case DT_ADDRESS: - rfc822_free_address((struct Address **) p->data); + mutt_addr_free((struct Address **) p->data); if (p->init) - *((struct Address **) p->data) = rfc822_parse_adrlist(NULL, (char *) p->init); + *((struct Address **) p->data) = mutt_addr_parse_list(NULL, (char *) p->init); break; case DT_BOOL: if (p->init) @@ -2656,7 +2656,7 @@ static int parse_set(struct Buffer *tmp, struct Buffer *s, unsigned long data, if (myvar) myvar_del(myvar); else if (DTYPE(MuttVars[idx].type) == DT_ADDRESS) - rfc822_free_address((struct Address **) MuttVars[idx].data); + mutt_addr_free((struct Address **) MuttVars[idx].data); else if (DTYPE(MuttVars[idx].type) == DT_MBTABLE) free_mbtable((struct MbTable **) MuttVars[idx].data); else @@ -2785,9 +2785,9 @@ static int parse_set(struct Buffer *tmp, struct Buffer *s, unsigned long data, } else { - rfc822_free_address((struct Address **) MuttVars[idx].data); + mutt_addr_free((struct Address **) MuttVars[idx].data); *((struct Address **) MuttVars[idx].data) = - rfc822_parse_adrlist(NULL, tmp->data); + mutt_addr_parse_list(NULL, tmp->data); } } } @@ -4210,7 +4210,7 @@ void mutt_init(int skip_sys_rc, struct ListHead *commands) p = getenv("EMAIL"); if (p) - From = rfc822_parse_adrlist(NULL, p); + From = mutt_addr_parse_list(NULL, p); mutt_set_langinfo_charset(); mutt_set_charset(Charset); diff --git a/main.c b/main.c index 5201b94ad..6e0c3485e 100644 --- a/main.c +++ b/main.c @@ -304,9 +304,9 @@ int main(int argc, char **argv, char **env) if (!msg->env) msg->env = mutt_new_envelope(); if (i == 'b') - msg->env->bcc = rfc822_parse_adrlist(msg->env->bcc, optarg); + msg->env->bcc = mutt_addr_parse_list(msg->env->bcc, optarg); else - msg->env->cc = rfc822_parse_adrlist(msg->env->cc, optarg); + msg->env->cc = mutt_addr_parse_list(msg->env->cc, optarg); break; case 'D': @@ -588,7 +588,7 @@ int main(int argc, char **argv, char **env) } } else - msg->env->to = rfc822_parse_adrlist(msg->env->to, argv[i]); + msg->env->to = mutt_addr_parse_list(msg->env->to, argv[i]); } if (!draftFile && option(OPT_AUTOEDIT) && !msg->env->to && !msg->env->cc) @@ -728,9 +728,9 @@ int main(int argc, char **argv, char **env) } } - rfc822_append(&msg->env->to, opts_env->to, 0); - rfc822_append(&msg->env->cc, opts_env->cc, 0); - rfc822_append(&msg->env->bcc, opts_env->bcc, 0); + mutt_addr_append(&msg->env->to, opts_env->to, 0); + mutt_addr_append(&msg->env->cc, opts_env->cc, 0); + mutt_addr_append(&msg->env->bcc, opts_env->bcc, 0); if (opts_env->subject) mutt_str_replace(&msg->env->subject, opts_env->subject); diff --git a/mbox.c b/mbox.c index 2d1e50227..72d9758d1 100644 --- a/mbox.c +++ b/mbox.c @@ -216,10 +216,10 @@ static int mmdf_parse_mailbox(struct Context *ctx) } if (!hdr->env->return_path && return_path[0]) - hdr->env->return_path = rfc822_parse_adrlist(hdr->env->return_path, return_path); + hdr->env->return_path = mutt_addr_parse_list(hdr->env->return_path, return_path); if (!hdr->env->from) - hdr->env->from = rfc822_cpy_adr(hdr->env->return_path, 0); + hdr->env->from = mutt_addr_copy_list(hdr->env->return_path, 0); ctx->msgcount++; } @@ -388,10 +388,10 @@ static int mbox_parse_mailbox(struct Context *ctx) if (!curhdr->env->return_path && return_path[0]) curhdr->env->return_path = - rfc822_parse_adrlist(curhdr->env->return_path, return_path); + mutt_addr_parse_list(curhdr->env->return_path, return_path); if (!curhdr->env->from) - curhdr->env->from = rfc822_cpy_adr(curhdr->env->return_path, 0); + curhdr->env->from = mutt_addr_copy_list(curhdr->env->return_path, 0); lines = 0; } diff --git a/ncrypt/crypt.c b/ncrypt/crypt.c index 545deef2e..01db5753a 100644 --- a/ncrypt/crypt.c +++ b/ncrypt/crypt.c @@ -223,7 +223,7 @@ int mutt_protect(struct Header *msg, char *keylist) crypt_pgp_set_sender(mailbox); if (!msg->env->from) - rfc822_free_address(&from); + mutt_addr_free(&from); } if (msg->security & SIGN) @@ -853,12 +853,12 @@ int crypt_get_keys(struct Header *msg, char **keylist, int oppenc_mode) if ((WithCrypto & APPLICATION_PGP)) set_option(OPT_PGP_CHECK_TRUST); - last = rfc822_append(&adrlist, msg->env->to, 0); - last = rfc822_append(last ? &last : &adrlist, msg->env->cc, 0); - rfc822_append(last ? &last : &adrlist, msg->env->bcc, 0); + last = mutt_addr_append(&adrlist, msg->env->to, 0); + last = mutt_addr_append(last ? &last : &adrlist, msg->env->cc, 0); + mutt_addr_append(last ? &last : &adrlist, msg->env->bcc, 0); if (fqdn) - rfc822_qualify(adrlist, fqdn); + mutt_addr_qualify(adrlist, fqdn); adrlist = mutt_remove_duplicates(adrlist); *keylist = NULL; @@ -870,7 +870,7 @@ int crypt_get_keys(struct Header *msg, char **keylist, int oppenc_mode) *keylist = crypt_pgp_findkeys(adrlist, oppenc_mode); if (!*keylist) { - rfc822_free_address(&adrlist); + mutt_addr_free(&adrlist); return -1; } unset_option(OPT_PGP_CHECK_TRUST); @@ -882,7 +882,7 @@ int crypt_get_keys(struct Header *msg, char **keylist, int oppenc_mode) *keylist = crypt_smime_findkeys(adrlist, oppenc_mode); if (!*keylist) { - rfc822_free_address(&adrlist); + mutt_addr_free(&adrlist); return -1; } if (option(OPT_SMIME_SELF_ENCRYPT) || (quadoption(OPT_SMIME_ENCRYPT_SELF) == MUTT_YES)) @@ -897,7 +897,7 @@ int crypt_get_keys(struct Header *msg, char **keylist, int oppenc_mode) sprintf(*keylist + keylist_size, " %s", self_encrypt); } - rfc822_free_address(&adrlist); + mutt_addr_free(&adrlist); return 0; } diff --git a/ncrypt/crypt_gpgme.c b/ncrypt/crypt_gpgme.c index e8e537b0a..e58c5c78d 100644 --- a/ncrypt/crypt_gpgme.c +++ b/ncrypt/crypt_gpgme.c @@ -4404,7 +4404,7 @@ static struct CryptKeyInfo *crypt_getkeybyaddr(struct Address *a, this_key_has_addr_match = false; match = false; /* any match */ - r = rfc822_parse_adrlist(NULL, k->uid); + r = mutt_addr_parse_list(NULL, k->uid); for (p = r; p; p = p->next) { int validity = crypt_id_matches_addr(a, p, k); @@ -4426,7 +4426,7 @@ static struct CryptKeyInfo *crypt_getkeybyaddr(struct Address *a, } } } - rfc822_free_address(&r); + mutt_addr_free(&r); if (match) { @@ -4667,10 +4667,10 @@ static char *find_keys(struct Address *adrlist, unsigned int app, int oppenc_mod /* check for e-mail address */ if ((t = strchr(crypt_hook_val, '@')) && - (addr = rfc822_parse_adrlist(NULL, crypt_hook_val))) + (addr = mutt_addr_parse_list(NULL, crypt_hook_val))) { if (fqdn) - rfc822_qualify(addr, fqdn); + mutt_addr_qualify(addr, fqdn); q = addr; } else if (!oppenc_mode) @@ -4689,7 +4689,7 @@ static char *find_keys(struct Address *adrlist, unsigned int app, int oppenc_mod else if (r == MUTT_ABORT) { FREE(&keylist); - rfc822_free_address(&addr); + mutt_addr_free(&addr); mutt_list_free(&crypt_hook_list); return NULL; } @@ -4710,7 +4710,7 @@ static char *find_keys(struct Address *adrlist, unsigned int app, int oppenc_mod if (!k_info) { FREE(&keylist); - rfc822_free_address(&addr); + mutt_addr_free(&addr); mutt_list_free(&crypt_hook_list); return NULL; } @@ -4727,7 +4727,7 @@ static char *find_keys(struct Address *adrlist, unsigned int app, int oppenc_mod key_selected = true; crypt_free_key(&k_info); - rfc822_free_address(&addr); + mutt_addr_free(&addr); if (crypt_hook) crypt_hook = STAILQ_NEXT(crypt_hook, entries); diff --git a/ncrypt/pgp.c b/ncrypt/pgp.c index ce9eb97dd..6af127700 100644 --- a/ncrypt/pgp.c +++ b/ncrypt/pgp.c @@ -1280,10 +1280,10 @@ char *pgp_find_keys(struct Address *adrlist, int oppenc_mode) } /* check for e-mail address */ - if (strchr(keyID, '@') && (addr = rfc822_parse_adrlist(NULL, keyID))) + if (strchr(keyID, '@') && (addr = mutt_addr_parse_list(NULL, keyID))) { if (fqdn) - rfc822_qualify(addr, fqdn); + mutt_addr_qualify(addr, fqdn); q = addr; } else if (!oppenc_mode) @@ -1302,7 +1302,7 @@ char *pgp_find_keys(struct Address *adrlist, int oppenc_mode) else if (r == MUTT_ABORT) { FREE(&keylist); - rfc822_free_address(&addr); + mutt_addr_free(&addr); mutt_list_free(&crypt_hook_list); return NULL; } @@ -1323,7 +1323,7 @@ char *pgp_find_keys(struct Address *adrlist, int oppenc_mode) if (!k_info) { FREE(&keylist); - rfc822_free_address(&addr); + mutt_addr_free(&addr); mutt_list_free(&crypt_hook_list); return NULL; } @@ -1339,7 +1339,7 @@ char *pgp_find_keys(struct Address *adrlist, int oppenc_mode) key_selected = true; pgp_free_key(&k_info); - rfc822_free_address(&addr); + mutt_addr_free(&addr); if (crypt_hook) crypt_hook = STAILQ_NEXT(crypt_hook, entries); diff --git a/ncrypt/pgpkey.c b/ncrypt/pgpkey.c index d9a1cc372..89510f598 100644 --- a/ncrypt/pgpkey.c +++ b/ncrypt/pgpkey.c @@ -869,7 +869,7 @@ struct PgpKeyInfo *pgp_getkeybyaddr(struct Address *a, short abilities, for (q = k->address; q; q = q->next) { - r = rfc822_parse_adrlist(NULL, NONULL(q->addr)); + r = mutt_addr_parse_list(NULL, NONULL(q->addr)); for (p = r; p; p = p->next) { @@ -893,7 +893,7 @@ struct PgpKeyInfo *pgp_getkeybyaddr(struct Address *a, short abilities, } } - rfc822_free_address(&r); + mutt_addr_free(&r); } if (match) diff --git a/ncrypt/smime.c b/ncrypt/smime.c index 6417a0c6f..fe488c4f2 100644 --- a/ncrypt/smime.c +++ b/ncrypt/smime.c @@ -859,7 +859,7 @@ void smime_getkeys(struct Envelope *env) if (!found && (t = mutt_default_from())) { getkeys(t->mailbox); - rfc822_free_address(&t); + mutt_addr_free(&t); } } diff --git a/parse.c b/parse.c index dada31fec..c0d686dd3 100644 --- a/parse.c +++ b/parse.c @@ -770,12 +770,12 @@ int mutt_parse_rfc822_line(struct Envelope *e, struct Header *hdr, char *line, case 'a': if (mutt_str_strcasecmp(line + 1, "pparently-to") == 0) { - e->to = rfc822_parse_adrlist(e->to, p); + e->to = mutt_addr_parse_list(e->to, p); matched = 1; } else if (mutt_str_strcasecmp(line + 1, "pparently-from") == 0) { - e->from = rfc822_parse_adrlist(e->from, p); + e->from = mutt_addr_parse_list(e->from, p); matched = 1; } break; @@ -783,7 +783,7 @@ int mutt_parse_rfc822_line(struct Envelope *e, struct Header *hdr, char *line, case 'b': if (mutt_str_strcasecmp(line + 1, "cc") == 0) { - e->bcc = rfc822_parse_adrlist(e->bcc, p); + e->bcc = mutt_addr_parse_list(e->bcc, p); matched = 1; } break; @@ -791,7 +791,7 @@ int mutt_parse_rfc822_line(struct Envelope *e, struct Header *hdr, char *line, case 'c': if (mutt_str_strcasecmp(line + 1, "c") == 0) { - e->cc = rfc822_parse_adrlist(e->cc, p); + e->cc = mutt_addr_parse_list(e->cc, p); matched = 1; } else if (mutt_str_strncasecmp(line + 1, "ontent-", 7) == 0) @@ -866,7 +866,7 @@ int mutt_parse_rfc822_line(struct Envelope *e, struct Header *hdr, char *line, case 'f': if (mutt_str_strcasecmp("rom", line + 1) == 0) { - e->from = rfc822_parse_adrlist(e->from, p); + e->from = mutt_addr_parse_list(e->from, p); matched = 1; } #ifdef USE_NNTP @@ -951,13 +951,13 @@ int mutt_parse_rfc822_line(struct Envelope *e, struct Header *hdr, char *line, if (mutt_str_strcasecmp(line + 5, "reply-to") == 0) { /* override the Reply-To: field */ - rfc822_free_address(&e->reply_to); - e->reply_to = rfc822_parse_adrlist(e->reply_to, p); + mutt_addr_free(&e->reply_to); + e->reply_to = mutt_addr_parse_list(e->reply_to, p); matched = 1; } else if (mutt_str_strcasecmp(line + 5, "followup-to") == 0) { - e->mail_followup_to = rfc822_parse_adrlist(e->mail_followup_to, p); + e->mail_followup_to = mutt_addr_parse_list(e->mail_followup_to, p); matched = 1; } } @@ -993,12 +993,12 @@ int mutt_parse_rfc822_line(struct Envelope *e, struct Header *hdr, char *line, } else if (mutt_str_strcasecmp(line + 1, "eply-to") == 0) { - e->reply_to = rfc822_parse_adrlist(e->reply_to, p); + e->reply_to = mutt_addr_parse_list(e->reply_to, p); matched = 1; } else if (mutt_str_strcasecmp(line + 1, "eturn-path") == 0) { - e->return_path = rfc822_parse_adrlist(e->return_path, p); + e->return_path = mutt_addr_parse_list(e->return_path, p); matched = 1; } else if (mutt_str_strcasecmp(line + 1, "eceived") == 0) @@ -1022,7 +1022,7 @@ int mutt_parse_rfc822_line(struct Envelope *e, struct Header *hdr, char *line, } else if (mutt_str_strcasecmp(line + 1, "ender") == 0) { - e->sender = rfc822_parse_adrlist(e->sender, p); + e->sender = mutt_addr_parse_list(e->sender, p); matched = 1; } else if (mutt_str_strcasecmp(line + 1, "tatus") == 0) @@ -1060,7 +1060,7 @@ int mutt_parse_rfc822_line(struct Envelope *e, struct Header *hdr, char *line, case 't': if (mutt_str_strcasecmp(line + 1, "o") == 0) { - e->to = rfc822_parse_adrlist(e->to, p); + e->to = mutt_addr_parse_list(e->to, p); matched = 1; } break; @@ -1113,7 +1113,7 @@ int mutt_parse_rfc822_line(struct Envelope *e, struct Header *hdr, char *line, #endif else if (mutt_str_strcasecmp(line + 1, "-original-to") == 0) { - e->x_original_to = rfc822_parse_adrlist(e->x_original_to, p); + e->x_original_to = mutt_addr_parse_list(e->x_original_to, p); matched = 1; } @@ -1324,12 +1324,12 @@ struct Address *mutt_parse_adrlist(struct Address *p, const char *s) r = tmp; while ((r = strtok(r, " \t")) != NULL) { - p = rfc822_parse_adrlist(p, r); + p = mutt_addr_parse_list(p, r); r = NULL; } } else - p = rfc822_parse_adrlist(p, s); + p = mutt_addr_parse_list(p, s); return p; } diff --git a/pop_auth.c b/pop_auth.c index f7788a337..8a61e522c 100644 --- a/pop_auth.c +++ b/pop_auth.c @@ -220,7 +220,7 @@ static enum PopAuthRes pop_auth_apop(struct PopData *pop_data, const char *metho if (!pop_data->timestamp) return POP_A_UNAVAIL; - if (!rfc822_valid_msgid(pop_data->timestamp)) + if (!mutt_addr_valid_msgid(pop_data->timestamp)) { mutt_error(_("POP timestamp is invalid!")); mutt_sleep(2); diff --git a/query.c b/query.c index f61ed1311..7711f896a 100644 --- a/query.c +++ b/query.c @@ -81,7 +81,7 @@ static struct Address *result_to_addr(struct Query *r) { static struct Address *tmp = NULL; - tmp = rfc822_cpy_adr(r->addr, 0); + tmp = mutt_addr_copy_list(r->addr, 0); if (!tmp) return NULL; @@ -104,7 +104,7 @@ static void free_query(struct Query **query) p = *query; *query = (*query)->next; - rfc822_free_address(&p->addr); + mutt_addr_free(&p->addr); FREE(&p->name); FREE(&p->other); FREE(&p); @@ -152,7 +152,7 @@ static struct Query *run_query(char *s, int quiet) cur = cur->next; } - cur->addr = rfc822_parse_adrlist(cur->addr, p); + cur->addr = mutt_addr_parse_list(cur->addr, p); p = strtok(NULL, "\t\n"); if (p) { @@ -438,19 +438,19 @@ static void query_menu(char *buf, size_t buflen, struct Query *results, int retb if (QueryTable[i].tagged) { struct Address *a = result_to_addr(QueryTable[i].data); - rfc822_append(&naddr, a, 0); - rfc822_free_address(&a); + mutt_addr_append(&naddr, a, 0); + mutt_addr_free(&a); } } mutt_create_alias(NULL, naddr); - rfc822_free_address(&naddr); + mutt_addr_free(&naddr); } else { struct Address *a = result_to_addr(QueryTable[menu->current].data); mutt_create_alias(NULL, a); - rfc822_free_address(&a); + mutt_addr_free(&a); } break; @@ -474,8 +474,8 @@ static void query_menu(char *buf, size_t buflen, struct Query *results, int retb if (QueryTable[i].tagged) { struct Address *a = result_to_addr(QueryTable[i].data); - rfc822_append(&msg->env->to, a, 0); - rfc822_free_address(&a); + mutt_addr_append(&msg->env->to, a, 0); + mutt_addr_free(&a); } } ci_send_message(0, msg, NULL, Context, NULL); @@ -508,7 +508,7 @@ static void query_menu(char *buf, size_t buflen, struct Query *results, int retb tagged = true; rfc822_write_address(buf, buflen, tmpa, 0); curpos = mutt_str_strlen(buf); - rfc822_free_address(&tmpa); + mutt_addr_free(&tmpa); } else if (curpos + 2 < buflen) { @@ -517,7 +517,7 @@ static void query_menu(char *buf, size_t buflen, struct Query *results, int retb strcat(buf, ", "); rfc822_write_address((char *) buf + curpos + 1, buflen - curpos - 1, tmpa, 0); curpos = mutt_str_strlen(buf); - rfc822_free_address(&tmpa); + mutt_addr_free(&tmpa); } } } @@ -527,7 +527,7 @@ static void query_menu(char *buf, size_t buflen, struct Query *results, int retb struct Address *tmpa = result_to_addr(QueryTable[menu->current].data); mutt_addrlist_to_local(tmpa); rfc822_write_address(buf, buflen, tmpa, 0); - rfc822_free_address(&tmpa); + mutt_addr_free(&tmpa); } } @@ -559,7 +559,7 @@ int mutt_query_complete(char *buf, size_t buflen) mutt_addrlist_to_local(tmpa); buf[0] = '\0'; rfc822_write_address(buf, buflen, tmpa, 0); - rfc822_free_address(&tmpa); + mutt_addr_free(&tmpa); free_query(&results); mutt_clear_error(); return 0; diff --git a/recvcmd.c b/recvcmd.c index c6aeb0b2a..8aa5cf1da 100644 --- a/recvcmd.c +++ b/recvcmd.c @@ -171,7 +171,7 @@ void mutt_attach_bounce(FILE *fp, struct AttachCtx *actx, struct Body *cur) if (mutt_get_field(prompt, buf, sizeof(buf), MUTT_ALIAS) || buf[0] == '\0') return; - adr = rfc822_parse_adrlist(adr, buf); + adr = mutt_addr_parse_list(adr, buf); if (!adr) { mutt_error(_("Error parsing address!")); @@ -184,7 +184,7 @@ void mutt_attach_bounce(FILE *fp, struct AttachCtx *actx, struct Body *cur) { mutt_error(_("Bad IDN: '%s'"), err); FREE(&err); - rfc822_free_address(&adr); + mutt_addr_free(&adr); return; } @@ -209,7 +209,7 @@ void mutt_attach_bounce(FILE *fp, struct AttachCtx *actx, struct Body *cur) if (query_quadoption(OPT_BOUNCE, prompt) != MUTT_YES) { - rfc822_free_address(&adr); + mutt_addr_free(&adr); mutt_window_clearline(MuttMessageWindow, 0); mutt_message(p ? _("Message not bounced.") : _("Messages not bounced.")); return; @@ -235,7 +235,7 @@ void mutt_attach_bounce(FILE *fp, struct AttachCtx *actx, struct Body *cur) mutt_error(p ? _("Error bouncing message!") : _("Error bouncing messages!")); - rfc822_free_address(&adr); + mutt_addr_free(&adr); } /** diff --git a/remailer.c b/remailer.c index 1cdd58c5d..c40895b97 100644 --- a/remailer.c +++ b/remailer.c @@ -732,9 +732,9 @@ int mix_check_message(struct Header *msg) } /* Cc and Bcc are empty at this point. */ - rfc822_qualify(msg->env->to, fqdn); - rfc822_qualify(msg->env->reply_to, fqdn); - rfc822_qualify(msg->env->mail_followup_to, fqdn); + mutt_addr_qualify(msg->env->to, fqdn); + mutt_addr_qualify(msg->env->reply_to, fqdn); + mutt_addr_qualify(msg->env->mail_followup_to, fqdn); } return 0; diff --git a/send.c b/send.c index 01607c31a..ff81269be 100644 --- a/send.c +++ b/send.c @@ -138,14 +138,14 @@ struct Address *mutt_remove_xrefs(struct Address *a, struct Address *b) { prev->next = b->next; b->next = NULL; - rfc822_free_address(&b); + mutt_addr_free(&b); b = prev; } else { top = top->next; b->next = NULL; - rfc822_free_address(&b); + mutt_addr_free(&b); b = top; } } @@ -190,7 +190,7 @@ static struct Address *remove_user(struct Address *a, int leave_only) if (!leave_only || a || last) { tmp->next = NULL; - rfc822_free_address(&tmp); + mutt_addr_free(&tmp); } else last = top = tmp; @@ -211,11 +211,11 @@ static struct Address *find_mailing_lists(struct Address *t, struct Address *c) { if (top) { - ptr->next = rfc822_cpy_adr_real(t); + ptr->next = mutt_addr_copy(t); ptr = ptr->next; } else - ptr = top = rfc822_cpy_adr_real(t); + ptr = top = mutt_addr_copy(t); } } } @@ -235,7 +235,7 @@ static int edit_address(struct Address **a, /* const */ char *field) rfc822_write_address(buf, sizeof(buf), *a, 0); if (mutt_get_field(field, buf, sizeof(buf), MUTT_ALIAS) != 0) return -1; - rfc822_free_address(a); + mutt_addr_free(a); *a = mutt_expand_aliases(mutt_parse_adrlist(NULL, buf)); idna_ok = mutt_addrlist_to_intl(*a, &err); if (idna_ok != 0) @@ -353,11 +353,11 @@ static void process_user_recips(struct Envelope *env) STAILQ_FOREACH(uh, &UserHeader, entries) { if (mutt_str_strncasecmp("to:", uh->data, 3) == 0) - env->to = rfc822_parse_adrlist(env->to, uh->data + 3); + env->to = mutt_addr_parse_list(env->to, uh->data + 3); else if (mutt_str_strncasecmp("cc:", uh->data, 3) == 0) - env->cc = rfc822_parse_adrlist(env->cc, uh->data + 3); + env->cc = mutt_addr_parse_list(env->cc, uh->data + 3); else if (mutt_str_strncasecmp("bcc:", uh->data, 4) == 0) - env->bcc = rfc822_parse_adrlist(env->bcc, uh->data + 4); + env->bcc = mutt_addr_parse_list(env->bcc, uh->data + 4); #ifdef USE_NNTP else if (mutt_str_strncasecmp("newsgroups:", uh->data, 11) == 0) env->newsgroups = nntp_get_header(uh->data + 11); @@ -377,18 +377,18 @@ static void process_user_header(struct Envelope *env) if (mutt_str_strncasecmp("from:", uh->data, 5) == 0) { /* User has specified a default From: address. Remove default address */ - rfc822_free_address(&env->from); - env->from = rfc822_parse_adrlist(env->from, uh->data + 5); + mutt_addr_free(&env->from); + env->from = mutt_addr_parse_list(env->from, uh->data + 5); } else if (mutt_str_strncasecmp("reply-to:", uh->data, 9) == 0) { - rfc822_free_address(&env->reply_to); - env->reply_to = rfc822_parse_adrlist(env->reply_to, uh->data + 9); + mutt_addr_free(&env->reply_to); + env->reply_to = mutt_addr_parse_list(env->reply_to, uh->data + 9); } else if (mutt_str_strncasecmp("message-id:", uh->data, 11) == 0) { char *tmp = mutt_extract_message_id(uh->data + 11, NULL); - if (rfc822_valid_msgid(tmp)) + if (mutt_addr_valid_msgid(tmp)) { FREE(&env->message_id); env->message_id = tmp; @@ -541,7 +541,7 @@ static int default_to(struct Address **to, struct Envelope *env, int flags, int if (flags && env->mail_followup_to && hmfupto == MUTT_YES) { - rfc822_append(to, env->mail_followup_to, 1); + mutt_addr_append(to, env->mail_followup_to, 1); return 0; } @@ -554,7 +554,7 @@ static int default_to(struct Address **to, struct Envelope *env, int flags, int if (!option(OPT_REPLY_SELF) && mutt_addr_is_user(env->from)) { /* mail is from the user, assume replying to recipients */ - rfc822_append(to, env->to, 1); + mutt_addr_append(to, env->to, 1); } else if (env->reply_to) { @@ -571,7 +571,7 @@ static int default_to(struct Address **to, struct Envelope *env, int flags, int * in his From header, and the reply-to has no display-name. * */ - rfc822_append(to, env->from, 0); + mutt_addr_append(to, env->from, 0); } else if (!(addrcmp(env->from, env->reply_to) && !env->reply_to->next) && quadoption(OPT_REPLY_TO) != MUTT_YES) @@ -589,11 +589,11 @@ static int default_to(struct Address **to, struct Envelope *env, int flags, int switch (query_quadoption(OPT_REPLY_TO, prompt)) { case MUTT_YES: - rfc822_append(to, env->reply_to, 0); + mutt_addr_append(to, env->reply_to, 0); break; case MUTT_NO: - rfc822_append(to, env->from, 0); + mutt_addr_append(to, env->from, 0); break; default: @@ -601,10 +601,10 @@ static int default_to(struct Address **to, struct Envelope *env, int flags, int } } else - rfc822_append(to, env->reply_to, 0); + mutt_addr_append(to, env->reply_to, 0); } else - rfc822_append(to, env->from, 0); + mutt_addr_append(to, env->from, 0); return 0; } @@ -629,8 +629,8 @@ int mutt_fetch_recips(struct Envelope *out, struct Envelope *in, int flags) if (flags & SENDLISTREPLY) { tmp = find_mailing_lists(in->to, in->cc); - rfc822_append(&out->to, tmp, 0); - rfc822_free_address(&tmp); + mutt_addr_append(&out->to, tmp, 0); + mutt_addr_free(&tmp); if (in->mail_followup_to && hmfupto == MUTT_YES && default_to(&out->cc, in, flags & SENDLISTREPLY, hmfupto) == MUTT_ABORT) @@ -646,8 +646,8 @@ int mutt_fetch_recips(struct Envelope *out, struct Envelope *in, int flags) if ((flags & SENDGROUPREPLY) && (!in->mail_followup_to || hmfupto != MUTT_YES)) { /* if(!mutt_addr_is_user(in->to)) */ - rfc822_append(&out->cc, in->to, 1); - rfc822_append(&out->cc, in->cc, 1); + mutt_addr_append(&out->cc, in->to, 1); + mutt_addr_append(&out->cc, in->cc, 1); } } return 0; @@ -991,8 +991,8 @@ void mutt_set_followup_to(struct Envelope *e) * mail-followup-to header */ - t = rfc822_append(&e->mail_followup_to, e->to, 0); - rfc822_append(&t, e->cc, 1); + t = mutt_addr_append(&e->mail_followup_to, e->to, 0); + mutt_addr_append(&t, e->cc, 1); } /* remove ourselves from the mail-followup-to header */ @@ -1008,9 +1008,9 @@ void mutt_set_followup_to(struct Envelope *e) if (e->mail_followup_to && !mutt_is_list_recipient(0, e->to, e->cc)) { if (e->reply_to) - from = rfc822_cpy_adr(e->reply_to, 0); + from = mutt_addr_copy_list(e->reply_to, 0); else if (e->from) - from = rfc822_cpy_adr(e->from, 0); + from = mutt_addr_copy_list(e->from, 0); else from = mutt_default_from(); @@ -1057,7 +1057,7 @@ static struct Address *set_reverse_name(struct Envelope *env) tmp = env->from; if (tmp) { - tmp = rfc822_cpy_adr_real(tmp); + tmp = mutt_addr_copy(tmp); /* when $reverse_realname is not set, clear the personal name so that it * may be set vi a reply- or send-hook. */ @@ -1078,17 +1078,17 @@ struct Address *mutt_default_from(void) */ if (From) - adr = rfc822_cpy_adr_real(From); + adr = mutt_addr_copy(From); else if (option(OPT_USE_DOMAIN)) { - adr = rfc822_new_address(); + adr = mutt_addr_new(); adr->mailbox = mutt_mem_malloc(mutt_str_strlen(Username) + mutt_str_strlen(fqdn) + 2); sprintf(adr->mailbox, "%s@%s", NONULL(Username), NONULL(fqdn)); } else { - adr = rfc822_new_address(); + adr = mutt_addr_new(); adr->mailbox = mutt_str_strdup(NONULL(Username)); } @@ -1219,11 +1219,11 @@ int mutt_compose_to_sender(struct Header *hdr) for (int i = 0; i < Context->msgcount; i++) { if (message_is_tagged(Context, i)) - rfc822_append(&msg->env->to, Context->hdrs[i]->env->from, 0); + mutt_addr_append(&msg->env->to, Context->hdrs[i]->env->from, 0); } } else - msg->env->to = rfc822_cpy_adr(hdr->env->from, 0); + msg->env->to = mutt_addr_copy_list(hdr->env->from, 0); return ci_send_message(0, msg, NULL, NULL, NULL); } @@ -1432,7 +1432,7 @@ int ci_send_message(int flags, struct Header *msg, char *tempfile, /* Use any list-post header as a template */ url_parse_mailto(msg->env, NULL, cur->env->list_post); /* We don't let them set the sender's address. */ - rfc822_free_address(&msg->env->from); + mutt_addr_free(&msg->env->from); } if (!(flags & (SENDKEY | SENDPOSTPONED | SENDRESEND))) @@ -1599,7 +1599,7 @@ int ci_send_message(int flags, struct Header *msg, char *tempfile, /* $use_from and/or $from might have changed in a send-hook */ if (killfrom) { - rfc822_free_address(&msg->env->from); + mutt_addr_free(&msg->env->from); if (option(OPT_USE_FROM) && !(flags & (SENDPOSTPONED | SENDRESEND))) msg->env->from = mutt_default_from(); killfrom = false; @@ -1848,7 +1848,7 @@ int ci_send_message(int flags, struct Header *msg, char *tempfile, mutt_select_fcc(fcc, sizeof(fcc), msg); if (killfrom) { - rfc822_free_address(&msg->env->from); + mutt_addr_free(&msg->env->from); killfrom = false; } } diff --git a/sendlib.c b/sendlib.c index 92bfc9b5b..9e4ff8848 100644 --- a/sendlib.c +++ b/sendlib.c @@ -337,7 +337,7 @@ int mutt_write_mime_header(struct Body *a, FILE *f) buffer[0] = 0; tmp = mutt_str_strdup(p->value); encode = rfc2231_encode_string(&tmp); - rfc822_cat(buffer, sizeof(buffer), tmp, MimeSpecials); + mutt_addr_cat(buffer, sizeof(buffer), tmp, MimeSpecials); /* Dirty hack to make messages readable by Outlook Express * for the Mac: force quotes around the boundary parameter @@ -398,7 +398,7 @@ int mutt_write_mime_header(struct Body *a, FILE *f) buffer[0] = 0; tmp = mutt_str_strdup(t); encode = rfc2231_encode_string(&tmp); - rfc822_cat(buffer, sizeof(buffer), tmp, MimeSpecials); + mutt_addr_cat(buffer, sizeof(buffer), tmp, MimeSpecials); FREE(&tmp); fprintf(f, "; filename%s=%s", encode ? "*" : "", buffer); } @@ -2661,12 +2661,12 @@ void mutt_prepare_envelope(struct Envelope *env, int final) * recipients if there is no To: or Cc: field, so attempt to suppress * it by using an empty To: field. */ - env->to = rfc822_new_address(); + env->to = mutt_addr_new(); env->to->group = 1; - env->to->next = rfc822_new_address(); + env->to->next = mutt_addr_new(); buffer[0] = 0; - rfc822_cat(buffer, sizeof(buffer), "undisclosed-recipients", RFC822Specials); + mutt_addr_cat(buffer, sizeof(buffer), "undisclosed-recipients", RFC822Specials); env->to->mailbox = mutt_str_strdup(buffer); } @@ -2703,7 +2703,7 @@ void mutt_unprepare_envelope(struct Envelope *env) rfc2047_decode(&item->data); } - rfc822_free_address(&env->mail_followup_to); + mutt_addr_free(&env->mail_followup_to); /* back conversions */ rfc2047_decode_adrlist(env->to); @@ -2802,13 +2802,13 @@ int mutt_bounce_message(FILE *fp, struct Header *h, struct Address *to) from->personal = mutt_str_strdup(RealName); if (fqdn) - rfc822_qualify(from, fqdn); + mutt_addr_qualify(from, fqdn); rfc2047_encode_adrlist(from, "Resent-From"); if (mutt_addrlist_to_intl(from, &err)) { mutt_error(_("Bad IDN %s while preparing resent-from."), err); - rfc822_free_address(&from); + mutt_addr_free(&from); return -1; } rfc822_write_address(resent_from, sizeof(resent_from), from, 0); @@ -2822,13 +2822,13 @@ int mutt_bounce_message(FILE *fp, struct Header *h, struct Address *to) * function is called, since the user receives confirmation of the address * list being bounced to. */ - resent_to = rfc822_cpy_adr(to, 0); + resent_to = mutt_addr_copy_list(to, 0); rfc2047_encode_adrlist(resent_to, "Resent-To"); ret = bounce_message(fp, h, resent_to, resent_from, from); - rfc822_free_address(&resent_to); - rfc822_free_address(&from); + mutt_addr_free(&resent_to); + mutt_addr_free(&from); return ret; } @@ -2864,7 +2864,7 @@ struct Address *mutt_remove_duplicates(struct Address *addr) *last = addr->next; addr->next = NULL; - rfc822_free_address(&addr); + mutt_addr_free(&addr); addr = *last; } diff --git a/url.c b/url.c index 50960729c..4bcdca47b 100644 --- a/url.c +++ b/url.c @@ -360,7 +360,7 @@ int url_parse_mailto(struct Envelope *e, char **body, const char *src) if (url_pct_decode(tmp) < 0) goto out; - e->to = rfc822_parse_adrlist(e->to, tmp); + e->to = mutt_addr_parse_list(e->to, tmp); tag = headers ? strtok_r(headers, "&", &p) : NULL; -- 2.50.1