These changes to the functions epicsStrnRawFromEscaped() and
epicsStrnEscapedFromRaw() were prompted by the addition of JSON5
support to the dbStatic parser.
* \0 now represents a zero byte
* Unprintable characters are now escaped in hex
Tests for the octal escapes have been removed.
\x only takes 2 hex digits now, and the octal parser ignores a 3rd
digit if it would take the value over 0xff:
"\400" => ' ' then '0'
"\x088" => '\b' then '8'
With additional tests.
In some cases the license-identification header was missing,
so I added that as well. Replaced the remaining headers that
specifically identified "Versions 3.13.7 and higher".
Makefiles and the build system were deliberately excluded.
For linux, enable softIoc to find .dbd relative to the executable
location.
The same could be done for other targets
*bsd
may have symlink /proc/curproc/file
fallback to sysctl() with KERN_PROC_PATHNAME
solaris
getexecname()
mac
_NSGetExecutablePath()
WIN32
GetModuleFileName(NULL)
others
out of luck...