COPY
#define COPY 4 /* copy files to destination dir */
#define COPY(field) do { \
#undef COPY
#define COPY(field, flag) do { \
#undef COPY
#define COPY(field, flag) do { \
#undef COPY
#define COPY(field) \
#define COPY(n) (void)memcpy((void *)fp->_p, (void *)p, (size_t)(n))
#define COPY(a, b, count, size, tmp1, tmp2) { \
#define COPY(size) { \
#undef COPY
#define COPY(F) do { \
#undef COPY
#define COPY(x) \
#undef COPY
#define COPY(x) \
#undef COPY
enum operation {READ, VERIFY, COPY, COPYVERIFY};