move strtoq into new string files (bug #4740)
[asterisk/asterisk.git] / include / asterisk / strings.h
index f6902ef..b20a307 100755 (executable)
@@ -197,14 +197,43 @@ struct ast_realloca {
                (ra)->ptr; \
        })
 
+#define HAVE_VASPRINTF
+#define HAVE_STRTOQ
+
 #ifdef __linux__
-#define ast_strcasestr strcasestr
-#define ast_strndup    strndup
-#define ast_strnlen    strnlen
-#else /* !__linux__ */
-char *ast_strcasestr(const char *, const char *);
-char *ast_strndup(const char *, size_t);
-size_t ast_strnlen(const char *, size_t);
-#endif /* !__linux__ */
+#define HAVE_STRCASESTR
+#define HAVE_STRNDUP
+#define HAVE_STRNLEN
+#endif
+
+#ifdef SOLARIS
+#undef HAVE_VASPRINTF
+#undef HAVE_STRTOQ
+#endif
+
+#ifdef __CYGWIN__
+#undef HAVE_STRTOQ
+typedef unsigned long long uint64_t;
+#endif
+
+#ifndef HAVE_STRCASESTR
+char *strcasestr(const char *, const char *);
+#endif
+
+#ifndef HAVE_STRNDUP
+char *strndup(const char *, size_t);
+#endif
+
+#ifndef HAVE_STRNLEN
+size_t strnlen(const char *, size_t);
+#endif
+
+#ifndef HAVE_VASPRINTF
+int vasprintf(char **strp, const char *fmt, va_list ap);
+#endif
+
+#ifndef HAVE_STRTOQ
+uint64_t strtoq(const char *nptr, char **endptr, int base);
+#endif
 
 #endif /* _ASTERISK_STRINGS_H */