aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/linux/netfilter/ipset/ip_set.h11
-rw-r--r--net/netfilter/ipset/ip_set_bitmap_gen.h14
-rw-r--r--net/netfilter/ipset/ip_set_hash_gen.h14
-rw-r--r--net/netfilter/ipset/ip_set_list_set.c14
4 files changed, 25 insertions, 28 deletions
diff --git a/include/linux/netfilter/ipset/ip_set.h b/include/linux/netfilter/ipset/ip_set.h
index 965dc6c6653e..e499d170f12d 100644
--- a/include/linux/netfilter/ipset/ip_set.h
+++ b/include/linux/netfilter/ipset/ip_set.h
@@ -401,33 +401,30 @@ ip_set_get_h16(const struct nlattr *attr)
401 return ntohs(nla_get_be16(attr)); 401 return ntohs(nla_get_be16(attr));
402} 402}
403 403
404#define ipset_nest_start(skb, attr) nla_nest_start(skb, attr)
405#define ipset_nest_end(skb, start) nla_nest_end(skb, start)
406
407static inline int nla_put_ipaddr4(struct sk_buff *skb, int type, __be32 ipaddr) 404static inline int nla_put_ipaddr4(struct sk_buff *skb, int type, __be32 ipaddr)
408{ 405{
409 struct nlattr *__nested = ipset_nest_start(skb, type); 406 struct nlattr *__nested = nla_nest_start(skb, type);
410 int ret; 407 int ret;
411 408
412 if (!__nested) 409 if (!__nested)
413 return -EMSGSIZE; 410 return -EMSGSIZE;
414 ret = nla_put_in_addr(skb, IPSET_ATTR_IPADDR_IPV4, ipaddr); 411 ret = nla_put_in_addr(skb, IPSET_ATTR_IPADDR_IPV4, ipaddr);
415 if (!ret) 412 if (!ret)
416 ipset_nest_end(skb, __nested); 413 nla_nest_end(skb, __nested);
417 return ret; 414 return ret;
418} 415}
419 416
420static inline int nla_put_ipaddr6(struct sk_buff *skb, int type, 417static inline int nla_put_ipaddr6(struct sk_buff *skb, int type,
421 const struct in6_addr *ipaddrptr) 418 const struct in6_addr *ipaddrptr)
422{ 419{
423 struct nlattr *__nested = ipset_nest_start(skb, type); 420 struct nlattr *__nested = nla_nest_start(skb, type);
424 int ret; 421 int ret;
425 422
426 if (!__nested) 423 if (!__nested)
427 return -EMSGSIZE; 424 return -EMSGSIZE;
428 ret = nla_put_in6_addr(skb, IPSET_ATTR_IPADDR_IPV6, ipaddrptr); 425 ret = nla_put_in6_addr(skb, IPSET_ATTR_IPADDR_IPV6, ipaddrptr);
429 if (!ret) 426 if (!ret)
430 ipset_nest_end(skb, __nested); 427 nla_nest_end(skb, __nested);
431 return ret; 428 return ret;
432} 429}
433 430
diff --git a/net/netfilter/ipset/ip_set_bitmap_gen.h b/net/netfilter/ipset/ip_set_bitmap_gen.h
index 257ca393e6f2..38ef2ea838cb 100644
--- a/net/netfilter/ipset/ip_set_bitmap_gen.h
+++ b/net/netfilter/ipset/ip_set_bitmap_gen.h
@@ -99,7 +99,7 @@ mtype_head(struct ip_set *set, struct sk_buff *skb)
99 struct nlattr *nested; 99 struct nlattr *nested;
100 size_t memsize = mtype_memsize(map, set->dsize) + set->ext_size; 100 size_t memsize = mtype_memsize(map, set->dsize) + set->ext_size;
101 101
102 nested = ipset_nest_start(skb, IPSET_ATTR_DATA); 102 nested = nla_nest_start(skb, IPSET_ATTR_DATA);
103 if (!nested) 103 if (!nested)
104 goto nla_put_failure; 104 goto nla_put_failure;
105 if (mtype_do_head(skb, map) || 105 if (mtype_do_head(skb, map) ||
@@ -109,7 +109,7 @@ mtype_head(struct ip_set *set, struct sk_buff *skb)
109 goto nla_put_failure; 109 goto nla_put_failure;
110 if (unlikely(ip_set_put_flags(skb, set))) 110 if (unlikely(ip_set_put_flags(skb, set)))
111 goto nla_put_failure; 111 goto nla_put_failure;
112 ipset_nest_end(skb, nested); 112 nla_nest_end(skb, nested);
113 113
114 return 0; 114 return 0;
115nla_put_failure: 115nla_put_failure:
@@ -213,7 +213,7 @@ mtype_list(const struct ip_set *set,
213 u32 id, first = cb->args[IPSET_CB_ARG0]; 213 u32 id, first = cb->args[IPSET_CB_ARG0];
214 int ret = 0; 214 int ret = 0;
215 215
216 adt = ipset_nest_start(skb, IPSET_ATTR_ADT); 216 adt = nla_nest_start(skb, IPSET_ATTR_ADT);
217 if (!adt) 217 if (!adt)
218 return -EMSGSIZE; 218 return -EMSGSIZE;
219 /* Extensions may be replaced */ 219 /* Extensions may be replaced */
@@ -230,7 +230,7 @@ mtype_list(const struct ip_set *set,
230#endif 230#endif
231 ip_set_timeout_expired(ext_timeout(x, set)))) 231 ip_set_timeout_expired(ext_timeout(x, set))))
232 continue; 232 continue;
233 nested = ipset_nest_start(skb, IPSET_ATTR_DATA); 233 nested = nla_nest_start(skb, IPSET_ATTR_DATA);
234 if (!nested) { 234 if (!nested) {
235 if (id == first) { 235 if (id == first) {
236 nla_nest_cancel(skb, adt); 236 nla_nest_cancel(skb, adt);
@@ -244,9 +244,9 @@ mtype_list(const struct ip_set *set,
244 goto nla_put_failure; 244 goto nla_put_failure;
245 if (ip_set_put_extensions(skb, set, x, mtype_is_filled(x))) 245 if (ip_set_put_extensions(skb, set, x, mtype_is_filled(x)))
246 goto nla_put_failure; 246 goto nla_put_failure;
247 ipset_nest_end(skb, nested); 247 nla_nest_end(skb, nested);
248 } 248 }
249 ipset_nest_end(skb, adt); 249 nla_nest_end(skb, adt);
250 250
251 /* Set listing finished */ 251 /* Set listing finished */
252 cb->args[IPSET_CB_ARG0] = 0; 252 cb->args[IPSET_CB_ARG0] = 0;
@@ -259,7 +259,7 @@ nla_put_failure:
259 cb->args[IPSET_CB_ARG0] = 0; 259 cb->args[IPSET_CB_ARG0] = 0;
260 ret = -EMSGSIZE; 260 ret = -EMSGSIZE;
261 } 261 }
262 ipset_nest_end(skb, adt); 262 nla_nest_end(skb, adt);
263out: 263out:
264 rcu_read_unlock(); 264 rcu_read_unlock();
265 return ret; 265 return ret;
diff --git a/net/netfilter/ipset/ip_set_hash_gen.h b/net/netfilter/ipset/ip_set_hash_gen.h
index 2c9609929c71..01d51f775f12 100644
--- a/net/netfilter/ipset/ip_set_hash_gen.h
+++ b/net/netfilter/ipset/ip_set_hash_gen.h
@@ -1057,7 +1057,7 @@ mtype_head(struct ip_set *set, struct sk_buff *skb)
1057 htable_bits = t->htable_bits; 1057 htable_bits = t->htable_bits;
1058 rcu_read_unlock_bh(); 1058 rcu_read_unlock_bh();
1059 1059
1060 nested = ipset_nest_start(skb, IPSET_ATTR_DATA); 1060 nested = nla_nest_start(skb, IPSET_ATTR_DATA);
1061 if (!nested) 1061 if (!nested)
1062 goto nla_put_failure; 1062 goto nla_put_failure;
1063 if (nla_put_net32(skb, IPSET_ATTR_HASHSIZE, 1063 if (nla_put_net32(skb, IPSET_ATTR_HASHSIZE,
@@ -1079,7 +1079,7 @@ mtype_head(struct ip_set *set, struct sk_buff *skb)
1079 goto nla_put_failure; 1079 goto nla_put_failure;
1080 if (unlikely(ip_set_put_flags(skb, set))) 1080 if (unlikely(ip_set_put_flags(skb, set)))
1081 goto nla_put_failure; 1081 goto nla_put_failure;
1082 ipset_nest_end(skb, nested); 1082 nla_nest_end(skb, nested);
1083 1083
1084 return 0; 1084 return 0;
1085nla_put_failure: 1085nla_put_failure:
@@ -1124,7 +1124,7 @@ mtype_list(const struct ip_set *set,
1124 void *incomplete; 1124 void *incomplete;
1125 int i, ret = 0; 1125 int i, ret = 0;
1126 1126
1127 atd = ipset_nest_start(skb, IPSET_ATTR_ADT); 1127 atd = nla_nest_start(skb, IPSET_ATTR_ADT);
1128 if (!atd) 1128 if (!atd)
1129 return -EMSGSIZE; 1129 return -EMSGSIZE;
1130 1130
@@ -1150,7 +1150,7 @@ mtype_list(const struct ip_set *set,
1150 continue; 1150 continue;
1151 pr_debug("list hash %lu hbucket %p i %u, data %p\n", 1151 pr_debug("list hash %lu hbucket %p i %u, data %p\n",
1152 cb->args[IPSET_CB_ARG0], n, i, e); 1152 cb->args[IPSET_CB_ARG0], n, i, e);
1153 nested = ipset_nest_start(skb, IPSET_ATTR_DATA); 1153 nested = nla_nest_start(skb, IPSET_ATTR_DATA);
1154 if (!nested) { 1154 if (!nested) {
1155 if (cb->args[IPSET_CB_ARG0] == first) { 1155 if (cb->args[IPSET_CB_ARG0] == first) {
1156 nla_nest_cancel(skb, atd); 1156 nla_nest_cancel(skb, atd);
@@ -1163,10 +1163,10 @@ mtype_list(const struct ip_set *set,
1163 goto nla_put_failure; 1163 goto nla_put_failure;
1164 if (ip_set_put_extensions(skb, set, e, true)) 1164 if (ip_set_put_extensions(skb, set, e, true))
1165 goto nla_put_failure; 1165 goto nla_put_failure;
1166 ipset_nest_end(skb, nested); 1166 nla_nest_end(skb, nested);
1167 } 1167 }
1168 } 1168 }
1169 ipset_nest_end(skb, atd); 1169 nla_nest_end(skb, atd);
1170 /* Set listing finished */ 1170 /* Set listing finished */
1171 cb->args[IPSET_CB_ARG0] = 0; 1171 cb->args[IPSET_CB_ARG0] = 0;
1172 1172
@@ -1180,7 +1180,7 @@ nla_put_failure:
1180 cb->args[IPSET_CB_ARG0] = 0; 1180 cb->args[IPSET_CB_ARG0] = 0;
1181 ret = -EMSGSIZE; 1181 ret = -EMSGSIZE;
1182 } else { 1182 } else {
1183 ipset_nest_end(skb, atd); 1183 nla_nest_end(skb, atd);
1184 } 1184 }
1185out: 1185out:
1186 rcu_read_unlock(); 1186 rcu_read_unlock();
diff --git a/net/netfilter/ipset/ip_set_list_set.c b/net/netfilter/ipset/ip_set_list_set.c
index 8da228da53ae..4f894165cdcd 100644
--- a/net/netfilter/ipset/ip_set_list_set.c
+++ b/net/netfilter/ipset/ip_set_list_set.c
@@ -466,7 +466,7 @@ list_set_head(struct ip_set *set, struct sk_buff *skb)
466 struct nlattr *nested; 466 struct nlattr *nested;
467 size_t memsize = list_set_memsize(map, set->dsize) + set->ext_size; 467 size_t memsize = list_set_memsize(map, set->dsize) + set->ext_size;
468 468
469 nested = ipset_nest_start(skb, IPSET_ATTR_DATA); 469 nested = nla_nest_start(skb, IPSET_ATTR_DATA);
470 if (!nested) 470 if (!nested)
471 goto nla_put_failure; 471 goto nla_put_failure;
472 if (nla_put_net32(skb, IPSET_ATTR_SIZE, htonl(map->size)) || 472 if (nla_put_net32(skb, IPSET_ATTR_SIZE, htonl(map->size)) ||
@@ -476,7 +476,7 @@ list_set_head(struct ip_set *set, struct sk_buff *skb)
476 goto nla_put_failure; 476 goto nla_put_failure;
477 if (unlikely(ip_set_put_flags(skb, set))) 477 if (unlikely(ip_set_put_flags(skb, set)))
478 goto nla_put_failure; 478 goto nla_put_failure;
479 ipset_nest_end(skb, nested); 479 nla_nest_end(skb, nested);
480 480
481 return 0; 481 return 0;
482nla_put_failure: 482nla_put_failure:
@@ -494,7 +494,7 @@ list_set_list(const struct ip_set *set,
494 struct set_elem *e; 494 struct set_elem *e;
495 int ret = 0; 495 int ret = 0;
496 496
497 atd = ipset_nest_start(skb, IPSET_ATTR_ADT); 497 atd = nla_nest_start(skb, IPSET_ATTR_ADT);
498 if (!atd) 498 if (!atd)
499 return -EMSGSIZE; 499 return -EMSGSIZE;
500 500
@@ -506,7 +506,7 @@ list_set_list(const struct ip_set *set,
506 i++; 506 i++;
507 continue; 507 continue;
508 } 508 }
509 nested = ipset_nest_start(skb, IPSET_ATTR_DATA); 509 nested = nla_nest_start(skb, IPSET_ATTR_DATA);
510 if (!nested) 510 if (!nested)
511 goto nla_put_failure; 511 goto nla_put_failure;
512 ip_set_name_byindex(map->net, e->id, name); 512 ip_set_name_byindex(map->net, e->id, name);
@@ -514,11 +514,11 @@ list_set_list(const struct ip_set *set,
514 goto nla_put_failure; 514 goto nla_put_failure;
515 if (ip_set_put_extensions(skb, set, e, true)) 515 if (ip_set_put_extensions(skb, set, e, true))
516 goto nla_put_failure; 516 goto nla_put_failure;
517 ipset_nest_end(skb, nested); 517 nla_nest_end(skb, nested);
518 i++; 518 i++;
519 } 519 }
520 520
521 ipset_nest_end(skb, atd); 521 nla_nest_end(skb, atd);
522 /* Set listing finished */ 522 /* Set listing finished */
523 cb->args[IPSET_CB_ARG0] = 0; 523 cb->args[IPSET_CB_ARG0] = 0;
524 goto out; 524 goto out;
@@ -531,7 +531,7 @@ nla_put_failure:
531 ret = -EMSGSIZE; 531 ret = -EMSGSIZE;
532 } else { 532 } else {
533 cb->args[IPSET_CB_ARG0] = i; 533 cb->args[IPSET_CB_ARG0] = i;
534 ipset_nest_end(skb, atd); 534 nla_nest_end(skb, atd);
535 } 535 }
536out: 536out:
537 rcu_read_unlock(); 537 rcu_read_unlock();