X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=lib-mime%2Frfc822address.c;h=e4bf97676415ac793a91f139fb0fa0d29ceef9db;hp=9009d4072ba0df7d843e1dc9149ea1faa6fff876;hb=3a3420a4cb3369d51eecc9287d556596f98e7314;hpb=b934795055e8c16e6cb7c9687a4dce815cb300e6 diff --git a/lib-mime/rfc822address.c b/lib-mime/rfc822address.c index 9009d40..e4bf976 100644 --- a/lib-mime/rfc822address.c +++ b/lib-mime/rfc822address.c @@ -37,14 +37,6 @@ #include "mutt_idna.h" -void address_wipe(address_t *addr) -{ - p_delete(&addr->personal); - p_delete(&addr->mailbox); - address_delete(&addr->next); -} - - void rfc822_qualify(address_t *addr, const char *host) { char *p; @@ -470,3 +462,22 @@ rfc822_write_address(char *buf, ssize_t buflen, address_t *addr, int display) return pos; } +address_t *mutt_parse_adrlist(address_t *p, const char *s) +{ + /* check for a simple whitespace separated list of addresses */ + char *q = strpbrk(s, "\"<>():;,\\"); + char tmp[HUGE_STRING]; + + if (q) + return rfc822_parse_adrlist(p, s); + + m_strcpy(tmp, sizeof(tmp), s); + q = tmp; + while ((q = strtok(q, " \t"))) { + p = rfc822_parse_adrlist(p, q); + q = NULL; + } + + return p; +} +