ref: b0ab2a2ded1ecfcf5ad17d2016870a5431b6e805
dir: /sys/src/libc/port/strdup.c/
#include <u.h> #include <libc.h> char* strdup(char *s) { char *ns; ns = malloc(strlen(s) + 1); if(ns == 0) return 0; setmalloctag(ns, getcallerpc(&s)); return strcpy(ns, s); }