diff options
Diffstat (limited to 'net/dccp/feat.c')
-rw-r--r-- | net/dccp/feat.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/dccp/feat.c b/net/dccp/feat.c index 192d494a3816..f79fb5e33f5e 100644 --- a/net/dccp/feat.c +++ b/net/dccp/feat.c | |||
@@ -342,6 +342,10 @@ static int __feat_register_sp(struct list_head *fn, u8 feat, u8 is_local, | |||
342 | !dccp_feat_sp_list_ok(feat, sp_val, sp_len)) | 342 | !dccp_feat_sp_list_ok(feat, sp_val, sp_len)) |
343 | return -EINVAL; | 343 | return -EINVAL; |
344 | 344 | ||
345 | /* Avoid negotiating alien CCIDs by only advertising supported ones */ | ||
346 | if (feat == DCCPF_CCID && !ccid_support_check(sp_val, sp_len)) | ||
347 | return -EOPNOTSUPP; | ||
348 | |||
345 | if (dccp_feat_clone_sp_val(&fval, sp_val, sp_len)) | 349 | if (dccp_feat_clone_sp_val(&fval, sp_val, sp_len)) |
346 | return -ENOMEM; | 350 | return -ENOMEM; |
347 | 351 | ||