aboutsummaryrefslogtreecommitdiffstats
path: root/net/sched/act_gact.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/sched/act_gact.c')
-rw-r--r--net/sched/act_gact.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/net/sched/act_gact.c b/net/sched/act_gact.c
index b77f5a06a658..f10fb8256442 100644
--- a/net/sched/act_gact.c
+++ b/net/sched/act_gact.c
@@ -162,7 +162,8 @@ static int tcf_gact_dump(struct sk_buff *skb, struct tc_action *a, int bind, int
162 }; 162 };
163 struct tcf_t t; 163 struct tcf_t t;
164 164
165 NLA_PUT(skb, TCA_GACT_PARMS, sizeof(opt), &opt); 165 if (nla_put(skb, TCA_GACT_PARMS, sizeof(opt), &opt))
166 goto nla_put_failure;
166#ifdef CONFIG_GACT_PROB 167#ifdef CONFIG_GACT_PROB
167 if (gact->tcfg_ptype) { 168 if (gact->tcfg_ptype) {
168 struct tc_gact_p p_opt = { 169 struct tc_gact_p p_opt = {
@@ -171,13 +172,15 @@ static int tcf_gact_dump(struct sk_buff *skb, struct tc_action *a, int bind, int
171 .ptype = gact->tcfg_ptype, 172 .ptype = gact->tcfg_ptype,
172 }; 173 };
173 174
174 NLA_PUT(skb, TCA_GACT_PROB, sizeof(p_opt), &p_opt); 175 if (nla_put(skb, TCA_GACT_PROB, sizeof(p_opt), &p_opt))
176 goto nla_put_failure;
175 } 177 }
176#endif 178#endif
177 t.install = jiffies_to_clock_t(jiffies - gact->tcf_tm.install); 179 t.install = jiffies_to_clock_t(jiffies - gact->tcf_tm.install);
178 t.lastuse = jiffies_to_clock_t(jiffies - gact->tcf_tm.lastuse); 180 t.lastuse = jiffies_to_clock_t(jiffies - gact->tcf_tm.lastuse);
179 t.expires = jiffies_to_clock_t(gact->tcf_tm.expires); 181 t.expires = jiffies_to_clock_t(gact->tcf_tm.expires);
180 NLA_PUT(skb, TCA_GACT_TM, sizeof(t), &t); 182 if (nla_put(skb, TCA_GACT_TM, sizeof(t), &t))
183 goto nla_put_failure;
181 return skb->len; 184 return skb->len;
182 185
183nla_put_failure: 186nla_put_failure: