Mercurial > dovecot > core-2.2
view src/lib-mail/message-address.h @ 14682:d0d7b810646b
Make sure we check all the functions' return values. Minor API changes to simplify this.
Checked using a patched clang that adds attribute(warn_unused_result) to all
functions. This commit fixes several error handling mistakes.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 25 Jun 2012 01:14:03 +0300 |
parents | e07c5cb0ae60 |
children | 2a979ce1885d |
line wrap: on
line source
#ifndef MESSAGE_ADDRESS_H #define MESSAGE_ADDRESS_H /* group: ... ; will be stored like: {name = NULL, NULL, "group", NULL}, ..., {NULL, NULL, NULL, NULL} */ struct message_address { struct message_address *next; /* display-name */ const char *name; /* route string contains the @ prefix */ const char *route; /* local-part */ const char *mailbox; const char *domain; /* there were errors when parsing this address */ bool invalid_syntax; }; /* Parse message addresses from given data. If fill_missing is TRUE, missing mailbox and domain are set to MISSING_MAILBOX and MISSING_DOMAIN strings. Otherwise they're set to "". Note that giving an empty string will return NULL since there are no addresses. */ struct message_address * message_address_parse(pool_t pool, const unsigned char *data, size_t size, unsigned int max_addresses, bool fill_missing); void message_address_write(string_t *str, const struct message_address *addr); /* Returns TRUE if header is known to be an address */ bool message_header_is_address(const char *hdr_name); #endif