#include <sys/types.h> #include <string.h> void * memcpy(void * dst, const void * src, size_t length) { size_t x = length / 4; size_t y = length % 4; size_t i; unsigned long * mSrc, * mDst; mSrc = (unsigned long *) src; mDst = (unsigned long *) dst; for (i = 0; i < x; i++) ((unsigned long *)dst)[i] = ((unsigned long *)src)[i]; for (i = 0; i < y; i++) ((char *) dst)[length-y+i] = ((char *) dst)[length-y+i]; return dst; }