Contributors: 13
Author |
Tokens |
Token Proportion |
Commits |
Commit Proportion |
Arnaldo Carvalho de Melo |
69 |
24.64% |
7 |
31.82% |
Vitaly Chikunov |
51 |
18.21% |
1 |
4.55% |
Ingo Molnar |
38 |
13.57% |
2 |
9.09% |
Jiri Olsa |
30 |
10.71% |
2 |
9.09% |
Wei Yang |
21 |
7.50% |
2 |
9.09% |
Masami Hiramatsu |
19 |
6.79% |
1 |
4.55% |
Wang Nan |
13 |
4.64% |
1 |
4.55% |
Vineet Gupta |
12 |
4.29% |
1 |
4.55% |
Namhyung Kim |
10 |
3.57% |
1 |
4.55% |
Athira Rajeev |
9 |
3.21% |
1 |
4.55% |
Hitoshi Mitake |
5 |
1.79% |
1 |
4.55% |
Josh Poimboeuf |
2 |
0.71% |
1 |
4.55% |
Greg Kroah-Hartman |
1 |
0.36% |
1 |
4.55% |
Total |
280 |
|
22 |
|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _TOOLS_LINUX_STRING_H_
#define _TOOLS_LINUX_STRING_H_
#include <linux/types.h> /* for size_t */
#include <string.h>
void *memdup(const void *src, size_t len);
char **argv_split(const char *str, int *argcp);
void argv_free(char **argv);
int strtobool(const char *s, bool *res);
#define strscpy strcpy
/*
* glibc based builds needs the extern while uClibc doesn't.
* However uClibc headers also define __GLIBC__ hence the hack below
*/
#if defined(__GLIBC__) && !defined(__UCLIBC__)
// pragma diagnostic was introduced in gcc 4.6
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wredundant-decls"
#endif
extern size_t strlcpy(char *dest, const char *src, size_t size);
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)
#pragma GCC diagnostic pop
#endif
#endif
char *str_error_r(int errnum, char *buf, size_t buflen);
char *strreplace(char *s, char old, char new);
/**
* strstarts - does @str start with @prefix?
* @str: string to examine
* @prefix: prefix to look for.
*/
static inline bool strstarts(const char *str, const char *prefix)
{
return strncmp(str, prefix, strlen(prefix)) == 0;
}
extern char * __must_check skip_spaces(const char *);
extern char *strim(char *);
extern void remove_spaces(char *s);
extern void *memchr_inv(const void *start, int c, size_t bytes);
extern unsigned long long memparse(const char *ptr, char **retptr);
#endif /* _TOOLS_LINUX_STRING_H_ */