#include #include #include "tag.h" void usage(void) { fprint(2, "usage: %s file\n", argv0); exits("usage"); } void main(int argc, char **argv) { int fd; vlong offset; uchar buf[8], *p; u32int length; ARGBEGIN { default: usage(); } ARGEND if(argc != 1) usage(); if((fd = open(argv[0], OREAD)) < 0) sysfatal("open %s: %r", argv[0]); offset = 0; while(pread(fd, buf, sizeof buf, offset) == sizeof buf) { p = buf; length = g32(&p); print("%.4s %d\n", (char *)p, length); offset += length; } exits(nil); }