函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:fsm_init

函数原型:static struct ts_config *fsm_init(const void *pattern, unsigned int len, gfp_t gfp_mask, int flags)

返回类型:struct ts_config

参数:

类型参数名称
const void *pattern
unsigned intlen
gfp_tgfp_mask
intflags
258  err等于负EINVAL
261  tokens等于pattern
262  ntokens等于lentokens的长度
263  priv_size等于fsm的长度加len
265  如果len取模sizeof(structts_fsm_token)或ntokens小于1则转到:errout
268  如果flags按位与Searches string case insensitively 则转到:errout
271 i小于ntokens循环
272  t等于tokens[i]
274  如果type大于TS_FSM_TYPE_MAXrecur大于TS_FSM_RECUR_MAX则转到:errout
277  如果recur恒等于TS_FSM_HEAD_IGNOREi不等于0或i恒等于ntokens减1的值则转到:errout
282  conf等于alloc_ts_config(priv_size, gfp_mask)
283  如果是错误则返回:conf
286  flags等于flags
287  fsm等于ts_config_priv(conf)
288  ntokens等于ntokens
289  内存复制(tokens, pattern, len)
291 i小于ntokens循环
292  t等于tokens[i]
293  type等于Map to _ctype flags and some magic numbers [type]
296  返回:conf
298  errout :
299  返回:错误号