QUICLayer is a meaty abstraction that does a bunch of hidden stuff behind the scenes to maintain a QUIC connection to the egress server. We need a QUICLayer.Close function that cleans up all the resources and tidies up any dangling goroutines.
This is necessary now that we're integrating Broflake as a transport in Flashlight, because Flashlight's balancer must be trusted to create and destroy Broflake instances and any associated end-to-end connections at its own discretion.
QUICLayer
is a meaty abstraction that does a bunch of hidden stuff behind the scenes to maintain a QUIC connection to the egress server. We need aQUICLayer.Close
function that cleans up all the resources and tidies up any dangling goroutines.This is necessary now that we're integrating Broflake as a transport in Flashlight, because Flashlight's
balancer
must be trusted to create and destroy Broflake instances and any associated end-to-end connections at its own discretion.