Lines Matching refs:cb

207 	struct nl_cb *cb;
212 cb = sk->s_cb;
213 if (cb->cb_set[NL_CB_MSG_OUT])
214 if (nl_cb_call(cb, NL_CB_MSG_OUT, msg) != NL_OK)
325 struct nl_cb *cb = sk->s_cb;
329 if (cb->cb_send_ow)
330 return cb->cb_send_ow(sk, msg);
490 #define NL_CB_CALL(cb, type, msg) \
492 err = nl_cb_call(cb, type, msg); \
506 static int recvmsgs(struct nl_sock *sk, struct nl_cb *cb)
517 if (cb->cb_recv_ow)
518 n = cb->cb_recv_ow(sk, &nla, &buf, &creds);
545 if (cb->cb_set[NL_CB_MSG_IN])
546 NL_CB_CALL(cb, NL_CB_MSG_IN, msg);
551 if (cb->cb_set[NL_CB_SEQ_CHECK])
552 NL_CB_CALL(cb, NL_CB_SEQ_CHECK, msg);
554 if (cb->cb_set[NL_CB_INVALID])
555 NL_CB_CALL(cb, NL_CB_INVALID, msg);
579 if (cb->cb_set[NL_CB_SEND_ACK])
580 NL_CB_CALL(cb, NL_CB_SEND_ACK, msg);
592 if (cb->cb_set[NL_CB_FINISH])
593 NL_CB_CALL(cb, NL_CB_FINISH, msg);
601 if (cb->cb_set[NL_CB_SKIPPED])
602 NL_CB_CALL(cb, NL_CB_SKIPPED, msg);
611 if (cb->cb_set[NL_CB_OVERRUN])
612 NL_CB_CALL(cb, NL_CB_OVERRUN, msg);
628 if (cb->cb_set[NL_CB_INVALID])
629 NL_CB_CALL(cb, NL_CB_INVALID, msg);
636 if (cb->cb_err) {
637 err = cb->cb_err(&nla, e,
638 cb->cb_err_arg);
651 } else if (cb->cb_set[NL_CB_ACK])
652 NL_CB_CALL(cb, NL_CB_ACK, msg);
657 if (cb->cb_set[NL_CB_VALID])
658 NL_CB_CALL(cb, NL_CB_VALID, msg);
689 * @arg cb set of callbacks to control behaviour.
701 int nl_recvmsgs(struct nl_sock *sk, struct nl_cb *cb)
703 if (cb->cb_recvmsgs_ow)
704 return cb->cb_recvmsgs_ow(sk, cb);
706 return recvmsgs(sk, cb);
737 struct nl_cb *cb;
739 cb = nl_cb_clone(sk->s_cb);
740 if (cb == NULL)
743 nl_cb_set(cb, NL_CB_ACK, NL_CB_CUSTOM, ack_wait_handler, NULL);
744 err = nl_recvmsgs(sk, cb);
745 nl_cb_put(cb);