]> git.bitcoin.ninja Git - flowspec-xdp/commit
Correct three bugs in the rate limiter.
authorMatt Corallo <git@bluematt.me>
Sun, 16 Jun 2024 00:52:37 +0000 (00:52 +0000)
committerMatt Corallo <git@bluematt.me>
Sun, 16 Jun 2024 00:52:37 +0000 (00:52 +0000)
commitb020591a18897c4fd8043e872606d9705558c8f7
tree826ec8ace859bcf217cc024694650e4b7fc219fd
parent9974cc5c593bfac1bcdd51e572f53bf89dc8f6a2
Correct three bugs in the rate limiter.

 * We should be dividing by the packet size, not multiplying, as we
   should be crediting fewer packets for larger packets, not more.
 * We should handle the packet count underflowing as it may have
   been some time since the last packet.
 * The bucket limit needs to be `<= 0xd00`, not `< 0xf00`, as
   `0xf00` + `0x100` overflows our counter and resets the bucket.
xdp.c