Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

net/sctp/bind_addr.c sctp_bind_addr_dup() -> sctp_add_bind_addr()

Type Parameter Key Value
PARAM_VALUE 0 bp 4096-ptr_max
PARAM_VALUE 1 new 4096-ptr_max
PARAM_VALUE 2 new_size 28
PARAM_VALUE 3 addr_state 1
PARAM_VALUE 4 gfp 3264
DATA_SOURCE 0 bp $0
DATA_SOURCE 4 gfp $2
RX_PATH
UNITS 2 new_size unit_byte
LOCK2 oldsk

net/sctp/bind_addr.c sctp_copy_one_addr() -> sctp_add_bind_addr()

Type Parameter Key Value
PARAM_VALUE 0 bp 4096-ptr_max
PARAM_VALUE 0 bp->address_list.next 4096-ptr_max
PARAM_VALUE 1 new 4096-ptr_max
PARAM_VALUE 1 new->sa.sa_family 2,10
PARAM_VALUE 2 new_size 28
PARAM_VALUE 3 addr_state 1
PARAM_VALUE 4 gfp 2080,3264
DATA_SOURCE 0 bp $1
DATA_SOURCE 1 new $2
DATA_SOURCE 4 gfp $4
HARD_MAX 4 gfp 3264
RX_PATH
TASK_NOT_RUNNING
UNITS 2 new_size unit_byte
HALF_LOCKED2 sk

net/sctp/bind_addr.c sctp_raw_to_bind_addrs() -> sctp_add_bind_addr()

Type Parameter Key Value
PARAM_VALUE 0 bp 4096-ptr_max
PARAM_VALUE 0 bp->address_list.next 4096-ptr_max
PARAM_VALUE 0 bp->address_list.prev 4096-ptr_max
PARAM_VALUE 1 new 4354159648144842752
PARAM_VALUE 2 new_size 28
PARAM_VALUE 3 addr_state 1
PARAM_VALUE 4 gfp 2080
DATA_SOURCE 0 bp $0
DATA_SOURCE 4 gfp $4
RX_PATH
TASK_NOT_RUNNING
UNITS 2 new_size unit_byte
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk

net/sctp/sm_make_chunk.c sctp_unpack_cookie() -> sctp_add_bind_addr()

Type Parameter Key Value
PARAM_VALUE 0 bp 4096-ptr_max
PARAM_VALUE 0 bp->address_list.next 4096-ptr_max
PARAM_VALUE 1 new 4096-ptr_max
PARAM_VALUE 2 new_size 28
PARAM_VALUE 3 addr_state 1
PARAM_VALUE 4 gfp 2080
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 new_size unit_byte
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk

net/sctp/socket.c sctp_do_bind() -> sctp_add_bind_addr()

Type Parameter Key Value
PARAM_VALUE 0 bp 4096-ptr_max
PARAM_VALUE 1 new 4096-ptr_max
PARAM_VALUE 1 new->sa.sa_family 2,10
PARAM_VALUE 3 addr_state 1
PARAM_VALUE 4 gfp 2080
BUF_SIZE 0 bp 24
BUF_SIZE 1 new (-1)-s32max
BUF_SIZE 1 new (-1)-s32max
CAPPED_DATA 2 new_size 1
DATA_SOURCE 1 new $1
NOSPEC 1 new->v6.sin6_scope_id
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 new->sa.sa_family 2,10[u]
USER_DATA 1 new->v4.sin_addr.s_addr 0-u32max[u]
USER_DATA 1 new->v4.sin_family 0-u16max[u]
USER_DATA 1 new->v4.sin_port 0-u16max[c]
USER_DATA 1 new->v6.sin6_family 0-u16max[u]
USER_DATA 1 new->v6.sin6_flowinfo 0-u32max[u]
USER_DATA 1 new->v6.sin6_port 0-u16max[u]
USER_DATA 1 new->v6.sin6_scope_id 0-u32max[u]
UNITS 2 new_size unit_byte
USER_PTR 1 new
HALF_LOCKED2 sk

net/sctp/socket.c sctp_send_asconf_add_ip() -> sctp_add_bind_addr()

Type Parameter Key Value
PARAM_VALUE 0 bp 4096-ptr_max
PARAM_VALUE 1 new 3304437751602491392
PARAM_VALUE 2 new_size 28
PARAM_VALUE 3 addr_state 0
PARAM_VALUE 4 gfp 2080
BUF_SIZE 0 bp 24
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 new->sa.sa_family 0-u16max[u]
USER_DATA 1 new->v4.sin_addr.s_addr 0-u32max[u]
USER_DATA 1 new->v4.sin_family 0-u16max[u]
USER_DATA 1 new->v4.sin_port 0-u16max[u]
USER_DATA 1 new->v6.sin6_family 0-u16max[u]
USER_DATA 1 new->v6.sin6_flowinfo 0-u32max[u]
USER_DATA 1 new->v6.sin6_port 0-u16max[u]
USER_DATA 1 new->v6.sin6_scope_id 0-u32max[u]
UNITS 2 new_size unit_byte
HALF_LOCKED2 &net->sctp.addr_wq_lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 bh
HALF_LOCKED2 sk

net/sctp/protocol.c sctp_copy_local_addr_list() -> sctp_add_bind_addr()

Type Parameter Key Value
PARAM_VALUE 0 bp 4096-ptr_max
PARAM_VALUE 0 bp->address_list.next 4096-ptr_max
PARAM_VALUE 1 new 4096-ptr_max
PARAM_VALUE 1 new->sa.sa_family 2,10
PARAM_VALUE 2 new_size 28
PARAM_VALUE 3 addr_state 1
PARAM_VALUE 4 gfp 2080
DATA_SOURCE 0 bp $1
RX_PATH
TASK_NOT_RUNNING
UNITS 2 new_size unit_byte
LOCK2 rcu_read
HALF_LOCKED2 sk