X-Git-Url: https://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Frfc822%2Fexamples%2Fheadernames.c;fp=ccan%2Frfc822%2Fexamples%2Fheadernames.c;h=161ceab322be489892fd2f18a460019e8be0b264;hp=0000000000000000000000000000000000000000;hb=affb2280db6983da455a73a2dd078f1d3f0e7268;hpb=049ae7d0ade969c44d0ffab043f507fa7827bf09 diff --git a/ccan/rfc822/examples/headernames.c b/ccan/rfc822/examples/headernames.c new file mode 100644 index 00000000..161ceab3 --- /dev/null +++ b/ccan/rfc822/examples/headernames.c @@ -0,0 +1,42 @@ +#include +#include +#include +#include + +#include +#include + +#include +#include +#include + +static void process_file(const char *name) +{ + void *ctx = talloc_new(NULL); + size_t size; + void *buf; + struct rfc822_msg *msg; + struct rfc822_header *hdr; + + buf = grab_file(ctx, name, &size); + + msg = rfc822_start(ctx, buf, size); + + rfc822_for_each_header(msg, hdr) { + struct bytestring hname = rfc822_header_raw_name(msg, hdr); + + printf("%.*s\n", hname.len, hname.ptr); + } + + talloc_free(ctx); +} + +int main(int argc, char *argv[]) +{ + int i; + + for (i = 0; i < (argc - 1); i++) + process_file(argv[i + 1]); + + exit(0); +}