Home | History | Annotate | Download | only in extensions

Lines Matching refs:cb

337 static void conntrack_parse(struct xt_option_call *cb)
339 struct xt_conntrack_info *sinfo = cb->data;
341 xtables_option_parse(cb);
342 switch (cb->entry->id) {
344 parse_states(cb->arg, sinfo);
345 if (cb->invert)
349 sinfo->tuple[IP_CT_DIR_ORIGINAL].dst.protonum = cb->val.protocol;
350 if (cb->invert)
360 if (cb->invert)
362 sinfo->tuple[IP_CT_DIR_ORIGINAL].src.ip = cb->val.haddr.ip;
366 if (cb->invert)
368 sinfo->tuple[IP_CT_DIR_ORIGINAL].dst.ip = cb->val.haddr.ip;
372 if (cb->invert)
374 sinfo->tuple[IP_CT_DIR_REPLY].src.ip = cb->val.haddr.ip;
378 if (cb->invert)
380 sinfo->tuple[IP_CT_DIR_REPLY].dst.ip = cb->val.haddr.ip;
384 parse_statuses(cb->arg, sinfo);
385 if (cb->invert)
390 sinfo->expires_min = cb->val.u32_range[0];
391 sinfo->expires_max = cb->val.u32_range[0];
392 if (cb->nvals >= 2)
393 sinfo->expires_max = cb->val.u32_range[1];
394 if (cb->invert)
401 static void conntrack_mt_parse(struct xt_option_call *cb, uint8_t rev)
403 struct xt_conntrack_mtinfo3 *info = cb->data;
405 xtables_option_parse(cb);
406 switch (cb->entry->id) {
408 conntrack_ps_states(info, cb->arg);
410 if (cb->invert)
414 info->l4proto = cb->val.protocol;
420 if (cb->invert)
424 info->origsrc_addr = cb->val.haddr;
425 info->origsrc_mask = cb->val.hmask;
427 if (cb->invert)
431 info->origdst_addr = cb->val.haddr;
432 info->origdst_mask = cb->val.hmask;
434 if (cb->invert)
438 info->replsrc_addr = cb->val.haddr;
439 info->replsrc_mask = cb->val.hmask;
441 if (cb->invert)
445 info->repldst_addr = cb->val.haddr;
446 info->repldst_mask = cb->val.hmask;
448 if (cb->invert)
452 conntrack_ps_statuses(info, cb->arg);
454 if (cb->invert)
458 info->expires_min = cb->val.u32_range[0];
459 info->expires_max = cb->val.u32_range[0];
460 if (cb->nvals >= 2)
461 info->expires_max = cb->val.u32_range[1];
463 if (cb->invert)
467 info->origsrc_port = cb->val.port_range[0];
468 info->origsrc_port_high = cb->val.port_range[cb->nvals >= 2];
470 if (cb->invert)
474 info->origdst_port = cb->val.port_range[0];
475 info->origdst_port_high = cb->val.port_range[cb->nvals >= 2];
477 if (cb->invert)
481 info->replsrc_port = cb->val.port_range[0];
482 info->replsrc_port_high = cb->val.port_range[cb->nvals >= 2];
484 if (cb->invert)
488 info->repldst_port = cb->val.port_range[0];
489 info->repldst_port_high = cb->val.port_range[cb->nvals >= 2];
491 if (cb->invert)
495 if (strcasecmp(cb->arg, "ORIGINAL") == 0) {
498 } else if (strcasecmp(cb->arg, "REPLY") == 0) {
502 cb->arg);
515 static void conntrack1_mt_parse(struct xt_option_call *cb)
517 struct xt_conntrack_mtinfo1 *info = cb->data;
526 cb->data = &up;
527 conntrack_mt_parse(cb, 3);
535 cb->data = info;
538 static void conntrack2_mt_parse(struct xt_option_call *cb)
543 struct xt_conntrack_mtinfo2 *info = cb->data;
552 cb->data = &up;
553 conntrack_mt_parse(cb, 3);
561 cb->data = info;
565 static void conntrack3_mt_parse(struct xt_option_call *cb)
567 conntrack_mt_parse(cb, 3);
570 static void conntrack_mt_check(struct xt_fcheck_call *cb)
572 if (cb->xflags == 0)
1082 static void state_parse(struct xt_option_call *cb)
1084 struct xt_state_info *sinfo = cb->data;
1086 xtables_option_parse(cb);
1087 sinfo->statemask = state_parse_states(cb->arg);
1088 if (cb->invert)
1092 static void state_ct1_parse(struct xt_option_call *cb)
1094 struct xt_conntrack_mtinfo1 *sinfo = cb->data;
1096 xtables_option_parse(cb);
1098 sinfo->state_mask = state_parse_states(cb->arg);
1099 if (cb->invert)
1103 static void state_ct23_parse(struct xt_option_call *cb)
1105 struct xt_conntrack_mtinfo3 *sinfo = cb
1107 xtables_option_parse(cb);
1109 sinfo->state_mask = state_parse_states(cb->arg);
1110 if (cb->invert)