iconv_open - codeset conversion allocation function
#include <iconv.h>
iconv_t iconv_open(const char *tocode, const char *fromcode);
The iconv_open() function returns a conversion descriptor that describes a conversion from the codeset specified by the string pointed to by the fromcode argument to the codeset specified by the string pointed to by the tocode argument. For state-dependent encodings, the conversion descriptor will be in a codeset-dependent initial shift state, ready for immediate use with iconv().
Settings of fromcode and tocode and their permitted combinations are implementation-dependent.
A conversion descriptor remains valid in a process until that process closes it.
If a file descriptor is used to implement conversion descriptors, the FD_CLOEXEC flag will be set; see <fcntl.h>.
Upon successful completion, iconv_open() returns a conversion descriptor for use on subsequent calls to iconv(). Otherwise iconv_open() returns (iconv_t)-1 and sets errno to indicate the error.
The iconv_open() function may fail if:
- [EMFILE]
- {OPEN_MAX} files descriptors are currently open in the calling process.
- [ENFILE]
- Too many files are currently open in the system.
- [ENOMEM]
- Insufficient storage space is available.
- [EINVAL]
- The conversion specified by fromcode and tocode is not supported by the implementation.
None.
Some implementations of iconv_open() use malloc() to allocate space for internal buffer areas. The iconv_open() function may fail if there is insufficient storage space to accommodate these buffers.
Portable applications must assume that conversion descriptors are not valid after a call to one of the exec functions.
None.
iconv()
, iconv_close(), <iconv.h>.
Derived from the HP-UX manual.