diff options
author | Mattias Andrée <maandree@kth.se> | 2018-10-27 12:12:01 +0200 |
---|---|---|
committer | Mattias Andrée <maandree@kth.se> | 2018-10-27 12:12:01 +0200 |
commit | 1f7da5379b80254d6c54b4ae5b7de4686af5bba5 (patch) | |
tree | 860d07aae73f535f5bbaeb10733dac77bef45c23 /strndup.c | |
parent | Add man pages for strn[case]chr[nul] and strrn[case]chr (diff) | |
download | libsimple-1f7da5379b80254d6c54b4ae5b7de4686af5bba5.tar.gz libsimple-1f7da5379b80254d6c54b4ae5b7de4686af5bba5.tar.bz2 libsimple-1f7da5379b80254d6c54b4ae5b7de4686af5bba5.tar.xz |
Remove strndup, it is in POSIX
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'strndup.c')
-rw-r--r-- | strndup.c | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/strndup.c b/strndup.c deleted file mode 100644 index d4c681f..0000000 --- a/strndup.c +++ /dev/null @@ -1,70 +0,0 @@ -/* See LICENSE file for copyright and license details. */ -#include "libsimple.h" -#ifndef TEST - - -char * -libsimple_strndup(const char *s, size_t n) -{ - char *ret; - size_t m = strlen(s); - n = MIN(n, m); - if (n == SIZE_MAX) { - errno = ENOMEM; - return NULL; - } - if (!(ret = aligned_alloc(1, n + 1))) - return NULL; - memcpy(ret, s, n); - ret[n] = '\0'; - return ret; -} - - -#else -#include "test.h" - -int -main(void) -{ - struct allocinfo *info; - const char *s = "test"; - void *p; - - p = libsimple_strndup(s, 5); - assert(p && p != s); - assert(!strcmpnul(p, "test")); - memset(p, 0, 5); - assert(!strcmpnul(s, "test")); - if (have_custom_malloc()) { - assert((info = get_allocinfo(p))); - assert(info->alignment == 1); - } - free(p); - - p = libsimple_strndup(s, 3); - assert(p && p != s); - assert(!strcmpnul(p, "tes")); - memset(p, 0, 4); - assert(!strcmpnul(s, "test")); - if (have_custom_malloc()) { - assert((info = get_allocinfo(p))); - assert(info->alignment == 1); - } - free(p); - - p = libsimple_strndup(s, 0); - assert(p && p != s); - assert(!strcmpnul(p, "")); - memset(p, 0, 1); - assert(!strcmpnul(s, "test")); - if (have_custom_malloc()) { - assert((info = get_allocinfo(p))); - assert(info->alignment == 1); - } - free(p); - - return 0; -} - -#endif |