public async ValueTask CreateListenerAsync() { QuicLog.ConnectionListenerStarting(_log, _quicListenerOptions.ListenEndPoint); try { _listener = await QuicListener.ListenAsync(_quicListenerOptions); } catch (QuicException ex) when(ex.QuicError == QuicError.AddressInUse) { throw new AddressInUseException(ex.Message, ex); } // EndPoint could be configured with an ephemeral port of 0. // Listener endpoint will resolve an ephemeral port, e.g. 127.0.0.1:0, into the actual port // so we need to update the public listener endpoint property. EndPoint = _listener.LocalEndPoint; }