Lines Matching refs:conf

54 	struct ng_patch_config *conf;  member
72 const struct ng_patch_config *conf; in ng_patch_config_getlen() local
74 conf = (const struct ng_patch_config *)(buf - in ng_patch_config_getlen()
77 return (conf->count); in ng_patch_config_getlen()
210 struct ng_patch_config *conf, *newconf; in ng_patch_rcvmsg() local
223 if (privp->conf == NULL) in ng_patch_rcvmsg()
227 NG_PATCH_CONF_SIZE(privp->conf->count), M_WAITOK); in ng_patch_rcvmsg()
232 bcopy(privp->conf, resp->data, in ng_patch_rcvmsg()
233 NG_PATCH_CONF_SIZE(privp->conf->count)); in ng_patch_rcvmsg()
235 conf = (struct ng_patch_config *) resp->data; in ng_patch_rcvmsg()
237 for (i = 0; i < conf->count; i++) { in ng_patch_rcvmsg()
238 switch (conf->ops[i].length) in ng_patch_rcvmsg()
241 conf->ops[i].val.v8 = conf->ops[i].val.v1; in ng_patch_rcvmsg()
244 conf->ops[i].val.v8 = conf->ops[i].val.v2; in ng_patch_rcvmsg()
247 conf->ops[i].val.v8 = conf->ops[i].val.v4; in ng_patch_rcvmsg()
257 conf = (struct ng_patch_config *) msg->data; in ng_patch_rcvmsg()
260 msg->header.arglen < NG_PATCH_CONF_SIZE(conf->count)) in ng_patch_rcvmsg()
263 for (i = 0; i < conf->count; i++) { in ng_patch_rcvmsg()
264 switch (conf->ops[i].length) in ng_patch_rcvmsg()
267 conf->ops[i].val.v1 = (uint8_t) conf->ops[i].val.v8; in ng_patch_rcvmsg()
270 conf->ops[i].val.v2 = (uint16_t) conf->ops[i].val.v8; in ng_patch_rcvmsg()
273 conf->ops[i].val.v4 = (uint32_t) conf->ops[i].val.v8; in ng_patch_rcvmsg()
282 conf->csum_flags &= NG_PATCH_CSUM_IPV4|NG_PATCH_CSUM_IPV6; in ng_patch_rcvmsg()
283 conf->relative_offset = !!conf->relative_offset; in ng_patch_rcvmsg()
285 newconf = malloc(NG_PATCH_CONF_SIZE(conf->count), M_NETGRAPH, M_WAITOK | M_ZERO); in ng_patch_rcvmsg()
287 bcopy(conf, newconf, NG_PATCH_CONF_SIZE(conf->count)); in ng_patch_rcvmsg()
289 if (privp->conf) in ng_patch_rcvmsg()
290 free(privp->conf, M_NETGRAPH); in ng_patch_rcvmsg()
292 privp->conf = newconf; in ng_patch_rcvmsg()
357 for (i = 0; i < privp->conf->count; i++) { in do_patch()
358 offset = global_offset + privp->conf->ops[i].offset; in do_patch()
360 if (offset + privp->conf->ops[i].length > m->m_pkthdr.len) in do_patch()
364 if (privp->conf->ops[i].mode != NG_PATCH_MODE_SET) in do_patch()
365 m_copydata(m, offset, privp->conf->ops[i].length, (caddr_t) &val); in do_patch()
367 switch (privp->conf->ops[i].length) in do_patch()
370 switch (privp->conf->ops[i].mode) in do_patch()
373 val.v1 = privp->conf->ops[i].val.v1; in do_patch()
376 val.v1 += privp->conf->ops[i].val.v1; in do_patch()
379 val.v1 -= privp->conf->ops[i].val.v1; in do_patch()
382 val.v1 *= privp->conf->ops[i].val.v1; in do_patch()
385 val.v1 /= privp->conf->ops[i].val.v1; in do_patch()
391 val.v1 &= privp->conf->ops[i].val.v1; in do_patch()
394 val.v1 |= privp->conf->ops[i].val.v1; in do_patch()
397 val.v1 ^= privp->conf->ops[i].val.v1; in do_patch()
400 val.v1 <<= privp->conf->ops[i].val.v1; in do_patch()
403 val.v1 >>= privp->conf->ops[i].val.v1; in do_patch()
411 switch (privp->conf->ops[i].mode) in do_patch()
414 val.v2 = privp->conf->ops[i].val.v2; in do_patch()
417 val.v2 += privp->conf->ops[i].val.v2; in do_patch()
420 val.v2 -= privp->conf->ops[i].val.v2; in do_patch()
423 val.v2 *= privp->conf->ops[i].val.v2; in do_patch()
426 val.v2 /= privp->conf->ops[i].val.v2; in do_patch()
432 val.v2 &= privp->conf->ops[i].val.v2; in do_patch()
435 val.v2 |= privp->conf->ops[i].val.v2; in do_patch()
438 val.v2 ^= privp->conf->ops[i].val.v2; in do_patch()
441 val.v2 <<= privp->conf->ops[i].val.v2; in do_patch()
444 val.v2 >>= privp->conf->ops[i].val.v2; in do_patch()
455 switch (privp->conf->ops[i].mode) in do_patch()
458 val.v4 = privp->conf->ops[i].val.v4; in do_patch()
461 val.v4 += privp->conf->ops[i].val.v4; in do_patch()
464 val.v4 -= privp->conf->ops[i].val.v4; in do_patch()
467 val.v4 *= privp->conf->ops[i].val.v4; in do_patch()
470 val.v4 /= privp->conf->ops[i].val.v4; in do_patch()
476 val.v4 &= privp->conf->ops[i].val.v4; in do_patch()
479 val.v4 |= privp->conf->ops[i].val.v4; in do_patch()
482 val.v4 ^= privp->conf->ops[i].val.v4; in do_patch()
485 val.v4 <<= privp->conf->ops[i].val.v4; in do_patch()
488 val.v4 >>= privp->conf->ops[i].val.v4; in do_patch()
499 switch (privp->conf->ops[i].mode) in do_patch()
502 val.v8 = privp->conf->ops[i].val.v8; in do_patch()
505 val.v8 += privp->conf->ops[i].val.v8; in do_patch()
508 val.v8 -= privp->conf->ops[i].val.v8; in do_patch()
511 val.v8 *= privp->conf->ops[i].val.v8; in do_patch()
514 val.v8 /= privp->conf->ops[i].val.v8; in do_patch()
520 val.v8 &= privp->conf->ops[i].val.v8; in do_patch()
523 val.v8 |= privp->conf->ops[i].val.v8; in do_patch()
526 val.v8 ^= privp->conf->ops[i].val.v8; in do_patch()
529 val.v8 <<= privp->conf->ops[i].val.v8; in do_patch()
532 val.v8 >>= privp->conf->ops[i].val.v8; in do_patch()
541 m_copyback(m, offset, privp->conf->ops[i].length, (caddr_t) &val); in do_patch()
576 if (priv->conf && hook == priv->in && in ng_patch_rcvdata()
583 if (priv->conf->relative_offset) { in ng_patch_rcvdata()
624 m->m_pkthdr.csum_flags |= priv->conf->csum_flags; in ng_patch_rcvdata()
665 if (privdata->conf != NULL) in ng_patch_shutdown()
666 free(privdata->conf, M_NETGRAPH); in ng_patch_shutdown()