#include #include #include void main(int argc, char *argv[]) { int np, more; char *p, stuff[8192+1]; Plumbmsg m, *pm; Plumbattr a, *pa; ARGBEGIN{ }ARGEND memset(stuff, '\'', sizeof(stuff)); stuff[sizeof(stuff)-1] = 0; a.name = "stuff"; a.value = stuff; a.next = nil; p = plumbpackattr(&a); //print("%s\n", p); assert(p != nil); free(p); m.src = "src"; m.dst = "dst"; m.wdir = "/"; m.type = "text"; m.attr = &a; m.ndata = strlen("data"); m.data = "data"; p = plumbpack(&m, &np); memset(&m, 0, sizeof(Plumbmsg)); pm = plumbunpackpartial(p, 8192, &more); print("%#p %d\n", pm, more); if(pm == nil) print("nil Plumbmsg\n"); /* pa = plumbunpackattr(p); if(pa == nil) print("nil attr\n"); if(pa != nil) print("%s\n", plumblookup(pa, "stuff")); */ exits(nil); }