aboutsummaryrefslogtreecommitdiffstats
path: root/net/tipc
diff options
context:
space:
mode:
Diffstat (limited to 'net/tipc')
-rw-r--r--net/tipc/netlink_compat.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/net/tipc/netlink_compat.c b/net/tipc/netlink_compat.c
index 5f8e53cca222..0bfd03d67fdd 100644
--- a/net/tipc/netlink_compat.c
+++ b/net/tipc/netlink_compat.c
@@ -771,7 +771,12 @@ static int tipc_nl_compat_link_set(struct tipc_nl_compat_cmd_doit *cmd,
771 771
772 lc = (struct tipc_link_config *)TLV_DATA(msg->req); 772 lc = (struct tipc_link_config *)TLV_DATA(msg->req);
773 773
774 len = min_t(int, TLV_GET_DATA_LEN(msg->req), TIPC_MAX_LINK_NAME); 774 len = TLV_GET_DATA_LEN(msg->req);
775 len -= offsetof(struct tipc_link_config, name);
776 if (len <= 0)
777 return -EINVAL;
778
779 len = min_t(int, len, TIPC_MAX_LINK_NAME);
775 if (!string_is_valid(lc->name, len)) 780 if (!string_is_valid(lc->name, len))
776 return -EINVAL; 781 return -EINVAL;
777 782