Skip to contentSkip to conversation

: Ignore feature negotiation on Data packets

PATCH In review Gerrit Renker 2 participants 2 messages Sep 27, 2007 – Sep 29, 2007 Networking

lore
Share & tools
lore
#0 lore raw

PATCH 3/11 : Ignore feature negotiation on Data packets

[DCCP]: Ignore feature negotiation on Data packets

This implements [RFC 4340, p. 32]: "any feature negotiation options received on DCCP-Data packets MUST be ignored".

Also added a FIXME for further processing, since the code currently (wrongly) classifies empty Confirm options as invalid - this needs to be resolved in a separate patch.

---
 net/dccp/options.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
net/dccp/options.c +5 -1
@@ -125,6 +125,8 @@ int dccp_parse_options(struct sock *sk, 
 		case DCCPO_CHANGE_L:
 			/* fall through */
 		case DCCPO_CHANGE_R:
+			if (pkt_type = DCCP_PKT_DATA)
+				break;
 			if (len < 2)
 				goto out_invalid_option;
 			rc = dccp_feat_change_recv(sk, opt, *value, value + 1,
@@ -141,7 +143,9 @@ int dccp_parse_options(struct sock *sk, 
 		case DCCPO_CONFIRM_L:
 			/* fall through */
 		case DCCPO_CONFIRM_R:
-			if (len < 2)
+			if (pkt_type = DCCP_PKT_DATA)
+				break;
+			if (len < 2)	/* FIXME this disallows empty confirm */
 				goto out_invalid_option;
 			if (dccp_feat_confirm_recv(sk, opt, *value,
 						   value + 1, len - 1))
#1 lore raw
Quoted 10 lines · Gerrit Renker

[DCCP]: Ignore feature negotiation on Data packets

This implements [RFC 4340, p. 32]: "any feature negotiation options received on DCCP-Data packets MUST be ignored".

Also added a FIXME for further processing, since the code currently (wrongly) classifies empty Confirm options as invalid - this needs to be resolved in a separate patch.

Signature · 3 lines
Web1: http://wand.net.nz/~iam4/
Web2: http://www.jandi.co.nz
Blog: http://iansblog.jandi.co.nz