diff options
Diffstat (limited to 'lib/libc/string/strndup.c')
| -rw-r--r-- | lib/libc/string/strndup.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/libc/string/strndup.c b/lib/libc/string/strndup.c new file mode 100644 index 00000000..70e10501 --- /dev/null +++ b/lib/libc/string/strndup.c @@ -0,0 +1,15 @@ +#include <stdlib.h> +#include <string.h> + +char *strndup(const char *s, size_t size) +{ + char *result = malloc(size + 1); + + if (result == NULL) + return NULL; + + memcpy(result, s, size); + result[size] = '\0'; + + return result; +} |
