Summary: Cleaned up extra semicolons for compatibility with other projects enforcing the flag, included flag in build
Reviewed By: lnicco, JunqiWang
Differential Revision: D21794945
fbshipit-source-id: ae2ee637aadeef35a99d89f9b8deaa2e7d636ed7
Summary:
This introduces a rate limit to new connections created by a worker.
Right now it will simply send a VN, but eventually this will only issue a RETRY for unverified initials.
Reviewed By: udippant
Differential Revision: D21614905
fbshipit-source-id: 1832fbdad525c53fb1cb810aa9d7bae868c267d6
Summary: generic API for setting socket Options on both client and server
Reviewed By: yangchi
Differential Revision: D19763928
fbshipit-source-id: 7078eb8738aebc192bbace2498aaf9489526efff
Summary: no more surprises in upper layer
Reviewed By: mjoras
Differential Revision: D19976510
fbshipit-source-id: 3487e9aa2cb28d7bc748f13bc2bbc393216b4a8a
Summary:
This is a bug where each worker can potentially bind to different address if no
address is supplied
Reviewed By: mjoras
Differential Revision: D19533888
fbshipit-source-id: 6f1258f09564d44ebb9843789d441c1fdecbdacc
Summary:
The async nature of the set up results in flakiness in unit tests.
For example, in QuicServerTest::TakeoverTest, clients send packets to server
right after setup, such as start / stop packetForwarding or pauseReads()
On the other hand, making them synchronous should be fine, since these are
called only during startup
Reviewed By: yangchi
Differential Revision: D19343423
fbshipit-source-id: 43cc169983d7f764b74c87f2188a9f8372007d84
Summary:
If we are on the evb, process the packet on the evb immediately.
Previously evb would schedule a runInLoop in another event loop.
This saves 1 event loop to be able to process a packet in the common
case.
Reviewed By: mjoras
Differential Revision: D18897493
fbshipit-source-id: 91c073ae0aef58e999f001e64f13612c3788869f
Summary:
This adds checks for forwarded data on all the possible branches that lead to
forwarding of packets to another process
Reviewed By: mjoras
Differential Revision: D18416971
fbshipit-source-id: 22dc3fd63de615904a411f90164a138bf0ef56e0
Summary:
Currently this check is will fail if worker evb isn't running yet. I'm
changing it so that if worker evb isn't running, just let it pass.
Reviewed By: mjoras
Differential Revision: D16668689
fbshipit-source-id: ad0873f0eb1c2824d3ea143b9f08f3efdb890a45
Summary: Enable/disable partial reliability in transport settings of a QUIC server run-time.
Reviewed By: yangchi
Differential Revision: D16135672
fbshipit-source-id: 93c1175263ec03dc707764520ee73c1c2fd449c9
Summary:
I've added in some plumbing to enable us to override transport settings based on a specific `(datacenter, vip, server port, client prefix)` tuple.
+-------------------------------------+
| HTTPRevProxyService |
+-------------------------------------+
| Get the vip name, the datacenter,
| and the server port. Create a lambda that
| takes in the client IP address and applies
V overrides to the transport settings.
+-------------------------------------+
| ProxygenHQServer |
+-------------------------------------+
|
| Pass on the lambda
|
V
+-------------------------------------+
| QuicServer |
+-------------------------------------+
|
| Pass on the lambda
|
V
+-------------------------------------+
| QuicServerWorker |
+-------------------------------------+
| Call the lambda (passing in the
| client IP address) when we create
| a QuicSocket, and set the transport
V settings apprpriately
+-------------------------------------+
| QuicServerTransport |
+-------------------------------------+
Reviewed By: udippant
Differential Revision: D15227915
fbshipit-source-id: 23c94aa558b381eae13f98ae06c6a97125c1a071
Summary: Replace hard coded stateless reset token with a token from the stateless reset token generator.
Reviewed By: yangchi
Differential Revision: D15481858
fbshipit-source-id: 30c96843c38c616600466b2fabb6defd5fcc5799