blaze822: iterate over headers

pull/1/merge
Christian Neukirchen 8 years ago
parent ff7771d4fb
commit 54f695dddf

@ -559,3 +559,20 @@ blaze822_bodylen(struct message *mesg)
return 0;
return mesg->bodyend - mesg->body;
}
char *
blaze822_next_header(struct message *mesg, char *prev)
{
if (!prev) {
prev = mesg->msg;
} else {
if (prev >= mesg->end)
return 0;
prev = prev + strlen(prev);
}
while (prev < mesg->end && *prev == 0)
prev++;
if (prev >= mesg->end)
return 0;
return prev;
}

@ -13,6 +13,8 @@ struct message *blaze822_mem(char *buf, size_t len); // header + body
char *blaze822_hdr_(struct message *mesg, const char *hdr, size_t len);
#define blaze822_hdr(mesg, hdr) blaze822_hdr_(mesg, "\0" hdr ":", 2+strlen((hdr)))
char *blaze822_next_header(struct message *mesg, char *prev);
void blaze822_free(struct message *mesg);
time_t blaze822_date(char *);

Loading…
Cancel
Save