Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
net/ipv4/inet_diag.c inet_diag_get_exact_compat() -> inet_diag_cmd_exact()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cmd | 20 |
| PARAM_VALUE | 1 | in_skb | 4096-ptr_max |
| PARAM_VALUE | 1 | in_skb->data | 4096-ptr_max |
| PARAM_VALUE | 1 | in_skb->data->nlmsg_flags | 1-u16max |
| PARAM_VALUE | 1 | in_skb->data->nlmsg_len | 16-4294967295 |
| PARAM_VALUE | 1 | in_skb->data->nlmsg_type | 16-u16max |
| PARAM_VALUE | 1 | in_skb->destructor | 172217845709488128 |
| PARAM_VALUE | 1 | in_skb->hdr_len | 0 |
| PARAM_VALUE | 1 | in_skb->head_frag | 0 |
| PARAM_VALUE | 1 | in_skb->len | 16-u32max |
| PARAM_VALUE | 1 | in_skb->nohdr | 0 |
| PARAM_VALUE | 1 | in_skb->pp_recycle | 0 |
| PARAM_VALUE | 1 | in_skb->sk | 4096-ptr_max |
| PARAM_VALUE | 1 | in_skb->sk->__sk_common.skc_net.net->gen->s.len | 0-s32max |
| PARAM_VALUE | 1 | in_skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->dfl_pwq | 0-s64max |
| PARAM_VALUE | 1 | in_skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->saved_max_active | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->saved_min_active | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->ns_tracker->alloc_stack_handle | 0-4294967295 |
| PARAM_VALUE | 1 | in_skb->sk->ns_tracker->dead | 0-1 |
| PARAM_VALUE | 1 | in_skb->sk->ns_tracker->free_stack_handle | 0-4294967295 |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->process_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->process_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->request_key_auth->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->request_key_auth->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->session_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->session_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->thread_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->thread_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 2 | nlh | 4096-ptr_max |
| PARAM_VALUE | 2 | nlh->nlmsg_flags | 1-u16max |
| PARAM_VALUE | 2 | nlh->nlmsg_len | 16-u32max |
| PARAM_VALUE | 2 | nlh->nlmsg_type | 18 |
| PARAM_VALUE | 3 | hdrlen | 60 |
| PARAM_VALUE | 4 | req | 6208236663486578688 |
| PARAM_VALUE | 4 | req->pad | 0 |
| PARAM_VALUE | 4 | req->sdiag_protocol | 6 |
| BUF_SIZE | 1 | in_skb | (-1)-s32max |
| BUF_SIZE | 1 | in_skb | (-1)-s32max |
| BUF_SIZE | 2 | nlh | 1-s32max |
| BUF_SIZE | 2 | nlh | 1-s32max |
| CAPPED_DATA | 1 | in_skb->sk->__sk_common.skc_net.net | 1 |
| CAPPED_DATA | 2 | nlh->nlmsg_len | 1 |
| DATA_SOURCE | 1 | in_skb | $0 |
| DATA_SOURCE | 2 | nlh | $1 |
| FUZZY_MAX | 1 | in_skb->data->nlmsg_len | 16 |
| FUZZY_MAX | 1 | in_skb->data->nlmsg_type | 16 |
| FUZZY_MAX | 2 | nlh->nlmsg_len | 16 |
| STR_LEN | 1 | in_skb->sk | (-1) |
| CONSTRAINT | 2 | nlh | <=49 |
| BIT_INFO | 2 | nlh->nlmsg_flags | 0x1,0xffffffffffffffff |
| NOSPEC | 2 | nlh->nlmsg_len | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 2 | nlh->nlmsg_flags | 1-u16max[u] |
| USER_DATA | 2 | nlh->nlmsg_len | 16-s32max[c] |
| USER_DATA | 2 | nlh->nlmsg_pid | 0-u32max[u] |
| USER_DATA | 2 | nlh->nlmsg_seq | 0-u32max[u] |
| USER_DATA | 2 | nlh->nlmsg_type | 18[u] |
| USER_DATA | 4 | req->id.idiag_dport | 0-u16max |
| USER_DATA | 4 | req->id.idiag_if | 0-u32max |
| USER_DATA | 4 | req->id.idiag_sport | 0-u16max |
| USER_DATA | 4 | req->idiag_ext | 0-255 |
| USER_DATA | 4 | req->idiag_states | 0-u32max |
| USER_DATA | 4 | req->sdiag_family | 0-255 |
| NO_OVERFLOW_SIMPLE | 1 | in_skb->end | |
| NO_OVERFLOW_SIMPLE | 1 | in_skb->extensions | |
| NO_OVERFLOW_SIMPLE | 1 | in_skb->len | |
| NO_OVERFLOW_SIMPLE | 1 | in_skb->sk->sk_backlog.len | |
| NO_OVERFLOW_SIMPLE | 1 | in_skb->tail | |
| UNITS | 3 | hdrlen | unit_byte |
| USER_PTR | 2 | nlh | |
| HALF_LOCKED2 | &net->xfrm.xfrm_cfg_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &cb_lock | ||
| HALF_LOCKED2 | global &crypto_cfg_mutex | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | global &rx_queue_mutex |
net/ipv4/inet_diag.c inet_diag_handler_cmd() -> inet_diag_cmd_exact()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cmd | 20-21 |
| PARAM_VALUE | 1 | in_skb | 4096-ptr_max |
| PARAM_VALUE | 1 | in_skb->data | 4096-ptr_max |
| PARAM_VALUE | 1 | in_skb->data->nlmsg_flags | 1-u16max |
| PARAM_VALUE | 1 | in_skb->data->nlmsg_len | 16-4294967295 |
| PARAM_VALUE | 1 | in_skb->data->nlmsg_type | 16-u16max |
| PARAM_VALUE | 1 | in_skb->destructor | 172217845709488128 |
| PARAM_VALUE | 1 | in_skb->hdr_len | 0 |
| PARAM_VALUE | 1 | in_skb->head_frag | 0 |
| PARAM_VALUE | 1 | in_skb->len | 16-u32max |
| PARAM_VALUE | 1 | in_skb->nohdr | 0 |
| PARAM_VALUE | 1 | in_skb->pp_recycle | 0 |
| PARAM_VALUE | 1 | in_skb->sk | 4096-ptr_max |
| PARAM_VALUE | 1 | in_skb->sk->__sk_common.skc_net.net->gen->s.len | 0-s32max |
| PARAM_VALUE | 1 | in_skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->dfl_pwq | 0-s64max |
| PARAM_VALUE | 1 | in_skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->saved_max_active | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->saved_min_active | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->ns_tracker->alloc_stack_handle | 0-4294967295 |
| PARAM_VALUE | 1 | in_skb->sk->ns_tracker->dead | 0-1 |
| PARAM_VALUE | 1 | in_skb->sk->ns_tracker->free_stack_handle | 0-4294967295 |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->process_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->process_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->request_key_auth->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->request_key_auth->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->session_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->session_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->thread_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 1 | in_skb->sk->sk_peer_cred->thread_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 2 | nlh | 4096-ptr_max |
| PARAM_VALUE | 2 | nlh->nlmsg_flags | 1-u16max |
| PARAM_VALUE | 2 | nlh->nlmsg_len | 16-u32max |
| PARAM_VALUE | 2 | nlh->nlmsg_type | 20-21 |
| PARAM_VALUE | 3 | hdrlen | 56 |
| BUF_SIZE | 1 | in_skb | (-1)-s32max |
| BUF_SIZE | 1 | in_skb | (-1)-s32max |
| BUF_SIZE | 2 | nlh | 1-s32max |
| BUF_SIZE | 2 | nlh | 1-s32max |
| CAPPED_DATA | 1 | in_skb->sk->__sk_common.skc_net.net | 1 |
| CAPPED_DATA | 2 | nlh->nlmsg_len | 1 |
| DATA_SOURCE | 1 | in_skb | $0 |
| DATA_SOURCE | 2 | nlh | $1 |
| FUZZY_MAX | 1 | in_skb->data->nlmsg_len | 16 |
| FUZZY_MAX | 1 | in_skb->data->nlmsg_type | 16 |
| FUZZY_MAX | 2 | nlh->nlmsg_len | 16 |
| STR_LEN | 1 | in_skb->sk | (-1) |
| CONSTRAINT | 2 | nlh | <=49 |
| BIT_INFO | 0 | cmd | 0x14,0x1f |
| BIT_INFO | 2 | nlh->nlmsg_flags | 0x1,0xffffffffffffffff |
| BIT_INFO | 2 | nlh->nlmsg_type | 0x14,0xffffffffffffffff |
| NOSPEC | 2 | nlh->nlmsg_len | |
| HARD_MAX | 0 | cmd | 21 |
| HARD_MAX | 2 | nlh->nlmsg_type | 21 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 2 | nlh->nlmsg_flags | 1-u16max[u] |
| USER_DATA | 2 | nlh->nlmsg_len | 16-s32max[c] |
| USER_DATA | 2 | nlh->nlmsg_pid | 0-u32max[u] |
| USER_DATA | 2 | nlh->nlmsg_seq | 0-u32max[u] |
| USER_DATA | 4 | req->id.idiag_dport | 0-u16max |
| USER_DATA | 4 | req->id.idiag_if | 0-u32max |
| USER_DATA | 4 | req->id.idiag_sport | 0-u16max |
| USER_DATA | 4 | req->idiag_ext | 0-255 |
| USER_DATA | 4 | req->idiag_states | 0-u32max |
| USER_DATA | 4 | req->pad | 0-255 |
| USER_DATA | 4 | req->sdiag_family | 0-255 |
| USER_DATA | 4 | req->sdiag_protocol | 0-255 |
| NO_OVERFLOW_SIMPLE | 1 | in_skb->end | |
| NO_OVERFLOW_SIMPLE | 1 | in_skb->extensions | |
| NO_OVERFLOW_SIMPLE | 1 | in_skb->len | |
| NO_OVERFLOW_SIMPLE | 1 | in_skb->sk->sk_backlog.len | |
| NO_OVERFLOW_SIMPLE | 1 | in_skb->tail | |
| UNITS | 3 | hdrlen | unit_byte |
| USER_PTR | 2 | nlh | |
| USER_PTR | 4 | req | |
| HALF_LOCKED2 | &net->xfrm.xfrm_cfg_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &cb_lock | ||
| HALF_LOCKED2 | global &crypto_cfg_mutex | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | global &rx_queue_mutex | ||
| HALF_LOCKED2 | rcu_read |