1 /* SPDX-License-Identifier: BSD-2-Clause */
2 /*
3  * Copyright (c) 2014, STMicroelectronics International N.V.
4  */
5 
6 /*
7  * This file provides what C99 standard requires for <string.h>
8  * for some functions
9  */
10 
11 #ifndef STRING_H
12 #define STRING_H
13 
14 #include <stddef.h>
15 #include <sys/cdefs.h>
16 
17 void *memcpy(void *__restrict s1, const void *__restrict s2, size_t n);
18 void *memmove(void *s1, const void *s2, size_t n);
19 int memcmp(const void *s1, const void *s2, size_t n);
20 void *memset(void *s, int c, size_t n);
21 
22 int strcmp(const char *s1, const char *s2);
23 int strncmp(const char *s1, const char *s2, size_t n);
24 size_t strlen(const char *s);
25 size_t strnlen(const char *s, size_t n);
26 char *strdup(const char *s);
27 char *strndup(const char *s, size_t n);
28 char *strchr(const char *s, int c);
29 char *strstr(const char *big, const char *little);
30 char *strcpy(char *dest, const char *src);
31 char *strncpy(char *dest, const char *src, size_t n);
32 char *strrchr(const char *s, int i);
33 
34 void *memchr(const void *buf, int c, size_t length);
35 
36 #endif /* STRING_H */
37