iconvctl - control iconv behavior |
#include <iconv.h> int iconvctl (iconv_t cd , int request, void * argument); |
The argument cd must be a conversion descriptor created using the function iconv_open. |
iconvctl queries or adjusts the behavior of the iconv function, when invoked with the specified conversion descriptor, depending on the request value. |
The following are permissible values for the request parameter. |
ICONV_TRIVIALP |
argument should be an int * which will receive 1 if the conversion is trivial, or 0 otherwise. |
ICONV_GET_TRANSLITERATE |
argument should be an int * which will receive 1 if transliteration is enabled in the conversion, or 0 otherwise. |
ICONV_SET_TRANSLITERATE |
argument should be a const int *, pointing to an int value. A non-zero value is used to enable transliteration in the conversion. A zero value disables it. |
ICONV_GET_DISCARD_ILSEQ |
argument should be an int * which will receive 1 if "illegal sequence discard and continue" is enabled in the conversion, or 0 otherwise. |
ICONV_SET_DISCARD_ILSEQ |
argument should be a const int *, pointing to an int value. A non-zero value is used to enable "illegal sequence discard and continue" in the conversion. A zero value disables it. |
The iconvctl function returns 0 if it succeeds. In case of error, it sets errno and returns -1. |
The following errors can occur, among others: |
EINVAL |
The request is invalid. |
This function is implemented only in GNU libiconv and not in other iconv implementations. It is not backed by a standard. You can test for its presence through (_LIBICONV_VERSION >= 0x0108). |
iconv_open(3), iconv(3) |