1 .\" Copyright (c) 2009 Gabor Kovesdan <gabor@FreeBSD.org>
2 .\" All rights reserved.
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\" notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\" notice, this list of conditions and the following disclaimer in the
11 .\" documentation and/or other materials provided with the distribution.
13 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 .\" Portions of this text are reprinted and reproduced in electronic form
26 .\" from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
27 .\" Portable Operating System Interface (POSIX), The Open Group Base
28 .\" Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
29 .\" Electrical and Electronics Engineers, Inc and The Open Group. In the
30 .\" event of any discrepancy between this version and the original IEEE and
31 .\" The Open Group Standard, the original IEEE and The Open Group Standard is
32 .\" the referee document. The original Standard can be obtained online at
33 .\" http://www.opengroup.org/unix/online.html.
40 .Nd controlling and diagnostical facility for
47 .Fn iconvctl "iconv_t cd" "int request" "void *argument"
51 function can retrieve or set specific conversion
54 conversion descriptor.
57 parameter specifies the operation to accomplish and
59 is an operation-specific argument.
61 The possible operations are the following:
62 .Bl -tag -width indent
68 variable, which is set to 1 if the encoding is trivial one, i.e.
69 the input and output encodings are the same.
70 Otherwise, the variable will be 0.
71 .It ICONV_GET_TRANSLITERATE
72 Determines if transliteration is enabled.
73 The answer is stored in
77 It will be set to 1 if this feature is enabled or set to 0 otherwise.
78 .It ICONV_SET_TRANSLITERATE
79 Enables transliteration if
83 set to 1 or disables it if
86 .It ICONV_GET_DISCARD_ILSEQ
87 Determines if illegal sequences are discarded or not.
88 The answer is stored in
92 It will be set to 1 if this feature is enabled or set to 0 otherwise.
93 .It ICONV_SET_DISCARD_ILSEQ
94 Sets whether illegal sequences are discarded or not.
98 set to 1 or disables it if
102 Sets callback functions, which will be called back after successful
104 The callback functions are stored in a
105 .Ft struct iconv_hooks
106 variable, which is passed to
111 .It ICONV_GET_ILSEQ_INVALID
112 Determines if a character in the input buffer that is valid,
113 but for which an identical character does not exist in the target
117 The answer is stored in
121 It will be set to 1 if this feature is enabled or set to 0 otherwise.
122 .It ICONV_SET_ILSEQ_INVALID
123 Sets whether a character in the input buffer that is valid,
124 but for which an identical character does not exist in the target
132 is set to 1 it will be enabled,
135 is set to 0 it will be disabled.
137 .\" XXX: fallbacks are unimplemented and trying to set them will always
138 .\" return EOPNOTSUPP but definitions are provided for source-level
140 .\".It ICONV_SET_FALLBACKS
141 .\"Sets callback functions, which will be called back after failed
143 .\"The callback functions are stored in a
144 .\".Ft struct iconv_fallbacks
145 .\"variable, which is passed to
151 Upon successful completion
154 Otherwise, \-1 is returned and errno is set to
155 specify the kind of error.
159 function may cause an error in the following cases:
162 Unknown or unimplemented operation.
164 The conversion descriptor specified by
174 facility is a non-standard extension, which appeared in
175 the GNU implementation and was adopted in
177 for compatibility's sake.
179 This manual page was written by
180 .An Gabor Kovesdan Aq Mt gabor@FreeBSD.org .
182 Transliteration is enabled in this implementation by default, so it
183 is impossible by design to turn it off.
184 Accordingly, trying to turn it off will always fail and \-1 will be
186 Getting the transliteration state will always succeed and indicate
187 that it is turned on, though.