packages icon



 ICONVCTL(3)                         GNU                         ICONVCTL(3)
                              December 15, 2024



 NAME
      iconvctl - control iconv behavior

 SYNOPSIS
      #include <iconv.h>

      int iconvctl (iconv_t cd , int request, void * argument

 DESCRIPTION
      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.

 REQUEST VALUES
      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_INVALID
           argument should be an int * which will receive 1 if "discard
           invalid multibyte sequence from the input and continue" is
           enabled in the conversion, or 0 otherwise.

      ICONV_SET_DISCARD_INVALID
           argument should be a const int *, pointing to an int value.  A
           non-zero value is used to enable "discard invalid multibyte
           sequence from the input and continue" in the conversion. A zero
           value disables it.

      ICONV_GET_DISCARD_NON_IDENTICAL
           argument should be an int * which will receive 1 if "discard
           character that cannot be represented in the target character set
           and continue" is enabled in the conversion, or 0 otherwise.

      ICONV_SET_DISCARD_NON_IDENTICAL
           argument should be a const int *, pointing to an int value.  A
           non-zero value is used to enable "discard character that cannot



                                    - 1 -      Formatted:  December 19, 2024






 ICONVCTL(3)                         GNU                         ICONVCTL(3)
                              December 15, 2024



           be represented in the target character set and continue" in the
           conversion. A zero value disables it.

      ICONV_GET_DISCARD_ILSEQ
           argument should be an int * which will receive 1 if both
           "discard" behaviours are 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 both "discard" behaviours in the
           conversion.  A zero value disables them.

      ICONV_GET_FROM_SURFACE
           argument should be an unsigned int * which will receive the
           from-side (input side) surface of the conversion.

      ICONV_SET_FROM_SURFACE
           argument should be a const unsigned int *, pointing to an
           unsigned int value.  This value is installed as the from-side
           (input side) surface of the conversion.  The value is a bit mask.
           Zero denotes no surface.  The value ICONV_SURFACE_EBCDIC_ZOS_UNIX
           has an effect on EBCDIC encodings: The EBCDIC newline 0x15 will
           get mapped to LF instead of NEL.

      ICONV_GET_TO_SURFACE
           argument should be an unsigned int * which will receive the to-
           side (output side) surface of the conversion.

      ICONV_SET_TO_SURFACE
           argument should be a const unsigned int *, pointing to an
           unsigned int value.  This value is installed as the to-side
           (output side) surface of the conversion.  The value is a bit
           mask.  Zero denotes no surface.  The value
           ICONV_SURFACE_EBCDIC_ZOS_UNIX has an effect on EBCDIC encodings:
           LF, instead of NEL, will get mapped to the EBCDIC newline 0x15.

 RETURN VALUE
      The iconvctl function returns 0 if it succeeds. In case of error, it
      sets errno and returns -1.

 ERRORS
      The following errors can occur, among others:

      EINVAL
           The request is invalid.

 CONFORMING TO
      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).



                                    - 2 -      Formatted:  December 19, 2024






 ICONVCTL(3)                         GNU                         ICONVCTL(3)
                              December 15, 2024



 SEE ALSO
      iconv_open(3) iconv(3)




















































                                    - 3 -      Formatted:  December 19, 2024