Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
fs/namei.c legitimize_links() -> legitimize_path()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nd | 4096-ptr_max |
| PARAM_VALUE | 0 | nd->depth | 1-u32max |
| PARAM_VALUE | 0 | nd->inode->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648 |
| PARAM_VALUE | 0 | nd->last_type | 0-3 |
| PARAM_VALUE | 0 | nd->path.dentry->d_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | nd->path.dentry->d_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | path | 4096-ptr_max |
| BUF_SIZE | 0 | nd->last.name | s32min,(-1),1-s32max |
| DATA_SOURCE | 0 | nd | $0 |
| FUZZY_MAX | 0 | nd->last_type | 3 |
| BIT_INFO | 0 | nd->flags | 0x100,0xffffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | nd->dfd | s32min-s32max |
| USER_DATA | 0 | nd->last->name | 0-255 |
| USER_DATA | 0 | nd->last.hash | 0-u32max[c] |
| USER_DATA | 0 | nd->path.dentry->__d_name.hash | 0-u32max[c] |
| NO_OVERFLOW_SIMPLE | 0 | nd->inode->i_size | |
| NO_OVERFLOW_SIMPLE | 0 | nd->path.dentry->d_inode->i_size |
fs/namei.c legitimize_root() -> legitimize_path()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nd | 4096-ptr_max |
| PARAM_VALUE | 0 | nd->depth | 0-s32max |
| PARAM_VALUE | 0 | nd->inode->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648 |
| PARAM_VALUE | 0 | nd->last_type | 0-3 |
| PARAM_VALUE | 0 | nd->path.dentry->d_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | nd->path.dentry->d_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | nd->path.dentry->d_lockref.count | 1-s32max |
| PARAM_VALUE | 0 | nd->root.mnt | 1-u64max |
| PARAM_VALUE | 0 | nd->state | 0,2-u32max |
| PARAM_VALUE | 1 | path | 4096-ptr_max |
| PARAM_VALUE | 1 | path->mnt | 1-u64max |
| BUF_SIZE | 0 | nd->last.name | s32min,(-1),1-s32max |
| CAPPED_DATA | 0 | nd->depth | 1 |
| CAPPED_DATA | 0 | nd->m_seq | 1 |
| DATA_SOURCE | 0 | nd | $0 |
| FUZZY_MAX | 0 | nd->last_type | 3 |
| BIT_INFO | 0 | nd->flags | 0x100,0xffffffffffffffff |
| BIT_INFO | 0 | nd->state | 0x2,0xfffffffe |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | nd->dfd | s32min-s32max |
| USER_DATA | 0 | nd->last->name | 0-255 |
| USER_DATA | 0 | nd->last.hash | 0-u32max[c] |
| USER_DATA | 0 | nd->path.dentry->__d_name.hash | 0-u32max[c] |
| NO_OVERFLOW_SIMPLE | 0 | nd->inode->i_size | |
| NO_OVERFLOW_SIMPLE | 0 | nd->path.dentry->d_inode->i_size |
fs/namei.c reserve_stack() -> legitimize_path()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nd | 4096-ptr_max |
| PARAM_VALUE | 0 | nd->depth | 2 |
| PARAM_VALUE | 0 | nd->path.dentry->d_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | nd->path.dentry->d_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | nd->total_link_count | s32min-40 |
| PARAM_VALUE | 1 | path | 4385562092739477504 |
| PARAM_VALUE | 1 | path->dentry | 4096-ptr_max |
| BUF_SIZE | 0 | nd->last.name | s32min,(-1),1-s32max |
| CAPPED_DATA | 0 | nd->internal | 1 |
| CAPPED_DATA | 0 | nd->stack | 1 |
| DATA_SOURCE | 0 | nd | $0 |
| DATA_SOURCE | 1 | path | $1 |
| PARAM_COMPARE | 0 | nd->internal | == $0->stack |
| BIT_INFO | 0 | nd->flags | 0x100,0xffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | nd->dfd | s32min-s32max |
| USER_DATA | 0 | nd->last->name | 0-255 |
| USER_DATA | 0 | nd->last.hash | 0-u32max[c] |
| USER_DATA | 0 | nd->path.dentry->__d_name.hash | 0-u32max[c] |
| NO_OVERFLOW_SIMPLE | 0 | nd->path.dentry->d_inode->i_size |
fs/namei.c try_to_unlazy() -> legitimize_path()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | nd | 4096-ptr_max |
| PARAM_VALUE | 0 | nd->depth | 0-s32max |
| PARAM_VALUE | 0 | nd->inode->i_sb->s_cop->inode_info_offs | 1632,1720,1808,2632,2648 |
| PARAM_VALUE | 0 | nd->last_type | 0-3 |
| PARAM_VALUE | 0 | nd->path.dentry->d_inode->i_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | nd->path.dentry->d_inode->i_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | path | 4096-ptr_max |
| BUF_SIZE | 0 | nd->last.name | s32min,(-1),1-s32max |
| CAPPED_DATA | 0 | nd->depth | 1 |
| DATA_SOURCE | 0 | nd | $0 |
| BIT_INFO | 0 | nd->flags | 0x100,0xffffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | nd->dfd | s32min-s32max |
| USER_DATA | 0 | nd->last->name | 0-255 |
| USER_DATA | 0 | nd->last.hash | 0-u32max[c] |
| USER_DATA | 0 | nd->path.dentry->__d_name.hash | 0-u32max[c] |
| NO_OVERFLOW_SIMPLE | 0 | nd->inode->i_size | |
| NO_OVERFLOW_SIMPLE | 0 | nd->path.dentry->d_inode->i_size |