message& operator<<(T const& t) { size_t size = packer::size_of(t); pre_write(size); pkr_.write(t); end_write(); return *this; }
static bool pre_syscall(void *drcontext, int sysnum) { switch (sysnum) { case SYS_open: pre_open(drcontext); break; case SYS_close: pre_close(drcontext); break; case SYS_read: pre_read(drcontext); break; case SYS_write: pre_write(drcontext); break; case SYS_pwrite64: pre_pwrite(drcontext); break; default: break; } return true; }