Skip to content

Releases: TechnikEmpire/CitadelCore

Version 4.2.5

17 Dec 21:14
Compare
Choose a tag to compare
  • 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.

Version 4.2.3

11 Dec 20:54
Compare
Choose a tag to compare
  • 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.

Version 4.0.1

16 Nov 22:43
Compare
Choose a tag to compare
  • 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.

Version 3.7.4

09 Nov 23:55
Compare
Choose a tag to compare
  • Now uses own websocket fork.
  • Bypasses restrictions on GET requests to enable technically-illegal headers that everyone uses anyway, including Microsoft.

Version 3.7.2

09 Nov 16:11
Compare
Choose a tag to compare
  • Fixes an issue where websocket connections were not being handled correctly.

Version 3.7.0

07 Nov 12:12
Compare
Choose a tag to compare
  • Now dynamically handles HTTPS and HTTP streams on a single bound port. Clients no longer need to guess if a non-standard port connection is HTTP or HTTPS, the engine will figure this out itself.

Version 3.6.2

02 Nov 10:18
Compare
Choose a tag to compare
  • Fixes an issue where accessing content-type header could cause a null-ref exception.

Version 3.6.1

02 Nov 09:37
Compare
Choose a tag to compare
  • Fixes an issue where the convenience content-type property of HttpMessageInfo was not being set.

Version 3.6.0

02 Nov 08:31
Compare
Choose a tag to compare
  • Adds the ability for users to fulfill HTTP requests themselves.
  • Adds the ability for users to supply their own HttpClient's on a per-request basis to fulfill requests with.

Version 3.4.1

01 Nov 02:48
Compare
Choose a tag to compare
  • Adds the ability to exclude headers from being excluded. Normally forbidden headers are stripped, but now the user can control this.

  • Adds the ability to configure the proxy server in regards to dropping external proxy packets (originating from another proxy on the local machine).

  • Adds the ability to provide a custom message handler for all proxy server upstream connections. This enables you to define an upstream proxy, etc.

  • Fixes an issue where the host header is not set correctly on modification.

  • Purges singlestons from the source code. Handlers are now instance members of proxy server classes via hidden IStartup instances.