函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\vsprintf.c Create Date:2022-07-27 07:09:33
Last Modify:2022-05-21 09:47:42 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:escaped_string

函数原型:static __attribute__((__noinline__)) char *escaped_string(char *buf, char *end, u8 *addr, struct printf_spec spec, const char *fmt)

返回类型:char

参数:

类型参数名称
char *buf
char *end
u8 *addr
struct printf_specspec
const char *fmt
1588  bool found = true
1589  count等于1
1590  flags等于0
1593  如果 width of output field 恒等于0则返回:buf
1596  如果check_pointer( & buf, end, addr, spec)则返回:buf
1599  循环
1601  :fmt[count++]恒等于'a'
1602  flags或等于ESCAPE_ANY
1603  退出
1604  :fmt[count++]恒等于'c'
1605  flags或等于ESCAPE_SPECIAL
1606  退出
1607  :fmt[count++]恒等于'h'
1608  flags或等于ESCAPE_HEX
1609  退出
1610  :fmt[count++]恒等于'n'
1611  flags或等于ESCAPE_NULL
1612  退出
1613  :fmt[count++]恒等于'o'
1614  flags或等于ESCAPE_OCTAL
1615  退出
1616  :fmt[count++]恒等于'p'
1617  flags或等于ESCAPE_NP
1618  退出
1619  :fmt[count++]恒等于's'
1620  flags或等于ESCAPE_SPACE
1621  退出
1622  默认
1623  found = false
1624  退出
1626 found循环
1628  如果非flagsflags等于ESCAPE_ANY_NP
1631  len等于如果 width of output field 小于0则1否则 width of output field
1638  buf加等于string_escape_mem(addr, len, buf, buf < end ? end - buf : 0, flags, NULL)
1640  返回:buf
调用者
名称描述
pointerShow a '%p' thing. A kernel extension is that the '%p' is followed* by an extra set of alphanumeric characters that are extended format* specifiers.* Please update scripts/checkpatch.pl when adding/removing conversion* characters