Update: numerous fixes and additions, mostly string related
Not sure how I let this one get through, but add missing return statement in a couple of private string functions where it is missing.
In retrospect, it seems that I was overzealous with some of the parameter checks.
Redo the parameter checks to not be as sting on string length and buffer size ranges.
Instead, just return that there is nothing to do instead of erroring out.
Add string terminate functions.
These functions are designed to guarantee that an end of string exists at the end of some dynamic string.
Add functions for appending one or more arguments to the arguments array for the execute functions.
This functionality is common enough (used extensively by firewall and soon to be used by fake).
Support providing an array of arguments to append.
This greatly simplifies long-winded code.
Minor fixes and cleanups in the execute functions:
- Add missing parameter checks.
- Rename results to result to be more accurate.