Tags: TechnikEmpire/CitadelCore.Windows
Tags
Fixes Inherts the following changes from the base engine update: Ensure that we copy response headers only once. It appears that response headers related to content can vanish after we've read the content stream, so to avoid this, we read just once on initial response. Fixes an issue where the Headers property of HttpMessageInfo objects can be null, which causes null reference exceptions when calling various methods. Changed to always initialize this property with a valid reference, and to perform null checks when accessing internally.
Fixes, upgrades Upgrades core deps. Enables HTTP/2 on the proxy front-end, but backend fulfillment is still HTTP/1.x. Strips all compression methods from the front end. Configures Kestrel for optimal throughput. Ensures that headers are replaced if they exist. This ensures that client changes always apply. Removes arbitrary limits, such as max length on request strings. Fixes an issue where ASP.NET Core incorrectly decodes some URL's, which causes some things to randomly fail as bad requests. Google maps is an example of what suffered in previous versions. Now builds out the full URL based on the raw values sent by the browser. This applies to websockets as well. Adds the ability to inspect individual websocket messages. Fixes an issue where the whole body inspection callback was invoked on websockets even if not requested. Exempts well-defined windows-exclusive ports from packet interception. Everything is now extremely fast, and stable. No more public changes or additions will be made.
Inherits fixes from engine From engine upgrade: - Changes pub API by adding the source message info object to the replay callback handler. This is for the sake of connection tracking outside the engine. - Changed URL retrieval to be non-encoded. I think this could cause issues as the underlying mechanics in .NET might (maybe?) double-encode our URL's without this. - Fixed an issue with websockets. Outside: Changed QUIC drop handle to only look at outbound UDP only so we can entirely ignore inbound stream.
PreviousNext