Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/core/rtnetlink.c rtnl_changelink() -> do_setlink()

Type Parameter Key Value
PARAM_VALUE 0 skb 4096-ptr_max
PARAM_VALUE 0 skb->data 4096-ptr_max
PARAM_VALUE 0 skb->data->nlmsg_flags 1-u16max
PARAM_VALUE 0 skb->data->nlmsg_len 16-4294967295
PARAM_VALUE 0 skb->data->nlmsg_type 16-u16max
PARAM_VALUE 0 skb->destructor 172217845709488128
PARAM_VALUE 0 skb->hdr_len 0
PARAM_VALUE 0 skb->head_frag 0
PARAM_VALUE 0 skb->len 16-u32max
PARAM_VALUE 0 skb->nohdr 0
PARAM_VALUE 0 skb->pp_recycle 0
PARAM_VALUE 0 skb->sk 4096-ptr_max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->gen->s.len 0-s32max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->saved_max_active s32min-s32max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->saved_min_active s32min-s32max
PARAM_VALUE 0 skb->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 0 skb->sk->ns_tracker->dead 0-1
PARAM_VALUE 0 skb->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 0 skb->sk->sk_peer_cred->process_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->process_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->request_key_auth->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->request_key_auth->user->qnkeys s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->session_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->session_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->thread_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 1 dev 1-u64max
PARAM_VALUE 2 tgt_net 4096-ptr_max
PARAM_VALUE 4 extack 4971238048455385088
PARAM_VALUE 5 tb 4096-ptr_max
PARAM_VALUE 6 status 0,3
BUF_SIZE 0 skb (-1)-s32max
BUF_SIZE 0 skb (-1)-s32max
BUF_SIZE 2 tgt_net (-1),10304,10432
BUF_SIZE 2 tgt_net (-1),10304,10432
BUF_SIZE 5 tb 560
BUF_SIZE 5 tb 560
CAPPED_DATA 0 skb->sk->__sk_common.skc_net.net 1
CAPPED_DATA 2 tgt_net 1
DATA_SOURCE 0 skb $0
DATA_SOURCE 1 dev $3
DATA_SOURCE 2 tgt_net $4
DATA_SOURCE 4 extack $7
FUZZY_MAX 0 skb->data->nlmsg_len 16
FUZZY_MAX 0 skb->data->nlmsg_type 16
FUZZY_MAX 6 status 0
STR_LEN 0 skb->sk (-1)
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 ifm->__ifi_pad 0-255
USER_DATA 3 ifm->ifi_change 0-u32max
USER_DATA 3 ifm->ifi_family 0-255
USER_DATA 3 ifm->ifi_flags 0-u32max
USER_DATA 3 ifm->ifi_index s32min-s32max
USER_DATA 3 ifm->ifi_type 0-u16max
NO_OVERFLOW_SIMPLE 0 skb->end
NO_OVERFLOW_SIMPLE 0 skb->extensions
NO_OVERFLOW_SIMPLE 0 skb->len
NO_OVERFLOW_SIMPLE 0 skb->sk->sk_backlog.len
NO_OVERFLOW_SIMPLE 0 skb->tail
USER_PTR 3 ifm
LOCK2 global &rtnl_mutex
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 &rx_queue_mutex

net/core/rtnetlink.c rtnl_group_changelink() -> do_setlink()

Type Parameter Key Value
PARAM_VALUE 0 skb 4096-ptr_max
PARAM_VALUE 0 skb->data 4096-ptr_max
PARAM_VALUE 0 skb->data->nlmsg_flags 1-u16max
PARAM_VALUE 0 skb->data->nlmsg_len 16-4294967295
PARAM_VALUE 0 skb->data->nlmsg_type 16-u16max
PARAM_VALUE 0 skb->destructor 172217845709488128
PARAM_VALUE 0 skb->hdr_len 0
PARAM_VALUE 0 skb->head_frag 0
PARAM_VALUE 0 skb->len 16-u32max
PARAM_VALUE 0 skb->nohdr 0
PARAM_VALUE 0 skb->pp_recycle 0
PARAM_VALUE 0 skb->sk 4096-ptr_max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->gen->s.len 0-s32max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->saved_max_active s32min-s32max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->saved_min_active s32min-s32max
PARAM_VALUE 0 skb->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 0 skb->sk->ns_tracker->dead 0-1
PARAM_VALUE 0 skb->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 0 skb->sk->sk_peer_cred->process_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->process_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->request_key_auth->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->request_key_auth->user->qnkeys s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->session_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->session_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->thread_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 1 dev 4096-ptr_max
PARAM_VALUE 2 tgt_net 4096-ptr_max
PARAM_VALUE 3 ifm 4096-ptr_max
PARAM_VALUE 3 ifm->ifi_index 0
PARAM_VALUE 4 extack 4971238048455385088
PARAM_VALUE 5 tb 4096-ptr_max
PARAM_VALUE 6 status 0
BUF_SIZE 0 skb (-1)-s32max
BUF_SIZE 0 skb (-1)-s32max
BUF_SIZE 2 tgt_net (-1),10304,10432
BUF_SIZE 2 tgt_net (-1),10304,10432
BUF_SIZE 5 tb 560
BUF_SIZE 5 tb 560
CAPPED_DATA 0 skb->sk->__sk_common.skc_net.net 1
CAPPED_DATA 1 dev->group 1
CAPPED_DATA 1 &dev->dev_list 1
CAPPED_DATA 2 tgt_net 1
DATA_SOURCE 0 skb $0
DATA_SOURCE 2 tgt_net $2
DATA_SOURCE 3 ifm $4
DATA_SOURCE 4 extack $5
DATA_SOURCE 5 tb $6
FUZZY_MAX 0 skb->data->nlmsg_len 16
FUZZY_MAX 0 skb->data->nlmsg_type 16
STR_LEN 0 skb->sk (-1)
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 ifm->__ifi_pad 0-255
USER_DATA 3 ifm->ifi_change 0-u32max
USER_DATA 3 ifm->ifi_family 0-255
USER_DATA 3 ifm->ifi_flags 0-u32max
USER_DATA 3 ifm->ifi_index 0[c]
USER_DATA 3 ifm->ifi_type 0-u16max
NO_OVERFLOW_SIMPLE 0 skb->end
NO_OVERFLOW_SIMPLE 0 skb->extensions
NO_OVERFLOW_SIMPLE 0 skb->len
NO_OVERFLOW_SIMPLE 0 skb->sk->sk_backlog.len
NO_OVERFLOW_SIMPLE 0 skb->tail
USER_PTR 3 ifm
LOCK2 global &rtnl_mutex
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 &rx_queue_mutex

net/core/rtnetlink.c rtnl_setlink() -> do_setlink()

Type Parameter Key Value
PARAM_VALUE 0 skb 4096-ptr_max
PARAM_VALUE 0 skb->data 4096-ptr_max
PARAM_VALUE 0 skb->data->nlmsg_flags 1-u16max
PARAM_VALUE 0 skb->data->nlmsg_len 16-4294967295
PARAM_VALUE 0 skb->data->nlmsg_type 16-u16max
PARAM_VALUE 0 skb->destructor 0,172217845709488128
PARAM_VALUE 0 skb->hdr_len 0
PARAM_VALUE 0 skb->head_frag 0
PARAM_VALUE 0 skb->len 16-u32max
PARAM_VALUE 0 skb->nohdr 0
PARAM_VALUE 0 skb->sk 0,4096-ptr_max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->gen->s.len 0-s32max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->saved_max_active s32min-s32max
PARAM_VALUE 0 skb->sk->__sk_common.skc_net.net->xfrm.nat_keepalive_work.wq->saved_min_active s32min-s32max
PARAM_VALUE 0 skb->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 0 skb->sk->ns_tracker->dead 0-1
PARAM_VALUE 0 skb->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 0 skb->sk->sk_peer_cred->process_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->process_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->request_key_auth->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->request_key_auth->user->qnkeys s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->session_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->session_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->thread_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 skb->sk->sk_peer_cred->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 skb->sk->sk_protocol 0,2,4-6,10,12,16
PARAM_VALUE 1 dev 1-u64max
PARAM_VALUE 2 tgt_net 4096-ptr_max
PARAM_VALUE 3 ifm 4096-ptr_max
PARAM_VALUE 4 extack 4971238048455385088
PARAM_VALUE 4 extack->bad_attr 0
PARAM_VALUE 4 extack->policy 0
PARAM_VALUE 5 tb 4096-ptr_max
PARAM_VALUE 6 status 0
BUF_SIZE 0 skb (-1)-s32max
BUF_SIZE 0 skb (-1)-s32max
BUF_SIZE 5 tb 560
CAPPED_DATA 0 skb 1
CAPPED_DATA 0 skb->sk->__sk_common.skc_net.net 1
CAPPED_DATA 2 tgt_net 1
CAPPED_DATA 3 ifm->ifi_index 1
DATA_SOURCE 0 skb $0
DATA_SOURCE 2 tgt_net r rtnl_link_get_net_capable
DATA_SOURCE 3 ifm r nlmsg_data
DATA_SOURCE 4 extack $2
FUZZY_MAX 0 skb->data->nlmsg_len 16
FUZZY_MAX 0 skb->data->nlmsg_type 16
STR_LEN 0 skb->sk (-1)
MEM_ZERO 4 extack
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 ifm->__ifi_pad 0-255
USER_DATA 3 ifm->ifi_change 0-u32max
USER_DATA 3 ifm->ifi_family 0-255
USER_DATA 3 ifm->ifi_flags 0-u32max
USER_DATA 3 ifm->ifi_index s32min-s32max[c]
USER_DATA 3 ifm->ifi_type 0-u16max
NO_OVERFLOW_SIMPLE 0 skb->end
NO_OVERFLOW_SIMPLE 0 skb->extensions
NO_OVERFLOW_SIMPLE 0 skb->len
NO_OVERFLOW_SIMPLE 0 skb->sk->sk_backlog.len
NO_OVERFLOW_SIMPLE 0 skb->tail
USER_PTR 3 ifm
LOCK2 global &rtnl_mutex
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
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 &rx_queue_mutex