Blame view

include/linux/string.h 3.13 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
  #ifndef _LINUX_STRING_H_
  #define _LINUX_STRING_H_
  
  /* We don't want strings.h stuff being user by user stuff by accident */
  
  #ifdef __KERNEL__
  
  #include <linux/compiler.h>	/* for inline */
  #include <linux/types.h>	/* for size_t */
  #include <linux/stddef.h>	/* for NULL */
  
  #ifdef __cplusplus
  extern "C" {
  #endif
96840aa00   Davi Arnaut   [PATCH] strndup_u...
15
  extern char *strndup_user(const char __user *, long);
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
  /*
   * Include machine specific inline routines
   */
  #include <asm/string.h>
  
  #ifndef __HAVE_ARCH_STRCPY
  extern char * strcpy(char *,const char *);
  #endif
  #ifndef __HAVE_ARCH_STRNCPY
  extern char * strncpy(char *,const char *, __kernel_size_t);
  #endif
  #ifndef __HAVE_ARCH_STRLCPY
  size_t strlcpy(char *, const char *, size_t);
  #endif
  #ifndef __HAVE_ARCH_STRCAT
  extern char * strcat(char *, const char *);
  #endif
  #ifndef __HAVE_ARCH_STRNCAT
  extern char * strncat(char *, const char *, __kernel_size_t);
  #endif
  #ifndef __HAVE_ARCH_STRLCAT
  extern size_t strlcat(char *, const char *, __kernel_size_t);
  #endif
  #ifndef __HAVE_ARCH_STRCMP
  extern int strcmp(const char *,const char *);
  #endif
  #ifndef __HAVE_ARCH_STRNCMP
  extern int strncmp(const char *,const char *,__kernel_size_t);
  #endif
  #ifndef __HAVE_ARCH_STRNICMP
  extern int strnicmp(const char *, const char *, __kernel_size_t);
  #endif
ded220bd8   David S. Miller   [STRING]: Move st...
48
49
50
51
52
53
  #ifndef __HAVE_ARCH_STRCASECMP
  extern int strcasecmp(const char *s1, const char *s2);
  #endif
  #ifndef __HAVE_ARCH_STRNCASECMP
  extern int strncasecmp(const char *s1, const char *s2, size_t n);
  #endif
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
54
55
56
57
58
59
60
61
62
  #ifndef __HAVE_ARCH_STRCHR
  extern char * strchr(const char *,int);
  #endif
  #ifndef __HAVE_ARCH_STRNCHR
  extern char * strnchr(const char *, size_t, int);
  #endif
  #ifndef __HAVE_ARCH_STRRCHR
  extern char * strrchr(const char *,int);
  #endif
481fad483   Pekka Enberg   [PATCH] strstrip(...
63
  extern char * strstrip(char *);
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
64
65
66
67
68
69
70
71
72
  #ifndef __HAVE_ARCH_STRSTR
  extern char * strstr(const char *,const char *);
  #endif
  #ifndef __HAVE_ARCH_STRLEN
  extern __kernel_size_t strlen(const char *);
  #endif
  #ifndef __HAVE_ARCH_STRNLEN
  extern __kernel_size_t strnlen(const char *,__kernel_size_t);
  #endif
8833d328c   Kyle McMartin   [PATCH] Clean up ...
73
74
75
76
77
78
79
80
81
82
83
84
  #ifndef __HAVE_ARCH_STRPBRK
  extern char * strpbrk(const char *,const char *);
  #endif
  #ifndef __HAVE_ARCH_STRSEP
  extern char * strsep(char **,const char *);
  #endif
  #ifndef __HAVE_ARCH_STRSPN
  extern __kernel_size_t strspn(const char *,const char *);
  #endif
  #ifndef __HAVE_ARCH_STRCSPN
  extern __kernel_size_t strcspn(const char *,const char *);
  #endif
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
  
  #ifndef __HAVE_ARCH_MEMSET
  extern void * memset(void *,int,__kernel_size_t);
  #endif
  #ifndef __HAVE_ARCH_MEMCPY
  extern void * memcpy(void *,const void *,__kernel_size_t);
  #endif
  #ifndef __HAVE_ARCH_MEMMOVE
  extern void * memmove(void *,const void *,__kernel_size_t);
  #endif
  #ifndef __HAVE_ARCH_MEMSCAN
  extern void * memscan(void *,int,__kernel_size_t);
  #endif
  #ifndef __HAVE_ARCH_MEMCMP
  extern int memcmp(const void *,const void *,__kernel_size_t);
  #endif
  #ifndef __HAVE_ARCH_MEMCHR
  extern void * memchr(const void *,int,__kernel_size_t);
  #endif
dd0fc66fb   Al Viro   [PATCH] gfp flags...
104
  extern char *kstrdup(const char *s, gfp_t gfp);
1e66df3ee   Jeremy Fitzhardinge   add kstrndup
105
  extern char *kstrndup(const char *s, size_t len, gfp_t gfp);
1a2f67b45   Alexey Dobriyan   [PATCH] kmemdup: ...
106
  extern void *kmemdup(const void *src, size_t len, gfp_t gfp);
543537bd9   Paulo Marques   [PATCH] create a ...
107

d84d1cc76   Jeremy Fitzhardinge   add argv_split()
108
109
  extern char **argv_split(gfp_t gfp, const char *str, int *argcp);
  extern void argv_free(char **argv);
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
110
111
112
113
114
115
  #ifdef __cplusplus
  }
  #endif
  
  #endif
  #endif /* _LINUX_STRING_H_ */