GoAhead 4

spot-light

I’m happy to announce that GoAhead 4 is now available for immediate Download.

GoAhead 4 is an evolutionary upgrade for all GoAhead 3.X. It preserves application compatibility while strengthening API contracts.

All users are encouraged to always update to the latest release and to upgrade now to GoAhead 4.

Enhancements and Fixes

GoAhead 4 has several important enhancements:

Strengthen API contracts

To make the code more robust against coding errors and accidental or malicious modification, all relevant APIs that use read-only strings have had their signatures changed from “char” to “const char”. The equivalent typedef “cchar *” is used.

This should not impact user code as the underlying intent of the APIs remains the same. This will help catch compile-time code errors in GoAhead and application code that permits modification to strings that are meant to be read-only.

Visual Studio 2017 Support

This update adds support to find the VS 2017 command line tools in their new locations. The stdbool.h header is now explicitly included to resolve the bool type definition.

Cleanup Old Code

While writing new code is fun, nothing is as satisfying as deleting old code!

Previously deprecated APIs have been removed. These include:

New Runtime Limits

A configurable limit has been added for the number of CGI args. This is set in main.me by the limitCgiArgs property.

Important Fixes

A potential DoS was possible due to malformed upload requests that omit the required “name” field. This fix correctly rejects such requests. There is also a fix for a potential invalid memory access reference in the upload handler.

Documentation updates

Some minor documentation updates.

Fixes

Download the new release at:

Comments

{{comment.name}} said ...

{{comment.message}}
{{comment.date}}

Make a Comment

Thank You!

Messages are moderated.

Your message will be posted shortly.

Sorry

Your message could not be processed at this time.

Error: {{error}}

Please retry later.

OK