aboutsummaryrefslogtreecommitdiffstats
path: root/net/tipc
diff options
context:
space:
mode:
authorMichal Kubecek <mkubecek@suse.cz>2019-04-26 05:13:06 -0400
committerDavid S. Miller <davem@davemloft.net>2019-04-27 17:03:44 -0400
commitae0be8de9a53cda3505865c11826d8ff0640237c (patch)
tree43bc8a0d58965d57e4ed1bedf8d892c3fe72e8b5 /net/tipc
parentc7881b4a97e21b617b8243094dfa4b62028b956c (diff)
netlink: make nla_nest_start() add NLA_F_NESTED flag
Even if the NLA_F_NESTED flag was introduced more than 11 years ago, most netlink based interfaces (including recently added ones) are still not setting it in kernel generated messages. Without the flag, message parsers not aware of attribute semantics (e.g. wireshark dissector or libmnl's mnl_nlmsg_fprintf()) cannot recognize nested attributes and won't display the structure of their contents. Unfortunately we cannot just add the flag everywhere as there may be userspace applications which check nlattr::nla_type directly rather than through a helper masking out the flags. Therefore the patch renames nla_nest_start() to nla_nest_start_noflag() and introduces nla_nest_start() as a wrapper adding NLA_F_NESTED. The calls which add NLA_F_NESTED manually are rewritten to use nla_nest_start(). Except for changes in include/net/netlink.h, the patch was generated using this semantic patch: @@ expression E1, E2; @@ -nla_nest_start(E1, E2) +nla_nest_start_noflag(E1, E2) @@ expression E1, E2; @@ -nla_nest_start_noflag(E1, E2 | NLA_F_NESTED) +nla_nest_start(E1, E2) Signed-off-by: Michal Kubecek <mkubecek@suse.cz> Acked-by: Jiri Pirko <jiri@mellanox.com> Acked-by: David Ahern <dsahern@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/tipc')
-rw-r--r--net/tipc/bearer.c8
-rw-r--r--net/tipc/group.c2
-rw-r--r--net/tipc/link.c12
-rw-r--r--net/tipc/monitor.c4
-rw-r--r--net/tipc/name_table.c4
-rw-r--r--net/tipc/net.c2
-rw-r--r--net/tipc/netlink_compat.c24
-rw-r--r--net/tipc/node.c4
-rw-r--r--net/tipc/socket.c10
-rw-r--r--net/tipc/udp_media.c2
10 files changed, 36 insertions, 36 deletions
diff --git a/net/tipc/bearer.c b/net/tipc/bearer.c
index d27f30a9a01d..fd8e4e83f5e0 100644
--- a/net/tipc/bearer.c
+++ b/net/tipc/bearer.c
@@ -687,14 +687,14 @@ static int __tipc_nl_add_bearer(struct tipc_nl_msg *msg,
687 if (!hdr) 687 if (!hdr)
688 return -EMSGSIZE; 688 return -EMSGSIZE;
689 689
690 attrs = nla_nest_start(msg->skb, TIPC_NLA_BEARER); 690 attrs = nla_nest_start_noflag(msg->skb, TIPC_NLA_BEARER);
691 if (!attrs) 691 if (!attrs)
692 goto msg_full; 692 goto msg_full;
693 693
694 if (nla_put_string(msg->skb, TIPC_NLA_BEARER_NAME, bearer->name)) 694 if (nla_put_string(msg->skb, TIPC_NLA_BEARER_NAME, bearer->name))
695 goto attr_msg_full; 695 goto attr_msg_full;
696 696
697 prop = nla_nest_start(msg->skb, TIPC_NLA_BEARER_PROP); 697 prop = nla_nest_start_noflag(msg->skb, TIPC_NLA_BEARER_PROP);
698 if (!prop) 698 if (!prop)
699 goto prop_msg_full; 699 goto prop_msg_full;
700 if (nla_put_u32(msg->skb, TIPC_NLA_PROP_PRIO, bearer->priority)) 700 if (nla_put_u32(msg->skb, TIPC_NLA_PROP_PRIO, bearer->priority))
@@ -1033,14 +1033,14 @@ static int __tipc_nl_add_media(struct tipc_nl_msg *msg,
1033 if (!hdr) 1033 if (!hdr)
1034 return -EMSGSIZE; 1034 return -EMSGSIZE;
1035 1035
1036 attrs = nla_nest_start(msg->skb, TIPC_NLA_MEDIA); 1036 attrs = nla_nest_start_noflag(msg->skb, TIPC_NLA_MEDIA);
1037 if (!attrs) 1037 if (!attrs)
1038 goto msg_full; 1038 goto msg_full;
1039 1039
1040 if (nla_put_string(msg->skb, TIPC_NLA_MEDIA_NAME, media->name)) 1040 if (nla_put_string(msg->skb, TIPC_NLA_MEDIA_NAME, media->name))
1041 goto attr_msg_full; 1041 goto attr_msg_full;
1042 1042
1043 prop = nla_nest_start(msg->skb, TIPC_NLA_MEDIA_PROP); 1043 prop = nla_nest_start_noflag(msg->skb, TIPC_NLA_MEDIA_PROP);
1044 if (!prop) 1044 if (!prop)
1045 goto prop_msg_full; 1045 goto prop_msg_full;
1046 if (nla_put_u32(msg->skb, TIPC_NLA_PROP_PRIO, media->priority)) 1046 if (nla_put_u32(msg->skb, TIPC_NLA_PROP_PRIO, media->priority))
diff --git a/net/tipc/group.c b/net/tipc/group.c
index 63f39201e41e..992be6113676 100644
--- a/net/tipc/group.c
+++ b/net/tipc/group.c
@@ -917,7 +917,7 @@ void tipc_group_member_evt(struct tipc_group *grp,
917 917
918int tipc_group_fill_sock_diag(struct tipc_group *grp, struct sk_buff *skb) 918int tipc_group_fill_sock_diag(struct tipc_group *grp, struct sk_buff *skb)
919{ 919{
920 struct nlattr *group = nla_nest_start(skb, TIPC_NLA_SOCK_GROUP); 920 struct nlattr *group = nla_nest_start_noflag(skb, TIPC_NLA_SOCK_GROUP);
921 921
922 if (!group) 922 if (!group)
923 return -EMSGSIZE; 923 return -EMSGSIZE;
diff --git a/net/tipc/link.c b/net/tipc/link.c
index 6053489c8063..0327c8ff8d48 100644
--- a/net/tipc/link.c
+++ b/net/tipc/link.c
@@ -2228,7 +2228,7 @@ static int __tipc_nl_add_stats(struct sk_buff *skb, struct tipc_stats *s)
2228 (s->accu_queue_sz / s->queue_sz_counts) : 0} 2228 (s->accu_queue_sz / s->queue_sz_counts) : 0}
2229 }; 2229 };
2230 2230
2231 stats = nla_nest_start(skb, TIPC_NLA_LINK_STATS); 2231 stats = nla_nest_start_noflag(skb, TIPC_NLA_LINK_STATS);
2232 if (!stats) 2232 if (!stats)
2233 return -EMSGSIZE; 2233 return -EMSGSIZE;
2234 2234
@@ -2260,7 +2260,7 @@ int __tipc_nl_add_link(struct net *net, struct tipc_nl_msg *msg,
2260 if (!hdr) 2260 if (!hdr)
2261 return -EMSGSIZE; 2261 return -EMSGSIZE;
2262 2262
2263 attrs = nla_nest_start(msg->skb, TIPC_NLA_LINK); 2263 attrs = nla_nest_start_noflag(msg->skb, TIPC_NLA_LINK);
2264 if (!attrs) 2264 if (!attrs)
2265 goto msg_full; 2265 goto msg_full;
2266 2266
@@ -2282,7 +2282,7 @@ int __tipc_nl_add_link(struct net *net, struct tipc_nl_msg *msg,
2282 if (nla_put_flag(msg->skb, TIPC_NLA_LINK_ACTIVE)) 2282 if (nla_put_flag(msg->skb, TIPC_NLA_LINK_ACTIVE))
2283 goto attr_msg_full; 2283 goto attr_msg_full;
2284 2284
2285 prop = nla_nest_start(msg->skb, TIPC_NLA_LINK_PROP); 2285 prop = nla_nest_start_noflag(msg->skb, TIPC_NLA_LINK_PROP);
2286 if (!prop) 2286 if (!prop)
2287 goto attr_msg_full; 2287 goto attr_msg_full;
2288 if (nla_put_u32(msg->skb, TIPC_NLA_PROP_PRIO, link->priority)) 2288 if (nla_put_u32(msg->skb, TIPC_NLA_PROP_PRIO, link->priority))
@@ -2349,7 +2349,7 @@ static int __tipc_nl_add_bc_link_stat(struct sk_buff *skb,
2349 (stats->accu_queue_sz / stats->queue_sz_counts) : 0} 2349 (stats->accu_queue_sz / stats->queue_sz_counts) : 0}
2350 }; 2350 };
2351 2351
2352 nest = nla_nest_start(skb, TIPC_NLA_LINK_STATS); 2352 nest = nla_nest_start_noflag(skb, TIPC_NLA_LINK_STATS);
2353 if (!nest) 2353 if (!nest)
2354 return -EMSGSIZE; 2354 return -EMSGSIZE;
2355 2355
@@ -2389,7 +2389,7 @@ int tipc_nl_add_bc_link(struct net *net, struct tipc_nl_msg *msg)
2389 return -EMSGSIZE; 2389 return -EMSGSIZE;
2390 } 2390 }
2391 2391
2392 attrs = nla_nest_start(msg->skb, TIPC_NLA_LINK); 2392 attrs = nla_nest_start_noflag(msg->skb, TIPC_NLA_LINK);
2393 if (!attrs) 2393 if (!attrs)
2394 goto msg_full; 2394 goto msg_full;
2395 2395
@@ -2406,7 +2406,7 @@ int tipc_nl_add_bc_link(struct net *net, struct tipc_nl_msg *msg)
2406 if (nla_put_u32(msg->skb, TIPC_NLA_LINK_TX, 0)) 2406 if (nla_put_u32(msg->skb, TIPC_NLA_LINK_TX, 0))
2407 goto attr_msg_full; 2407 goto attr_msg_full;
2408 2408
2409 prop = nla_nest_start(msg->skb, TIPC_NLA_LINK_PROP); 2409 prop = nla_nest_start_noflag(msg->skb, TIPC_NLA_LINK_PROP);
2410 if (!prop) 2410 if (!prop)
2411 goto attr_msg_full; 2411 goto attr_msg_full;
2412 if (nla_put_u32(msg->skb, TIPC_NLA_PROP_WIN, bcl->window)) 2412 if (nla_put_u32(msg->skb, TIPC_NLA_PROP_WIN, bcl->window))
diff --git a/net/tipc/monitor.c b/net/tipc/monitor.c
index 67f69389ec17..6a6eae88442f 100644
--- a/net/tipc/monitor.c
+++ b/net/tipc/monitor.c
@@ -696,7 +696,7 @@ static int __tipc_nl_add_monitor_peer(struct tipc_peer *peer,
696 if (!hdr) 696 if (!hdr)
697 return -EMSGSIZE; 697 return -EMSGSIZE;
698 698
699 attrs = nla_nest_start(msg->skb, TIPC_NLA_MON_PEER); 699 attrs = nla_nest_start_noflag(msg->skb, TIPC_NLA_MON_PEER);
700 if (!attrs) 700 if (!attrs)
701 goto msg_full; 701 goto msg_full;
702 702
@@ -785,7 +785,7 @@ int __tipc_nl_add_monitor(struct net *net, struct tipc_nl_msg *msg,
785 if (!hdr) 785 if (!hdr)
786 return -EMSGSIZE; 786 return -EMSGSIZE;
787 787
788 attrs = nla_nest_start(msg->skb, TIPC_NLA_MON); 788 attrs = nla_nest_start_noflag(msg->skb, TIPC_NLA_MON);
789 if (!attrs) 789 if (!attrs)
790 goto msg_full; 790 goto msg_full;
791 791
diff --git a/net/tipc/name_table.c b/net/tipc/name_table.c
index 89993afe0fbd..66a65c2cdb23 100644
--- a/net/tipc/name_table.c
+++ b/net/tipc/name_table.c
@@ -829,11 +829,11 @@ static int __tipc_nl_add_nametable_publ(struct tipc_nl_msg *msg,
829 if (!hdr) 829 if (!hdr)
830 return -EMSGSIZE; 830 return -EMSGSIZE;
831 831
832 attrs = nla_nest_start(msg->skb, TIPC_NLA_NAME_TABLE); 832 attrs = nla_nest_start_noflag(msg->skb, TIPC_NLA_NAME_TABLE);
833 if (!attrs) 833 if (!attrs)
834 goto msg_full; 834 goto msg_full;
835 835
836 b = nla_nest_start(msg->skb, TIPC_NLA_NAME_TABLE_PUBL); 836 b = nla_nest_start_noflag(msg->skb, TIPC_NLA_NAME_TABLE_PUBL);
837 if (!b) 837 if (!b)
838 goto attr_msg_full; 838 goto attr_msg_full;
839 839
diff --git a/net/tipc/net.c b/net/tipc/net.c
index 7ce1e86b024f..0bba4e6b005c 100644
--- a/net/tipc/net.c
+++ b/net/tipc/net.c
@@ -187,7 +187,7 @@ static int __tipc_nl_add_net(struct net *net, struct tipc_nl_msg *msg)
187 if (!hdr) 187 if (!hdr)
188 return -EMSGSIZE; 188 return -EMSGSIZE;
189 189
190 attrs = nla_nest_start(msg->skb, TIPC_NLA_NET); 190 attrs = nla_nest_start_noflag(msg->skb, TIPC_NLA_NET);
191 if (!attrs) 191 if (!attrs)
192 goto msg_full; 192 goto msg_full;
193 193
diff --git a/net/tipc/netlink_compat.c b/net/tipc/netlink_compat.c
index 340a6e7c43a7..36fe2dbb6d87 100644
--- a/net/tipc/netlink_compat.c
+++ b/net/tipc/netlink_compat.c
@@ -399,7 +399,7 @@ static int tipc_nl_compat_bearer_enable(struct tipc_nl_compat_cmd_doit *cmd,
399 399
400 b = (struct tipc_bearer_config *)TLV_DATA(msg->req); 400 b = (struct tipc_bearer_config *)TLV_DATA(msg->req);
401 401
402 bearer = nla_nest_start(skb, TIPC_NLA_BEARER); 402 bearer = nla_nest_start_noflag(skb, TIPC_NLA_BEARER);
403 if (!bearer) 403 if (!bearer)
404 return -EMSGSIZE; 404 return -EMSGSIZE;
405 405
@@ -419,7 +419,7 @@ static int tipc_nl_compat_bearer_enable(struct tipc_nl_compat_cmd_doit *cmd,
419 return -EMSGSIZE; 419 return -EMSGSIZE;
420 420
421 if (ntohl(b->priority) <= TIPC_MAX_LINK_PRI) { 421 if (ntohl(b->priority) <= TIPC_MAX_LINK_PRI) {
422 prop = nla_nest_start(skb, TIPC_NLA_BEARER_PROP); 422 prop = nla_nest_start_noflag(skb, TIPC_NLA_BEARER_PROP);
423 if (!prop) 423 if (!prop)
424 return -EMSGSIZE; 424 return -EMSGSIZE;
425 if (nla_put_u32(skb, TIPC_NLA_PROP_PRIO, ntohl(b->priority))) 425 if (nla_put_u32(skb, TIPC_NLA_PROP_PRIO, ntohl(b->priority)))
@@ -441,7 +441,7 @@ static int tipc_nl_compat_bearer_disable(struct tipc_nl_compat_cmd_doit *cmd,
441 441
442 name = (char *)TLV_DATA(msg->req); 442 name = (char *)TLV_DATA(msg->req);
443 443
444 bearer = nla_nest_start(skb, TIPC_NLA_BEARER); 444 bearer = nla_nest_start_noflag(skb, TIPC_NLA_BEARER);
445 if (!bearer) 445 if (!bearer)
446 return -EMSGSIZE; 446 return -EMSGSIZE;
447 447
@@ -685,7 +685,7 @@ static int tipc_nl_compat_media_set(struct sk_buff *skb,
685 685
686 lc = (struct tipc_link_config *)TLV_DATA(msg->req); 686 lc = (struct tipc_link_config *)TLV_DATA(msg->req);
687 687
688 media = nla_nest_start(skb, TIPC_NLA_MEDIA); 688 media = nla_nest_start_noflag(skb, TIPC_NLA_MEDIA);
689 if (!media) 689 if (!media)
690 return -EMSGSIZE; 690 return -EMSGSIZE;
691 691
@@ -696,7 +696,7 @@ static int tipc_nl_compat_media_set(struct sk_buff *skb,
696 if (nla_put_string(skb, TIPC_NLA_MEDIA_NAME, lc->name)) 696 if (nla_put_string(skb, TIPC_NLA_MEDIA_NAME, lc->name))
697 return -EMSGSIZE; 697 return -EMSGSIZE;
698 698
699 prop = nla_nest_start(skb, TIPC_NLA_MEDIA_PROP); 699 prop = nla_nest_start_noflag(skb, TIPC_NLA_MEDIA_PROP);
700 if (!prop) 700 if (!prop)
701 return -EMSGSIZE; 701 return -EMSGSIZE;
702 702
@@ -717,7 +717,7 @@ static int tipc_nl_compat_bearer_set(struct sk_buff *skb,
717 717
718 lc = (struct tipc_link_config *)TLV_DATA(msg->req); 718 lc = (struct tipc_link_config *)TLV_DATA(msg->req);
719 719
720 bearer = nla_nest_start(skb, TIPC_NLA_BEARER); 720 bearer = nla_nest_start_noflag(skb, TIPC_NLA_BEARER);
721 if (!bearer) 721 if (!bearer)
722 return -EMSGSIZE; 722 return -EMSGSIZE;
723 723
@@ -728,7 +728,7 @@ static int tipc_nl_compat_bearer_set(struct sk_buff *skb,
728 if (nla_put_string(skb, TIPC_NLA_BEARER_NAME, lc->name)) 728 if (nla_put_string(skb, TIPC_NLA_BEARER_NAME, lc->name))
729 return -EMSGSIZE; 729 return -EMSGSIZE;
730 730
731 prop = nla_nest_start(skb, TIPC_NLA_BEARER_PROP); 731 prop = nla_nest_start_noflag(skb, TIPC_NLA_BEARER_PROP);
732 if (!prop) 732 if (!prop)
733 return -EMSGSIZE; 733 return -EMSGSIZE;
734 734
@@ -748,14 +748,14 @@ static int __tipc_nl_compat_link_set(struct sk_buff *skb,
748 748
749 lc = (struct tipc_link_config *)TLV_DATA(msg->req); 749 lc = (struct tipc_link_config *)TLV_DATA(msg->req);
750 750
751 link = nla_nest_start(skb, TIPC_NLA_LINK); 751 link = nla_nest_start_noflag(skb, TIPC_NLA_LINK);
752 if (!link) 752 if (!link)
753 return -EMSGSIZE; 753 return -EMSGSIZE;
754 754
755 if (nla_put_string(skb, TIPC_NLA_LINK_NAME, lc->name)) 755 if (nla_put_string(skb, TIPC_NLA_LINK_NAME, lc->name))
756 return -EMSGSIZE; 756 return -EMSGSIZE;
757 757
758 prop = nla_nest_start(skb, TIPC_NLA_LINK_PROP); 758 prop = nla_nest_start_noflag(skb, TIPC_NLA_LINK_PROP);
759 if (!prop) 759 if (!prop)
760 return -EMSGSIZE; 760 return -EMSGSIZE;
761 761
@@ -811,7 +811,7 @@ static int tipc_nl_compat_link_reset_stats(struct tipc_nl_compat_cmd_doit *cmd,
811 811
812 name = (char *)TLV_DATA(msg->req); 812 name = (char *)TLV_DATA(msg->req);
813 813
814 link = nla_nest_start(skb, TIPC_NLA_LINK); 814 link = nla_nest_start_noflag(skb, TIPC_NLA_LINK);
815 if (!link) 815 if (!link)
816 return -EMSGSIZE; 816 return -EMSGSIZE;
817 817
@@ -973,7 +973,7 @@ static int tipc_nl_compat_publ_dump(struct tipc_nl_compat_msg *msg, u32 sock)
973 return -EMSGSIZE; 973 return -EMSGSIZE;
974 } 974 }
975 975
976 nest = nla_nest_start(args, TIPC_NLA_SOCK); 976 nest = nla_nest_start_noflag(args, TIPC_NLA_SOCK);
977 if (!nest) { 977 if (!nest) {
978 kfree_skb(args); 978 kfree_skb(args);
979 return -EMSGSIZE; 979 return -EMSGSIZE;
@@ -1100,7 +1100,7 @@ static int tipc_nl_compat_net_set(struct tipc_nl_compat_cmd_doit *cmd,
1100 1100
1101 val = ntohl(*(__be32 *)TLV_DATA(msg->req)); 1101 val = ntohl(*(__be32 *)TLV_DATA(msg->req));
1102 1102
1103 net = nla_nest_start(skb, TIPC_NLA_NET); 1103 net = nla_nest_start_noflag(skb, TIPC_NLA_NET);
1104 if (!net) 1104 if (!net)
1105 return -EMSGSIZE; 1105 return -EMSGSIZE;
1106 1106
diff --git a/net/tipc/node.c b/net/tipc/node.c
index 7478e2d4ec02..3777254a508f 100644
--- a/net/tipc/node.c
+++ b/net/tipc/node.c
@@ -1359,7 +1359,7 @@ static int __tipc_nl_add_node(struct tipc_nl_msg *msg, struct tipc_node *node)
1359 if (!hdr) 1359 if (!hdr)
1360 return -EMSGSIZE; 1360 return -EMSGSIZE;
1361 1361
1362 attrs = nla_nest_start(msg->skb, TIPC_NLA_NODE); 1362 attrs = nla_nest_start_noflag(msg->skb, TIPC_NLA_NODE);
1363 if (!attrs) 1363 if (!attrs)
1364 goto msg_full; 1364 goto msg_full;
1365 1365
@@ -2353,7 +2353,7 @@ static int __tipc_nl_add_monitor_prop(struct net *net, struct tipc_nl_msg *msg)
2353 if (!hdr) 2353 if (!hdr)
2354 return -EMSGSIZE; 2354 return -EMSGSIZE;
2355 2355
2356 attrs = nla_nest_start(msg->skb, TIPC_NLA_MON); 2356 attrs = nla_nest_start_noflag(msg->skb, TIPC_NLA_MON);
2357 if (!attrs) 2357 if (!attrs)
2358 goto msg_full; 2358 goto msg_full;
2359 2359
diff --git a/net/tipc/socket.c b/net/tipc/socket.c
index 1385207a301f..7918f4763fdc 100644
--- a/net/tipc/socket.c
+++ b/net/tipc/socket.c
@@ -3273,7 +3273,7 @@ static int __tipc_nl_add_sk_con(struct sk_buff *skb, struct tipc_sock *tsk)
3273 peer_node = tsk_peer_node(tsk); 3273 peer_node = tsk_peer_node(tsk);
3274 peer_port = tsk_peer_port(tsk); 3274 peer_port = tsk_peer_port(tsk);
3275 3275
3276 nest = nla_nest_start(skb, TIPC_NLA_SOCK_CON); 3276 nest = nla_nest_start_noflag(skb, TIPC_NLA_SOCK_CON);
3277 if (!nest) 3277 if (!nest)
3278 return -EMSGSIZE; 3278 return -EMSGSIZE;
3279 3279
@@ -3332,7 +3332,7 @@ static int __tipc_nl_add_sk(struct sk_buff *skb, struct netlink_callback *cb,
3332 if (!hdr) 3332 if (!hdr)
3333 goto msg_cancel; 3333 goto msg_cancel;
3334 3334
3335 attrs = nla_nest_start(skb, TIPC_NLA_SOCK); 3335 attrs = nla_nest_start_noflag(skb, TIPC_NLA_SOCK);
3336 if (!attrs) 3336 if (!attrs)
3337 goto genlmsg_cancel; 3337 goto genlmsg_cancel;
3338 3338
@@ -3437,7 +3437,7 @@ int tipc_sk_fill_sock_diag(struct sk_buff *skb, struct netlink_callback *cb,
3437 if (!(sk_filter_state & (1 << sk->sk_state))) 3437 if (!(sk_filter_state & (1 << sk->sk_state)))
3438 return 0; 3438 return 0;
3439 3439
3440 attrs = nla_nest_start(skb, TIPC_NLA_SOCK); 3440 attrs = nla_nest_start_noflag(skb, TIPC_NLA_SOCK);
3441 if (!attrs) 3441 if (!attrs)
3442 goto msg_cancel; 3442 goto msg_cancel;
3443 3443
@@ -3455,7 +3455,7 @@ int tipc_sk_fill_sock_diag(struct sk_buff *skb, struct netlink_callback *cb,
3455 TIPC_NLA_SOCK_PAD)) 3455 TIPC_NLA_SOCK_PAD))
3456 goto attr_msg_cancel; 3456 goto attr_msg_cancel;
3457 3457
3458 stat = nla_nest_start(skb, TIPC_NLA_SOCK_STAT); 3458 stat = nla_nest_start_noflag(skb, TIPC_NLA_SOCK_STAT);
3459 if (!stat) 3459 if (!stat)
3460 goto attr_msg_cancel; 3460 goto attr_msg_cancel;
3461 3461
@@ -3512,7 +3512,7 @@ static int __tipc_nl_add_sk_publ(struct sk_buff *skb,
3512 if (!hdr) 3512 if (!hdr)
3513 goto msg_cancel; 3513 goto msg_cancel;
3514 3514
3515 attrs = nla_nest_start(skb, TIPC_NLA_PUBL); 3515 attrs = nla_nest_start_noflag(skb, TIPC_NLA_PUBL);
3516 if (!attrs) 3516 if (!attrs)
3517 goto genlmsg_cancel; 3517 goto genlmsg_cancel;
3518 3518
diff --git a/net/tipc/udp_media.c b/net/tipc/udp_media.c
index 0884a1b8ad12..24d7c79598bb 100644
--- a/net/tipc/udp_media.c
+++ b/net/tipc/udp_media.c
@@ -523,7 +523,7 @@ int tipc_udp_nl_add_bearer_data(struct tipc_nl_msg *msg, struct tipc_bearer *b)
523 if (!ub) 523 if (!ub)
524 return -ENODEV; 524 return -ENODEV;
525 525
526 nest = nla_nest_start(msg->skb, TIPC_NLA_BEARER_UDP_OPTS); 526 nest = nla_nest_start_noflag(msg->skb, TIPC_NLA_BEARER_UDP_OPTS);
527 if (!nest) 527 if (!nest)
528 goto msg_full; 528 goto msg_full;
529 529