The Single UNIX ® Specification, Version 2
Copyright © 1997 The Open Group

 NAME

iconv_open - codeset conversion allocation function

 SYNOPSIS



#include <iconv.h>

iconv_t iconv_open(const char *tocode, const char *fromcode);

 DESCRIPTION

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

 RETURN VALUE

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.

 ERRORS

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.

 EXAMPLES

None.

 APPLICATION USAGE

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.

 FUTURE DIRECTIONS

None.

 SEE ALSO

iconv(), iconv_close(), <iconv.h>.

DERIVATION

Derived from the HP-UX manual.

UNIX ® is a registered Trademark of The Open Group.
Copyright © 1997 The Open Group
[ Main Index | XSH | XCU | XBD | XCURSES | XNS ]