master
 1#include <stdlib.h>
 2#include <string.h>
 3
 4char *strndup(const char *s, size_t n)
 5{
 6	size_t l = strnlen(s, n);
 7	char *d = malloc(l+1);
 8	if (!d) return NULL;
 9	memcpy(d, s, l);
10	d[l] = 0;
11	return d;
12}