1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _LINUX_KERNEL_SPRINTF_H_ 3 #define _LINUX_KERNEL_SPRINTF_H_ 4 5 #include <linux/compiler_attributes.h> 6 #include <linux/types.h> 7 8 int num_to_str(char *buf, int size, unsigned long long num, unsigned int width); 9 10 __printf(2, 3) int sprintf(char *buf, const char * fmt, ...); 11 __printf(2, 0) int vsprintf(char *buf, const char *, va_list); 12 __printf(3, 4) int snprintf(char *buf, size_t size, const char *fmt, ...); 13 __printf(3, 0) int vsnprintf(char *buf, size_t size, const char *fmt, va_list args); 14 __printf(3, 4) int scnprintf(char *buf, size_t size, const char *fmt, ...); 15 __printf(3, 0) int vscnprintf(char *buf, size_t size, const char *fmt, va_list args); 16 __printf(2, 3) __malloc char *kasprintf(gfp_t gfp, const char *fmt, ...); 17 __printf(2, 0) __malloc char *kvasprintf(gfp_t gfp, const char *fmt, va_list args); 18 __printf(2, 0) const char *kvasprintf_const(gfp_t gfp, const char *fmt, va_list args); 19 20 __scanf(2, 3) int sscanf(const char *, const char *, ...); 21 __scanf(2, 0) int vsscanf(const char *, const char *, va_list); 22 23 /* These are for specific cases, do not use without real need */ 24 extern bool no_hash_pointers; 25 int no_hash_pointers_enable(char *str); 26 27 #endif /* _LINUX_KERNEL_SPRINTF_H */ 28