diff options
Diffstat (limited to 'net/sched/cls_u32.c')
-rw-r--r-- | net/sched/cls_u32.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/net/sched/cls_u32.c b/net/sched/cls_u32.c index 99ea4c74dd5b..10b8d851fc6b 100644 --- a/net/sched/cls_u32.c +++ b/net/sched/cls_u32.c | |||
@@ -1112,6 +1112,14 @@ static void u32_walk(struct tcf_proto *tp, struct tcf_walker *arg) | |||
1112 | } | 1112 | } |
1113 | } | 1113 | } |
1114 | 1114 | ||
1115 | static void u32_bind_class(void *fh, u32 classid, unsigned long cl) | ||
1116 | { | ||
1117 | struct tc_u_knode *n = fh; | ||
1118 | |||
1119 | if (n && n->res.classid == classid) | ||
1120 | n->res.class = cl; | ||
1121 | } | ||
1122 | |||
1115 | static int u32_dump(struct net *net, struct tcf_proto *tp, void *fh, | 1123 | static int u32_dump(struct net *net, struct tcf_proto *tp, void *fh, |
1116 | struct sk_buff *skb, struct tcmsg *t) | 1124 | struct sk_buff *skb, struct tcmsg *t) |
1117 | { | 1125 | { |
@@ -1242,6 +1250,7 @@ static struct tcf_proto_ops cls_u32_ops __read_mostly = { | |||
1242 | .delete = u32_delete, | 1250 | .delete = u32_delete, |
1243 | .walk = u32_walk, | 1251 | .walk = u32_walk, |
1244 | .dump = u32_dump, | 1252 | .dump = u32_dump, |
1253 | .bind_class = u32_bind_class, | ||
1245 | .owner = THIS_MODULE, | 1254 | .owner = THIS_MODULE, |
1246 | }; | 1255 | }; |
1247 | 1256 | ||