ref: e3166b4fe83d12a29c265fe9a8f333369b35c663
dir: /sys/src/ape/lib/ap/gen/strdup.c/
#include <string.h> #include <ctype.h> #include <stdlib.h> char* strdup(char *p) { int n; char *np; n = strlen(p)+1; np = malloc(n); if(np) memmove(np, p, n); return np; }