mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-12 13:55:32 +00:00
![Andy Shevchenko](/assets/img/avatar_default.png)
The introduced function string_escape_mem() is a kind of opposite to string_unescape. We have several users of such functionality each of them created custom implementation. The series contains clean up of test suite, adding new call, and switching few users to use it via %*pE specifier. Test suite covers all of existing and most of potential use cases. This patch (of 11): The documentation of API belongs to c-file. This patch moves it accordingly. There is no functional change. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Cc: "John W . Linville" <linville@tuxdriver.com> Cc: Johannes Berg <johannes@sipsolutions.net> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Joe Perches <joe@perches.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
40 lines
1 KiB
C
40 lines
1 KiB
C
#ifndef _LINUX_STRING_HELPERS_H_
|
|
#define _LINUX_STRING_HELPERS_H_
|
|
|
|
#include <linux/types.h>
|
|
|
|
/* Descriptions of the types of units to
|
|
* print in */
|
|
enum string_size_units {
|
|
STRING_UNITS_10, /* use powers of 10^3 (standard SI) */
|
|
STRING_UNITS_2, /* use binary powers of 2^10 */
|
|
};
|
|
|
|
int string_get_size(u64 size, enum string_size_units units,
|
|
char *buf, int len);
|
|
|
|
#define UNESCAPE_SPACE 0x01
|
|
#define UNESCAPE_OCTAL 0x02
|
|
#define UNESCAPE_HEX 0x04
|
|
#define UNESCAPE_SPECIAL 0x08
|
|
#define UNESCAPE_ANY \
|
|
(UNESCAPE_SPACE | UNESCAPE_OCTAL | UNESCAPE_HEX | UNESCAPE_SPECIAL)
|
|
|
|
int string_unescape(char *src, char *dst, size_t size, unsigned int flags);
|
|
|
|
static inline int string_unescape_inplace(char *buf, unsigned int flags)
|
|
{
|
|
return string_unescape(buf, buf, 0, flags);
|
|
}
|
|
|
|
static inline int string_unescape_any(char *src, char *dst, size_t size)
|
|
{
|
|
return string_unescape(src, dst, size, UNESCAPE_ANY);
|
|
}
|
|
|
|
static inline int string_unescape_any_inplace(char *buf)
|
|
{
|
|
return string_unescape_any(buf, buf, 0);
|
|
}
|
|
|
|
#endif
|