diff options
| author | Wei Yongjun <[email protected]> | 2008-08-23 13:28:27 +0200 |
|---|---|---|
| committer | Gerrit Renker <[email protected]> | 2008-09-04 07:45:24 +0200 |
| commit | ba1a6c7bc0ff33e405f5156dc8f4145437255f1f (patch) | |
| tree | 5ea885a744253efca4b31f0c16704d375391da23 /include/linux | |
| parent | fca1287a3a9246d4facc27a0a455fada18fd1164 (diff) | |
dccp: Always generate a Reset in response to option errors
RFC4340 states that if a packet is received with an option error (such as a
Mandatory Option as the last byte of the option list), the endpoint should
repond with a Reset.
In the LISTEN and RESPOND states, the endpoint correctly reponds with Reset,
while in the REQUEST/OPEN states, packets with option errors are just ignored.
The packet sequence is as follows:
Case 1:
Endpoint A Endpoint B
(CLOSED) (CLOSED)
<---------------- REQUEST
RESPONSE -----------------> (*1)
(with invalid option)
<---------------- RESET
(with Reset Code 5, "Option Error")
(*1) currently just ignored, no Reset is sent
Case 2:
Endpoint A Endpoint B
(OPEN) (OPEN)
DATA-ACK -----------------> (*2)
(with invalid option)
<---------------- RESET
(with Reset Code 5, "Option Error")
(*2) currently just ignored, no Reset is sent
This patch fixes the problem, by generating a Reset instead of silently
ignoring option errors.
Signed-off-by: Wei Yongjun <[email protected]>
Acked-by: Arnaldo Carvalho de Melo <[email protected]>
Acked-by: Gerrit Renker <[email protected]>
Diffstat (limited to 'include/linux')
0 files changed, 0 insertions, 0 deletions