Specifies a range of characters within a string.
The range includes all characters from first
to one before afterLast. So if both are
non-NULL the difference is the length of the text range.
Performs reference resolution as described in
section 5.2.2 of RFC 3986.
Uses default libc-based memory manager.
NOTE: On success you have to call uriFreeUriMembersA on \p absoluteDest manually later.
Performs reference resolution as described in
section 5.2.2 of RFC 3986.
Uses default libc-based memory manager.
NOTE: On success you have to call uriFreeUriMembersA on \p absoluteDest manually later.
Performs reference resolution as described in
section 5.2.2 of RFC 3986.
NOTE: On success you have to call uriFreeUriMembersMmA on \p absoluteDest manually later.
Converts a query list structure back to a query string.
The composed string does not start with ‘?’,
on the way ’ ’ is converted to ‘+’ and line breaks are
normalized to “%0D%0A”.
Calculates the number of characters needed to store the
string representation of the given query list excluding the
terminator. It is assumed that line breaks are will be
normalized to “%0D%0A”.
Converts a query list structure back to a query string.
Memory for this string is allocated internally.
The composed string does not start with ‘?’,
on the way ’ ’ is converted to ‘+’ and line breaks are
normalized to “%0D%0A”.
Uses default libc-based memory manager.
Converts a query list structure back to a query string.
Memory for this string is allocated internally.
The composed string does not start with ‘?’.
Uses default libc-based memory manager.
Constructs a query list from the raw query string of a given URI.
On the way ‘+’ is converted back to ’ ’, line breaks are not modified.
Uses default libc-based memory manager.
Percent-encodes all unreserved characters from the input string and
writes the encoded version to the output string.
Be sure to allocate 3 times the space of the input buffer for
the output buffer for normalizeBreaks == URI_FALSE and 6 times
the space for normalizeBreaks == URI_TRUE
(since e.g. “\x0d” becomes “%0D%0A” in that case)
Percent-encodes all unreserved characters from the input string and
writes the encoded version to the output string.
Be sure to allocate 3 times the space of the input buffer for
the output buffer for normalizeBreaks == URI_FALSE and 6 times
the space for normalizeBreaks == URI_TRUE
(since e.g. “\x0d” becomes “%0D%0A” in that case)
Frees all memory associated with the members
of the %URI structure. Note that the structure
itself is not freed, only its members.
Uses default libc-based memory manager.
Makes the %URI hold copies of strings so that it no longer depends
on the original %URI string. If the %URI is already owner of copies,
this function returns URI_TRUE and does not modify the %URI further.
Makes the %URI hold copies of strings so that it no longer depends
on the original %URI string. If the %URI is already owner of copies,
this function returns URI_TRUE and does not modify the %URI further.
Tries to make a relative %URI (a reference) from an
absolute %URI and a given base %URI. The resulting %URI is going to be
relative if the absolute %URI and base %UI share both scheme and authority.
If that is not the case, the result will still be
an absolute URI (with scheme part if necessary).
Uses default libc-based memory manager.
NOTE: On success you have to call uriFreeUriMembersA on
\p dest manually later.
Tries to make a relative %URI (a reference) from an
absolute %URI and a given base %URI. The resulting %URI is going to be
relative if the absolute %URI and base %UI share both scheme and authority.
If that is not the case, the result will still be
an absolute URI (with scheme part if necessary).
NOTE: On success you have to call uriFreeUriMembersMmA on
\p dest manually later.
Unescapes percent-encoded groups in a given string.
E.g. “%20” will become “ “. Unescaping is done in place.
The return value will be point to the new position
of the terminating zero. Use this value to get the new
length of the string. NULL is only returned if inout
is NULL.
Unescapes percent-encoded groups in a given string.
E.g. “%20” will become “ “. Unescaping is done in place.
The return value will be point to the new position
of the terminating zero. Use this value to get the new
length of the string. NULL is only returned if inout
is NULL.
Converts a Unix filename to a %URI string.
The destination buffer must be large enough to hold 7 + 3 * len(filename) + 1
characters in case of an absolute filename or 3 * len(filename) + 1 in case
of a relative filename.
Extracts a Unix filename from a %URI string.
The destination buffer must be large enough to hold len(uriString) + 1 - 7
characters in case of an absolute %URI or len(uriString) + 1 in case
of a relative %URI.
Extracts a Windows filename from a %URI string.
The destination buffer must be large enough to hold len(uriString) + 1 - 5
characters in case of an absolute %URI or len(uriString) + 1 in case
of a relative %URI.
Converts a Windows filename to a %URI string.
The destination buffer must be large enough to hold 8 + 3 * len(filename) + 1
characters in case of an absolute filename or 3 * len(filename) + 1 in case
of a relative filename.
Specifies a range of characters within a string.
The range includes all characters from first
to one before afterLast. So if both are
non-NULL the difference is the length of the text range.