#ifndef _CUPS_STRING_H_
# define _CUPS_STRING_H_
# include <config.h>
# include <stdio.h>
# include <stdarg.h>
# include <ctype.h>
# ifdef HAVE_STRING_H
# include <string.h>
# endif
# ifdef HAVE_STRINGS_H
# include <strings.h>
# endif
# ifdef HAVE_BSTRING_H
# include <bstring.h>
# endif
# if defined(WIN32) || defined(__EMX__)
# define strcasecmp stricmp
# define strncasecmp strnicmp
# endif
# ifdef __cplusplus
extern "C" {
# endif
extern void cups_strcpy(char *dst, const char *src);
# ifndef HAVE_STRDUP
extern char *cups_strdup(const char *);
# define strdup cups_strdup
# endif
# ifndef HAVE_STRCASECMP
extern int cups_strcasecmp(const char *, const char *);
# define strcasecmp cups_strcasecmp
# endif
# ifndef HAVE_STRNCASECMP
extern int cups_strncasecmp(const char *, const char *, size_t n);
# define strncasecmp cups_strncasecmp
# endif
# ifndef HAVE_STRLCAT
extern size_t cups_strlcat(char *, const char *, size_t);
# define strlcat cups_strlcat
# endif
# ifndef HAVE_STRLCPY
extern size_t cups_strlcpy(char *, const char *, size_t);
# define strlcpy cups_strlcpy
# endif
# ifndef HAVE_SNPRINTF
extern int cups_snprintf(char *, size_t, const char *, ...)
# ifdef __GNUC__
__attribute__ ((__format__ (__printf__, 3, 4)))
# endif
;
# define snprintf cups_snprintf
# endif
# ifndef HAVE_VSNPRINTF
extern int cups_vsnprintf(char *, size_t, const char *, va_list);
# define vsnprintf cups_vsnprintf
# endif
# ifdef __cplusplus
}
# endif
#endif