ne_strparam - Man Page

HTTP extended parameter value encoding


#include <ne_string.h>

char *ne_strparam(const char *charset, const char *lang, const char *value);


The ne_strparam function can be used to encode an extended parameter value for an HTTP header, as defined in RFC 5987. The function takes as arguments the value to encode, using a given MIME charset character set, and lang language tag. The extended parameter encoding is used in HTTP protocol specifications to allow easily embedding special characters (such as quote marks, separators or non-ASCII) in header values.

In accordance with RFC 5987, the charset argument must be either "UTF-8" or "IS0-8859-1", but the lang argument may be NULL.

Return Value

The return value is either:


if the value parameter is a "regular parameter" and does not need extended encoding


the encoding of the input value as an extended parameter as a NUL-terminated, malloc-allocated string

See Also


Joe Orton <>



12 January 2022 neon 0.32.2 neon API reference