ref: 08c80dc737e69db619332d2ecd8802c2b45732c5
dir: /sys/src/lib9p/util.c/
#include <u.h> #include <libc.h> #include <fcall.h> #include <thread.h> #include <9p.h> void readbuf(Req *r, void *s, long n) { r->ofcall.count = r->ifcall.count; if(r->ifcall.offset >= n){ r->ofcall.count = 0; return; } if(r->ifcall.offset+r->ofcall.count > n) r->ofcall.count = n - r->ifcall.offset; memmove(r->ofcall.data, (char*)s+r->ifcall.offset, r->ofcall.count); } void readstr(Req *r, char *s) { readbuf(r, s, strlen(s)); }