X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fcompat%2Fstring.h;fp=src%2Fcommon%2Fcompat%2Fstring.h;h=0000000000000000000000000000000000000000;hb=c9e313bc594f40a86eed237dce222c0fc99c957f;hp=4a96cb1456ffd2a928d18439007cfc3959b2b5e5;hpb=4878de5c7deb512bbdac4fdfc498907efa06fb7c;p=lttng-tools.git diff --git a/src/common/compat/string.h b/src/common/compat/string.h deleted file mode 100644 index 4a96cb145..000000000 --- a/src/common/compat/string.h +++ /dev/null @@ -1,133 +0,0 @@ -/* - * Copyright (C) 2015 Michael Jeanson - * Copyright (C) 2015 Jérémie Galarneau - * - * SPDX-License-Identifier: MIT - * - */ - -#ifndef _COMPAT_STRING_H -#define _COMPAT_STRING_H - -#include -#include - -#ifdef HAVE_STRNLEN -static inline -size_t lttng_strnlen(const char *str, size_t max) -{ - return strnlen(str, max); -} -#else -static inline -size_t lttng_strnlen(const char *str, size_t max) -{ - size_t ret; - const char *end; - - end = (const char *) memchr(str, 0, max); - - if (end) { - ret = (size_t) (end - str); - } else { - ret = max; - } - - return ret; -} -#endif /* HAVE_STRNLEN */ - -#ifdef HAVE_STRNDUP -static inline -char *lttng_strndup(const char *s, size_t n) -{ - return strndup(s, n); -} -#else -static inline -char *lttng_strndup(const char *s, size_t n) -{ - char *ret; - size_t navail; - - if (!s) { - ret = NULL; - goto end; - } - - /* min() */ - navail = strlen(s) + 1; - if ((n + 1) < navail) { - navail = n + 1; - } - - ret = (char *) malloc(navail); - if (!ret) { - goto end; - } - - memcpy(ret, s, navail); - ret[navail - 1] = '\0'; -end: - return ret; -} -#endif /* HAVE_STRNDUP */ - -#ifdef HAVE_FLS -static inline int lttng_fls(int val) -{ - return fls(val); -} -#else -static inline int lttng_fls(int val) -{ - int r = 32; - unsigned int x = (unsigned int) val; - - if (!x) - return 0; - if (!(x & 0xFFFF0000U)) { - x <<= 16; - r -= 16; - } - if (!(x & 0xFF000000U)) { - x <<= 8; - r -= 8; - } - if (!(x & 0xF0000000U)) { - x <<= 4; - r -= 4; - } - if (!(x & 0xC0000000U)) { - x <<= 2; - r -= 2; - } - if (!(x & 0x80000000U)) { - r -= 1; - } - return r; -} -#endif /* HAVE_FLS */ - -#ifdef HAVE_MEMRCHR -static inline -void *lttng_memrchr(const void *s, int c, size_t n) -{ - return (void *) memrchr(s, c, n); -} -#else -static inline -void *lttng_memrchr(const void *s, int c, size_t n) -{ - int i; - const char *str = (const char *) s; - for (i = n-1; i >= 0; i--) { - if (str[i] == (char)c) { - return (void *)(str+i); - } - } - return NULL; -} -#endif /* HAVE_MEMRCHR */ - -#endif /* _COMPAT_STRING_H */