Sequence Number Validation Bug Fixes 1/2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Currently dccp_check_seqno returns 0 (indicating a valid packet) if the
acknowledgment number is out of bounds and the sync that RFC 4340
mandates at this point is currently being rate-limited. This function
should return -1, indicating an invalid packet.

>>>>>>>>>>>>>>>>>>>>>>>>>  Patch Follows <<<<<<<<<<<<<<<<<<<<<<<<<<
diff --git a/net/dccp/input.c b/net/dccp/input.c
--- a/net/dccp/input.c
+++ b/net/dccp/input.c
@@ -275,8 +279,10 @@ static int dccp_check_seqno(struct sock *sk, struct
sk_buff *skb)
*   at most 1 / (dccp_sync_rate_limit * HZ) Syncs per second.
*/
if (time_before(now, (dp->dccps_rate_last +
-       sysctl_dccp_sync_ratelimit)))
- return 0;
+       sysctl_dccp_sync_ratelimit))){
+ return -1;
+ }
+

DCCP_WARN("Step 6 failed for %s packet, "
  "(LSWL(%llu) <= P.seqno(%llu) <= S.SWH(%llu)) and "


Attachment: signature.asc
Description: This is a digitally signed message part


[Index of Archives]     [Linux Kernel]     [IETF DCCP]     [Linux Networking]     [Git]     [Security]     [Linux Assembly]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux