A string, may be NULL
Pointer to end of escaped_string, may be NULL
An optional string of illegal characters not to be allowed, may be NULL
an unescaped version of escaped_string or NULL on error. The returned string should be freed when no longer needed. As a special case if NULL is given for escaped_string, this function will return NULL.
2.16
Unescapes a segment of an escaped string.
If any of the characters in illegal_characters or the character zero appears as an escaped character in escaped_string then that is an error and NULL will be returned. This is useful it you want to avoid for instance having a slash being expanded in an escaped path element, which might confuse pathname handling.