pub(crate) async fn handle_provider_request(
    request: Result<ProviderRequest, Error>,
    datagram_requests: &mut SelectAll<Tagged<Rc<RefCell<DatagramSocket>>, SynchronousDatagramSocketRequestStream>>,
    stream_requests: &mut SelectAll<Tagged<Rc<RefCell<StreamSocket>>, StreamSocketRequestStream>>
) -> Result<(), Error>