mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-27 03:41:23 +08:00
a20d8dbee7
2002-08-04 Ulrich Drepper <drepper@redhat.com> * elf/dl-addr.c (_dl_addr): Add libc_hidden_def. * elf/dl-close.c (_dl_close): Add libc_hidden_def. * elf/dl-open.c (_dl_open): Add libc_hidden_def. * include/dlfcn.h: Add libc_hidden_proto for _dl_addr, _dl_open, _dl_close. * include/libio.h: Add libc_hidden_proto for __underflow, __wuflow, __wunderflow. * libio/genops.c (__underflow): Add libc_hidden_def. * libio/wgenops.c (__wuflow): Likewise. (__wunderflow): Likewise. * include/obstack.h: Add libc_hidden_proto for _obstack_newchunk. * malloc/obstack.c (_obstack_newchunk): Add libc_hidden_def. * include/stdio.h: Add libc_hidden_proto for __vfscanf. * stdio-common/vfscanf.c (__vfscanf): Add libc_hidden_def. * include/string.h: Add libc_hidden_proto for __strverscmp. * string/strverscmp.c (__strverscmp): Add libc_hidden_def. * include/unistd.h: Add libc_hidden_proto for __sysconf. * sysdeps/generic/sysconf.c (__sysconf): Add libc_hidden_def. * sysdeps/posix/sysconf.c: Likewise. * sysdeps/unix/sysv/irix4/sysconf.c: Likewise. * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise. * include/wctype.h: Use libc_hidden_proto for __iswctype, __iswalnum_l, __iswalpha_l, __iswblank_l, __iswcntrl_l, __iswdigit_l, __iswlower_l, __iswgraph_l, __iswprint_l, __iswpunct_l, __iswspace_l, __iswupper_l, __iswxdigit_l, __towlower_l, __towupper_l. * wcsmbs/wcstype.c (__iswctype): Use libc_hidden_def. * wcsmbs/wcfuncs_l.c: Use libc_hidden_def for all functions. * include/sys/wait.h: Add libc_hidden_proto for __xmknod. * sysdeps/generic/xmknod.c (__xmknod): Add libc_hidden_def. * sysdeps/mach/hurd/xmknod.c: Likewise. * sysdeps/unix/xmknod.c: Likewise. * sysdeps/unix/sysv/linux/xmknod.c: Likewise. * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise. * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise. * sunrpc/svc.c: Add missing INTUSE for _authenticate.
75 lines
2.2 KiB
C
75 lines
2.2 KiB
C
#ifndef _STRING_H
|
|
|
|
#include <sys/types.h>
|
|
|
|
extern void *__memccpy (void *__dest, __const void *__src,
|
|
int __c, size_t __n);
|
|
|
|
extern size_t __strnlen (__const char *__string, size_t __maxlen)
|
|
__attribute_pure__;
|
|
|
|
extern char *__strsep (char **__stringp, __const char *__delim);
|
|
|
|
extern int __strverscmp (__const char *__s1, __const char *__s2)
|
|
__attribute_pure__;
|
|
|
|
extern int __strncasecmp (__const char *__s1, __const char *__s2,
|
|
size_t __n)
|
|
__attribute_pure__;
|
|
|
|
extern int __strcasecmp (__const char *__s1, __const char *__s2)
|
|
__attribute_pure__;
|
|
|
|
extern char *__strcasestr (__const char *__haystack, __const char *__needle)
|
|
__attribute_pure__;
|
|
|
|
extern char *__strdup (__const char *__string)
|
|
__attribute_malloc__;
|
|
extern char *__strndup (__const char *__string, size_t __n)
|
|
__attribute_malloc__;
|
|
|
|
extern void *__rawmemchr (__const void *__s, int __c)
|
|
__attribute_pure__;
|
|
|
|
extern char *__strchrnul (__const char *__s, int __c)
|
|
__attribute_pure__;
|
|
|
|
extern void *__memrchr (__const void *__s, int __c, size_t __n)
|
|
__attribute_pure__;
|
|
|
|
extern void *__memchr (__const void *__s, int __c, size_t __n)
|
|
__attribute_pure__;
|
|
|
|
extern int __ffs (int __i) __attribute__ ((const));
|
|
|
|
extern char *__strerror_r (int __errnum, char *__buf, size_t __buflen);
|
|
|
|
/* Now the real definitions. We do this here since some of the functions
|
|
above are defined as macros in the headers. */
|
|
#include <string/string.h>
|
|
|
|
/* Alternative version which doesn't pollute glibc's namespace. */
|
|
#undef strndupa
|
|
#define strndupa(s, n) \
|
|
(__extension__ \
|
|
({ \
|
|
__const char *__old = (s); \
|
|
size_t __len = __strnlen (__old, (n)); \
|
|
char *__new = (char *) __builtin_alloca (__len + 1); \
|
|
__new[__len] = '\0'; \
|
|
(char *) memcpy (__new, __old, __len); \
|
|
}))
|
|
#endif
|
|
|
|
libc_hidden_proto (__mempcpy)
|
|
libc_hidden_proto (__stpcpy)
|
|
libc_hidden_proto (__stpncpy)
|
|
libc_hidden_proto (__rawmemchr)
|
|
libc_hidden_proto (__strcasecmp)
|
|
libc_hidden_proto (__strcasecmp_l)
|
|
libc_hidden_proto (__strncasecmp_l)
|
|
libc_hidden_proto (__strdup)
|
|
libc_hidden_proto (__strndup)
|
|
libc_hidden_proto (__strerror_r)
|
|
libc_hidden_proto (__strverscmp)
|