• Home
  • Raw
  • Download

Lines Matching full:cb

8  * @defgroup cb Callbacks/Customization
198 struct nl_cb *cb; in nl_cb_alloc() local
203 cb = calloc(1, sizeof(*cb)); in nl_cb_alloc()
204 if (!cb) in nl_cb_alloc()
207 cb->cb_refcnt = 1; in nl_cb_alloc()
208 cb->cb_active = NL_CB_TYPE_MAX + 1; in nl_cb_alloc()
211 nl_cb_set(cb, i, kind, NULL, NULL); in nl_cb_alloc()
213 nl_cb_err(cb, kind, NULL, NULL); in nl_cb_alloc()
215 return cb; in nl_cb_alloc()
226 struct nl_cb *cb; in nl_cb_clone() local
228 cb = nl_cb_alloc(NL_CB_DEFAULT); in nl_cb_clone()
229 if (!cb) in nl_cb_clone()
232 memcpy(cb, orig, sizeof(*orig)); in nl_cb_clone()
233 cb->cb_refcnt = 1; in nl_cb_clone()
235 return cb; in nl_cb_clone()
238 struct nl_cb *nl_cb_get(struct nl_cb *cb) in nl_cb_get() argument
240 cb->cb_refcnt++; in nl_cb_get()
242 return cb; in nl_cb_get()
245 void nl_cb_put(struct nl_cb *cb) in nl_cb_put() argument
247 if (!cb) in nl_cb_put()
250 cb->cb_refcnt--; in nl_cb_put()
252 if (cb->cb_refcnt < 0) in nl_cb_put()
255 if (cb->cb_refcnt <= 0) in nl_cb_put()
256 free(cb); in nl_cb_put()
261 * @arg cb callback to query
265 enum nl_cb_type nl_cb_active_type(struct nl_cb *cb) in nl_cb_active_type() argument
267 return cb->cb_active; in nl_cb_active_type()
279 * @arg cb callback set
287 int nl_cb_set(struct nl_cb *cb, enum nl_cb_type type, enum nl_cb_kind kind, in nl_cb_set() argument
297 cb->cb_set[type] = func; in nl_cb_set()
298 cb->cb_args[type] = arg; in nl_cb_set()
300 cb->cb_set[type] = cb_def[type][kind]; in nl_cb_set()
301 cb->cb_args[type] = arg; in nl_cb_set()
309 * @arg cb callback set
316 int nl_cb_set_all(struct nl_cb *cb, enum nl_cb_kind kind, in nl_cb_set_all() argument
322 err = nl_cb_set(cb, i, kind, func, arg); in nl_cb_set_all()
332 * @arg cb callback set
337 int nl_cb_err(struct nl_cb *cb, enum nl_cb_kind kind, in nl_cb_err() argument
344 cb->cb_err = func; in nl_cb_err()
345 cb->cb_err_arg = arg; in nl_cb_err()
347 cb->cb_err = cb_err_def[kind]; in nl_cb_err()
348 cb->cb_err_arg = arg; in nl_cb_err()
363 * @arg cb callback set
366 void nl_cb_overwrite_recvmsgs(struct nl_cb *cb, in nl_cb_overwrite_recvmsgs() argument
369 cb->cb_recvmsgs_ow = func; in nl_cb_overwrite_recvmsgs()
374 * @arg cb callback set
377 void nl_cb_overwrite_recv(struct nl_cb *cb, in nl_cb_overwrite_recv() argument
381 cb->cb_recv_ow = func; in nl_cb_overwrite_recv()
386 * @arg cb callback set
389 void nl_cb_overwrite_send(struct nl_cb *cb, in nl_cb_overwrite_send() argument
392 cb->cb_send_ow = func; in nl_cb_overwrite_send()