diff options
Diffstat (limited to 'net/dccp/proto.c')
-rw-r--r-- | net/dccp/proto.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/dccp/proto.c b/net/dccp/proto.c index b56efdd2a421..a3caa11aa836 100644 --- a/net/dccp/proto.c +++ b/net/dccp/proto.c | |||
@@ -735,6 +735,10 @@ static int dccp_msghdr_parse(struct msghdr *msg, struct sk_buff *skb) | |||
735 | if (cmsg->cmsg_level != SOL_DCCP) | 735 | if (cmsg->cmsg_level != SOL_DCCP) |
736 | continue; | 736 | continue; |
737 | 737 | ||
738 | if (cmsg->cmsg_type <= DCCP_SCM_QPOLICY_MAX && | ||
739 | !dccp_qpolicy_param_ok(skb->sk, cmsg->cmsg_type)) | ||
740 | return -EINVAL; | ||
741 | |||
738 | switch (cmsg->cmsg_type) { | 742 | switch (cmsg->cmsg_type) { |
739 | case DCCP_SCM_PRIORITY: | 743 | case DCCP_SCM_PRIORITY: |
740 | if (cmsg->cmsg_len != CMSG_LEN(sizeof(__u32))) | 744 | if (cmsg->cmsg_len != CMSG_LEN(sizeof(__u32))) |