/* @(#)string.h 1.12 11/11/24 Copyright 1996-2011 J. Schilling */ /* * Definitions for strings * * Copyright (c) 1996-2011 J. Schilling */ /* * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * See the file CDDL.Schily.txt in this distribution for details. * A copy of the CDDL is also available via the Internet at * http://www.opensource.org/licenses/cddl1.txt * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file CDDL.Schily.txt from this distribution. */ #ifndef _SCHILY_STRING_H #define _SCHILY_STRING_H #ifndef _SCHILY_MCONFIG_H #include #endif #ifndef _SCHILY_TYPES_H #include /* Try to get size_t */ #endif /* * It may be that IBM's AIX has problems when doing * #include * #include * So I moved the #include to the top. As the file strings.h * defines strcasecmp() we may need it... * * Note that the only real problem appears if we use rubbish FSF based code that * #defines _NO_PROTO */ #ifdef HAVE_STRINGS_H #ifndef _INCL_STRINGS_H #include #define _INCL_STRINGS_H #endif #endif /* HAVE_STRINGS_H */ #ifdef HAVE_STRING_H #ifndef _INCL_STRING_H #include #define _INCL_STRING_H #endif #else /* HAVE_STRING_H */ #ifdef __cplusplus extern "C" { #endif #ifndef NULL #define NULL 0 #endif extern void *memcpy __PR((void *, const void *, int)); extern void *memmove __PR((void *, const void *, int)); extern char *strcpy __PR((char *, const char *)); extern char *strncpy __PR((char *, const char *, int)); extern char *strcat __PR((char *, const char *)); extern char *strncat __PR((char *, const char *, int)); extern int memcmp __PR((const void *, const void *, int)); extern int strcmp __PR((const char *, const char *)); extern int strcoll __PR((const char *, const char *)); extern int strncmp __PR((const char *, const char *, int)); extern int strxfrm __PR((char *, const char *, int)); extern void *memchr __PR((const void *, int, int)); extern char *strchr __PR((const char *, int)); extern int strcspn __PR((const char *, const char *)); /* #pragma int_to_unsigned strcspn */ extern char *strpbrk __PR((const char *, const char *)); extern char *strrchr __PR((const char *, int)); extern int strspn __PR((const char *, const char *)); /* #pragma int_to_unsigned strspn */ extern char *strstr __PR((const char *, const char *)); extern char *strtok __PR((char *, const char *)); extern void *memset __PR((void *, int, int)); extern char *strerror __PR((int)); extern int strlen __PR((const char *)); /* #pragma int_to_unsigned strlen */ extern void *memccpy __PR((void *, const void *, int, int)); extern int strcasecmp __PR((const char *, const char *)); extern int strncasecmp __PR((const char *, const char *, size_t)); #ifdef __cplusplus } #endif #endif /* HAVE_STRING_H */ #endif /* _SCHILY_STRING_H */