maddrmap
TAILQ_FOREACH(mn, &lk.maddrmap->queue, entries) {
maddrmap_free(lk.maddrmap);
maddrmap_init(struct maddrmap *maddrmap)
TAILQ_INIT(&maddrmap->queue);
maddrmap_insert(struct maddrmap *maddrmap, struct maddrnode *maddrnode)
TAILQ_INSERT_TAIL(&maddrmap->queue, mn, entries);
maddrmap_free(struct maddrmap *maddrmap)
while ((mn = TAILQ_FIRST(&maddrmap->queue))) {
TAILQ_REMOVE(&maddrmap->queue, mn, entries);
free(maddrmap);
mailaddr_line(struct maddrmap *maddrmap, const char *s)
maddrmap_insert(maddrmap, &mn);
int mailaddr_line(struct maddrmap *, const char *);
void maddrmap_init(struct maddrmap *);
void maddrmap_insert(struct maddrmap *, struct maddrnode *);
void maddrmap_free(struct maddrmap *);
struct maddrmap *maddrmap;
lk->maddrmap = calloc(1, sizeof(*lk->maddrmap));
if (lk->maddrmap == NULL)
maddrmap_init(lk->maddrmap);
if (!mailaddr_line(lk->maddrmap, line)) {
maddrmap_free(lk->maddrmap);