函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\strncpy_from_user.c Create Date:2022-07-27 08:18:50
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:复制指定长度字符串

函数原型:static inline long do_strncpy_from_user(char *dst, const char __user *src, unsigned long count, unsigned long max)

返回类型:long

参数:

类型参数名称
char *dst
const char __user *src
unsigned longcount
unsigned longmax
30  constants等于WORD_AT_A_TIME_CONSTANTS
31  res等于0
33  如果IS_UNALIGNED(src, dst)则转到:byte_at_a_time
36 max大于等于sizeof(unsignedlong)循环
40  unsafe_get_user(c, (unsignedlong__user * )(src + res), byte_at_a_time)
42  *dstres的和等于c
43  如果判断为零
46  返回:resfind_zero(data)
48  res加等于sizeof(unsignedlong)
49  max减等于sizeof(unsignedlong)
52  byte_at_a_time :
53 max循环
56  unsafe_get_user(c, src + res, efault)
57  dst[res]等于c
58  如果非c则返回:res
60  res自加
61  max自减
68  如果res大于等于count则返回:res
75  efault :
76  返回:负EFAULT
调用者
名称描述
strncpy_from_user复制用户字符串