TCA_KIND
if (nla_put_string(skb, TCA_KIND, tp->ops->kind))
if (tcf_proto_check_kind(tca[TCA_KIND], name)) {
if (tca[TCA_KIND] == NULL || !protocol) {
if (tca[TCA_KIND] && nla_strcmp(tca[TCA_KIND], tp->ops->kind)) {
if (prio == 0 && (protocol || t->tcm_handle || tca[TCA_KIND])) {
if (tcf_proto_check_kind(tca[TCA_KIND], name)) {
} else if (tca[TCA_KIND] && nla_strcmp(tca[TCA_KIND], tp->ops->kind)) {
if (tcf_proto_check_kind(tca[TCA_KIND], name)) {
} else if (tca[TCA_KIND] && nla_strcmp(tca[TCA_KIND], tp->ops->kind)) {
if (nla_put_string(skb, TCA_KIND, ops->kind))
if (!tca[TCA_KIND])
if (tcf_proto_check_kind(tca[TCA_KIND], name)) {
struct nlattr *kind = tca[TCA_KIND];
[TCA_KIND] = { .type = NLA_STRING },
if (tca[TCA_KIND] && nla_strcmp(tca[TCA_KIND], q->ops->id)) {
if (tca[TCA_KIND] &&
nla_strcmp(tca[TCA_KIND], q->ops->id)) {
if (tca[TCA_KIND] &&
nla_strcmp(tca[TCA_KIND], q->ops->id)) {
if (tca[TCA_KIND] && nla_strcmp(tca[TCA_KIND], q->ops->id)) {
request_qdisc_module(tca[TCA_KIND]);
if (nla_put_string(skb, TCA_KIND, q->ops->id))
if (nla_put_string(skb, TCA_KIND, q->ops->id))
if (tb[TCA_KIND] &&
strcmp(libbpf_nla_data(tb[TCA_KIND]), "clsact") == 0)
tb[TCA_KIND]
? libbpf_nla_getattr_str(tb[TCA_KIND])
strcmp(libbpf_nla_data(tb[TCA_KIND]), "bpf") == 0) {
return nlattr_add(req, TCA_KIND, "clsact", sizeof("clsact"));
return nlattr_add(req, TCA_KIND, qdisc, strlen(qdisc) + 1);
if (!tb[TCA_KIND])
ret = nlattr_add(&req, TCA_KIND, "bpf", sizeof("bpf"));
ret = nlattr_add(&req, TCA_KIND, "bpf", sizeof("bpf"));
ret = nlattr_add(&req, TCA_KIND, "bpf", sizeof("bpf"));
addattr_l(&req.n, sizeof(req), TCA_KIND, kind, strlen(kind) + 1);