xref: /rk3399_ARM-atf/include/lib/libc/string.h (revision 27989a8e34a44ff8e6a2e5b011123a09fd8a82c7)
1 /*
2  * Copyright (c) 2012-2017 Roberto E. Vargas Caballero
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef _STRING_H
8 #define _STRING_H
9 
10 #include <arch/string.h>
11 
12 #ifndef NULL
13 #define NULL ((void *) 0)
14 #endif
15 
16 extern void *memcpy(void * restrict s1, const void * restrict s2, size_t n);
17 extern void *memmove(void *s1, const void *s2, size_t n);
18 extern char *strcpy(char * restrict s1, const char * restrict s2);
19 extern char *strncpy(char * restrict s1, const char * restrict s2, size_t n);
20 extern char *strcat(char * restrict s1, const char * restrict s2);
21 extern char *strncat(char * restrict s1, const char * restrict s2, size_t n);
22 extern int memcmp(const void *s1, const void *s2, size_t n);
23 extern int strcmp(const char *s1, const char *s2);
24 extern int strcoll(const char *s1, const char *s2);
25 extern int strncmp(const char *s1, const char *s2, size_t n);
26 extern size_t strxfrm(char * restrict s1, const char * restrict s2, size_t n);
27 extern void *memchr(const void *s, int c, size_t n);
28 extern char *strchr(const char *s, int c);
29 extern size_t strcspn(const char *s1, const char *s2);
30 extern char *strpbrk(const char *s1, const char *s2);
31 extern char *strrchr(const char *s, int c);
32 extern size_t strspn(const char *s1, const char *s2);
33 extern char *strstr(const char *s1, const char *s2);
34 extern char *strtok(char * restrict s1, const char * restrict s2);
35 extern void *memset(void *s, int c, size_t n);
36 extern char *strerror(int errnum);
37 extern size_t strlen(const char *s);
38 
39 #endif
40