6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21 /*
22 * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
23 * Use is subject to license terms.
24 */
25
26 #pragma ident "%Z%%M% %I% %E% SMI"
27
28 #include <sys/types.h>
29 #include <sys/param.h>
30 #include <sys/sysmacros.h>
31 #include <sys/systm.h>
32 #include <sys/debug.h>
33 #include <sys/kmem.h>
34 #include <sys/sunddi.h>
35 #include <sys/byteorder.h>
36 #include <sys/errno.h>
37 #include <sys/modctl.h>
38 #include <sys/u8_textprep.h>
39 #include <sys/kiconv.h>
40 #include <sys/kiconv_cck_common.h>
41 #include <sys/kiconv_tc.h>
42 #include <sys/kiconv_big5_utf8.h>
43 #include <sys/kiconv_euctw_utf8.h>
44 #include <sys/kiconv_hkscs_utf8.h>
45 #include <sys/kiconv_cp950hkscs_utf8.h>
46 #include <sys/kiconv_utf8_big5.h>
47 #include <sys/kiconv_utf8_euctw.h>
1070 };
1071
1072 static kiconv_module_info_t kiconv_tc_info = {
1073 "kiconv_tc", /* module name */
1074 sizeof (kiconv_tc_ops_tbl) / sizeof (kiconv_tc_ops_tbl[0]),
1075 kiconv_tc_ops_tbl,
1076 0,
1077 NULL,
1078 NULL,
1079 0
1080 };
1081
1082 static struct modlkiconv modlkiconv_tc = {
1083 &mod_kiconvops,
1084 "kiconv Traditional Chinese module 1.0",
1085 &kiconv_tc_info
1086 };
1087
1088 static struct modlinkage modlinkage = {
1089 MODREV_1,
1090 (void *)&modlkiconv_tc,
1091 NULL
1092 };
1093
1094 int
1095 _init(void)
1096 {
1097 int err;
1098
1099 err = mod_install(&modlinkage);
1100 if (err)
1101 cmn_err(CE_WARN, "kiconv_tc: failed to load kernel module");
1102
1103 return (err);
1104 }
1105
1106 int
1107 _fini(void)
1108 {
1109 int err;
1110
1111 /*
|
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21 /*
22 * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
23 * Use is subject to license terms.
24 */
25
26 #include <sys/types.h>
27 #include <sys/param.h>
28 #include <sys/sysmacros.h>
29 #include <sys/systm.h>
30 #include <sys/debug.h>
31 #include <sys/kmem.h>
32 #include <sys/sunddi.h>
33 #include <sys/byteorder.h>
34 #include <sys/errno.h>
35 #include <sys/modctl.h>
36 #include <sys/u8_textprep.h>
37 #include <sys/kiconv.h>
38 #include <sys/kiconv_cck_common.h>
39 #include <sys/kiconv_tc.h>
40 #include <sys/kiconv_big5_utf8.h>
41 #include <sys/kiconv_euctw_utf8.h>
42 #include <sys/kiconv_hkscs_utf8.h>
43 #include <sys/kiconv_cp950hkscs_utf8.h>
44 #include <sys/kiconv_utf8_big5.h>
45 #include <sys/kiconv_utf8_euctw.h>
1068 };
1069
1070 static kiconv_module_info_t kiconv_tc_info = {
1071 "kiconv_tc", /* module name */
1072 sizeof (kiconv_tc_ops_tbl) / sizeof (kiconv_tc_ops_tbl[0]),
1073 kiconv_tc_ops_tbl,
1074 0,
1075 NULL,
1076 NULL,
1077 0
1078 };
1079
1080 static struct modlkiconv modlkiconv_tc = {
1081 &mod_kiconvops,
1082 "kiconv Traditional Chinese module 1.0",
1083 &kiconv_tc_info
1084 };
1085
1086 static struct modlinkage modlinkage = {
1087 MODREV_1,
1088 { (void *)&modlkiconv_tc, NULL }
1089 };
1090
1091 int
1092 _init(void)
1093 {
1094 int err;
1095
1096 err = mod_install(&modlinkage);
1097 if (err)
1098 cmn_err(CE_WARN, "kiconv_tc: failed to load kernel module");
1099
1100 return (err);
1101 }
1102
1103 int
1104 _fini(void)
1105 {
1106 int err;
1107
1108 /*
|