summaryrefslogtreecommitdiff
path: root/usr/src/lib/iconv_modules/utf-8/common/binarytables/srcs/UTF-8+IBM-855.src
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/lib/iconv_modules/utf-8/common/binarytables/srcs/UTF-8+IBM-855.src')
-rw-r--r--usr/src/lib/iconv_modules/utf-8/common/binarytables/srcs/UTF-8+IBM-855.src366
1 files changed, 366 insertions, 0 deletions
diff --git a/usr/src/lib/iconv_modules/utf-8/common/binarytables/srcs/UTF-8+IBM-855.src b/usr/src/lib/iconv_modules/utf-8/common/binarytables/srcs/UTF-8+IBM-855.src
new file mode 100644
index 0000000000..9abe778965
--- /dev/null
+++ b/usr/src/lib/iconv_modules/utf-8/common/binarytables/srcs/UTF-8+IBM-855.src
@@ -0,0 +1,366 @@
+/*
+ * CDDL HEADER START
+ *
+ * The contents of this file are subject to the terms of the
+ * Common Development and Distribution License (the "License").
+ * You may not use this file except in compliance with the License.
+ *
+ * You can obtain a copy of the license at src/OPENSOLARIS.LICENSE
+ * or http://www.opensolaris.org/os/licensing.
+ * See the License for the specific language governing permissions
+ * and limitations under the License.
+ *
+ * When distributing Covered Code, include this CDDL HEADER in each
+ * file and include the License file at src/OPENSOLARIS.LICENSE.
+ * If applicable, add the following below this CDDL HEADER, with the
+ * fields enclosed by brackets "[]" replaced with your own identifying
+ * information: Portions Copyright [yyyy] [name of copyright owner]
+ *
+ * CDDL HEADER END
+ */
+/*
+ * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+ * Use is subject to license terms.
+ */
+/*
+ * COPYRIGHT AND PERMISSION NOTICE
+ *
+ * Copyright (c) 1991-2005 Unicode, Inc. All rights reserved. Distributed
+ * under the Terms of Use in http://www.unicode.org/copyright.html.
+ *
+ * This file has been modified by Sun Microsystems, Inc.
+ *
+ */
+
+#include <sys/errno.h>
+utf8%system {
+ direction {
+ @condition {
+ inputsize >= 1;
+ @between 0X0...0X7F;
+ } @map {
+ 0x00 0x00 // U+0000
+ 0x01 0x01 // U+0001
+ 0x02 0x02 // U+0002
+ 0x03 0x03 // U+0003
+ 0x04 0x04 // U+0004
+ 0x05 0x05 // U+0005
+ 0x06 0x06 // U+0006
+ 0x07 0x07 // U+0007
+ 0x08 0x08 // U+0008
+ 0x09 0x09 // U+0009
+ 0x0A 0x0A // U+000a
+ 0x0B 0x0B // U+000b
+ 0x0C 0x0C // U+000c
+ 0x0D 0x0D // U+000d
+ 0x0E 0x0E // U+000e
+ 0x0F 0x0F // U+000f
+ 0x10 0x10 // U+0010
+ 0x11 0x11 // U+0011
+ 0x12 0x12 // U+0012
+ 0x13 0x13 // U+0013
+ 0x14 0x14 // U+0014
+ 0x15 0x15 // U+0015
+ 0x16 0x16 // U+0016
+ 0x17 0x17 // U+0017
+ 0x18 0x18 // U+0018
+ 0x19 0x19 // U+0019
+ 0x1A 0x7F // U+001a
+ 0x1B 0x1B // U+001b
+ 0x1C 0x1A // U+001c
+ 0x1D 0x1D // U+001d
+ 0x1E 0x1E // U+001e
+ 0x1F 0x1F // U+001f
+ 0x20 0x20 // U+0020
+ 0x21 0x21 // U+0021
+ 0x22 0x22 // U+0022
+ 0x23 0x23 // U+0023
+ 0x24 0x24 // U+0024
+ 0x25 0x25 // U+0025
+ 0x26 0x26 // U+0026
+ 0x27 0x27 // U+0027
+ 0x28 0x28 // U+0028
+ 0x29 0x29 // U+0029
+ 0x2A 0x2A // U+002a
+ 0x2B 0x2B // U+002b
+ 0x2C 0x2C // U+002c
+ 0x2D 0x2D // U+002d
+ 0x2E 0x2E // U+002e
+ 0x2F 0x2F // U+002f
+ 0x30 0x30 // U+0030
+ 0x31 0x31 // U+0031
+ 0x32 0x32 // U+0032
+ 0x33 0x33 // U+0033
+ 0x34 0x34 // U+0034
+ 0x35 0x35 // U+0035
+ 0x36 0x36 // U+0036
+ 0x37 0x37 // U+0037
+ 0x38 0x38 // U+0038
+ 0x39 0x39 // U+0039
+ 0x3A 0x3A // U+003a
+ 0x3B 0x3B // U+003b
+ 0x3C 0x3C // U+003c
+ 0x3D 0x3D // U+003d
+ 0x3E 0x3E // U+003e
+ 0x3F 0x3F // U+003f
+ 0x40 0x40 // U+0040
+ 0x41 0x41 // U+0041
+ 0x42 0x42 // U+0042
+ 0x43 0x43 // U+0043
+ 0x44 0x44 // U+0044
+ 0x45 0x45 // U+0045
+ 0x46 0x46 // U+0046
+ 0x47 0x47 // U+0047
+ 0x48 0x48 // U+0048
+ 0x49 0x49 // U+0049
+ 0x4A 0x4A // U+004a
+ 0x4B 0x4B // U+004b
+ 0x4C 0x4C // U+004c
+ 0x4D 0x4D // U+004d
+ 0x4E 0x4E // U+004e
+ 0x4F 0x4F // U+004f
+ 0x50 0x50 // U+0050
+ 0x51 0x51 // U+0051
+ 0x52 0x52 // U+0052
+ 0x53 0x53 // U+0053
+ 0x54 0x54 // U+0054
+ 0x55 0x55 // U+0055
+ 0x56 0x56 // U+0056
+ 0x57 0x57 // U+0057
+ 0x58 0x58 // U+0058
+ 0x59 0x59 // U+0059
+ 0x5A 0x5A // U+005a
+ 0x5B 0x5B // U+005b
+ 0x5C 0x5C // U+005c
+ 0x5D 0x5D // U+005d
+ 0x5E 0x5E // U+005e
+ 0x5F 0x5F // U+005f
+ 0x60 0x60 // U+0060
+ 0x61 0x61 // U+0061
+ 0x62 0x62 // U+0062
+ 0x63 0x63 // U+0063
+ 0x64 0x64 // U+0064
+ 0x65 0x65 // U+0065
+ 0x66 0x66 // U+0066
+ 0x67 0x67 // U+0067
+ 0x68 0x68 // U+0068
+ 0x69 0x69 // U+0069
+ 0x6A 0x6A // U+006a
+ 0x6B 0x6B // U+006b
+ 0x6C 0x6C // U+006c
+ 0x6D 0x6D // U+006d
+ 0x6E 0x6E // U+006e
+ 0x6F 0x6F // U+006f
+ 0x70 0x70 // U+0070
+ 0x71 0x71 // U+0071
+ 0x72 0x72 // U+0072
+ 0x73 0x73 // U+0073
+ 0x74 0x74 // U+0074
+ 0x75 0x75 // U+0075
+ 0x76 0x76 // U+0076
+ 0x77 0x77 // U+0077
+ 0x78 0x78 // U+0078
+ 0x79 0x79 // U+0079
+ 0x7A 0x7A // U+007a
+ 0x7B 0x7B // U+007b
+ 0x7C 0x7C // U+007c
+ 0x7D 0x7D // U+007d
+ 0x7E 0x7E // U+007e
+ 0x7F 0x1C // U+007f
+ default 0x3f
+ };
+ @condition {
+ inputsize <= 1;
+ @between 0XC0...0XFD;
+ } @operation {
+ error EINVAL;
+ };
+ @condition {
+ inputsize >= 2;
+ @between 0XC080...0XDFBF;
+ } @map {
+ 0xC2A0 0xFF // U+00a0
+ 0xC2A4 0xCF // U+00a4
+ 0xC2A7 0xFD // U+00a7
+ 0xC2AB 0xAE // U+00ab
+ 0xC2AD 0xF0 // U+00ad
+ 0xC2BB 0xAF // U+00bb
+ 0xD081 0x85 // U+0401
+ 0xD082 0x81 // U+0402
+ 0xD083 0x83 // U+0403
+ 0xD084 0x87 // U+0404
+ 0xD085 0x89 // U+0405
+ 0xD086 0x8B // U+0406
+ 0xD087 0x8D // U+0407
+ 0xD088 0x8F // U+0408
+ 0xD089 0x91 // U+0409
+ 0xD08A 0x93 // U+040a
+ 0xD08B 0x95 // U+040b
+ 0xD08C 0x97 // U+040c
+ 0xD08E 0x99 // U+040e
+ 0xD08F 0x9B // U+040f
+ 0xD090 0xA1 // U+0410
+ 0xD091 0xA3 // U+0411
+ 0xD092 0xEC // U+0412
+ 0xD093 0xAD // U+0413
+ 0xD094 0xA7 // U+0414
+ 0xD095 0xA9 // U+0415
+ 0xD096 0xEA // U+0416
+ 0xD097 0xF4 // U+0417
+ 0xD098 0xB8 // U+0418
+ 0xD099 0xBE // U+0419
+ 0xD09A 0xC7 // U+041a
+ 0xD09B 0xD1 // U+041b
+ 0xD09C 0xD3 // U+041c
+ 0xD09D 0xD5 // U+041d
+ 0xD09E 0xD7 // U+041e
+ 0xD09F 0xDD // U+041f
+ 0xD0A0 0xE2 // U+0420
+ 0xD0A1 0xE4 // U+0421
+ 0xD0A2 0xE6 // U+0422
+ 0xD0A3 0xE8 // U+0423
+ 0xD0A4 0xAB // U+0424
+ 0xD0A5 0xB6 // U+0425
+ 0xD0A6 0xA5 // U+0426
+ 0xD0A7 0xFC // U+0427
+ 0xD0A8 0xF6 // U+0428
+ 0xD0A9 0xFA // U+0429
+ 0xD0AA 0x9F // U+042a
+ 0xD0AB 0xF2 // U+042b
+ 0xD0AC 0xEE // U+042c
+ 0xD0AD 0xF8 // U+042d
+ 0xD0AE 0x9D // U+042e
+ 0xD0AF 0xE0 // U+042f
+ 0xD0B0 0xA0 // U+0430
+ 0xD0B1 0xA2 // U+0431
+ 0xD0B2 0xEB // U+0432
+ 0xD0B3 0xAC // U+0433
+ 0xD0B4 0xA6 // U+0434
+ 0xD0B5 0xA8 // U+0435
+ 0xD0B6 0xE9 // U+0436
+ 0xD0B7 0xF3 // U+0437
+ 0xD0B8 0xB7 // U+0438
+ 0xD0B9 0xBD // U+0439
+ 0xD0BA 0xC6 // U+043a
+ 0xD0BB 0xD0 // U+043b
+ 0xD0BC 0xD2 // U+043c
+ 0xD0BD 0xD4 // U+043d
+ 0xD0BE 0xD6 // U+043e
+ 0xD0BF 0xD8 // U+043f
+ 0xD180 0xE1 // U+0440
+ 0xD181 0xE3 // U+0441
+ 0xD182 0xE5 // U+0442
+ 0xD183 0xE7 // U+0443
+ 0xD184 0xAA // U+0444
+ 0xD185 0xB5 // U+0445
+ 0xD186 0xA4 // U+0446
+ 0xD187 0xFB // U+0447
+ 0xD188 0xF5 // U+0448
+ 0xD189 0xF9 // U+0449
+ 0xD18A 0x9E // U+044a
+ 0xD18B 0xF1 // U+044b
+ 0xD18C 0xED // U+044c
+ 0xD18D 0xF7 // U+044d
+ 0xD18E 0x9C // U+044e
+ 0xD18F 0xDE // U+044f
+ 0xD191 0x84 // U+0451
+ 0xD192 0x80 // U+0452
+ 0xD193 0x82 // U+0453
+ 0xD194 0x86 // U+0454
+ 0xD195 0x88 // U+0455
+ 0xD196 0x8A // U+0456
+ 0xD197 0x8C // U+0457
+ 0xD198 0x8E // U+0458
+ 0xD199 0x90 // U+0459
+ 0xD19A 0x92 // U+045a
+ 0xD19B 0x94 // U+045b
+ 0xD19C 0x96 // U+045c
+ 0xD19E 0x98 // U+045e
+ 0xD19F 0x9A // U+045f
+ default 0x3f
+ };
+ @condition {
+ inputsize <= 2;
+ @between 0XE0...0XFD;
+ } @operation {
+ error EINVAL;
+ };
+ @condition {
+ inputsize >= 3;
+ @between 0XE08080...0XECBFBF, 0XED8080...0XED9FBF, 0XEE8080...0XEFBFBF;
+ } @map {
+ 0xE28496 0xEF // U+2116
+ 0xE29480 0xC4 // U+2500
+ 0xE29482 0xB3 // U+2502
+ 0xE2948C 0xDA // U+250c
+ 0xE29490 0xBF // U+2510
+ 0xE29494 0xC0 // U+2514
+ 0xE29498 0xD9 // U+2518
+ 0xE2949C 0xC3 // U+251c
+ 0xE294A4 0xB4 // U+2524
+ 0xE294AC 0xC2 // U+252c
+ 0xE294B4 0xC1 // U+2534
+ 0xE294BC 0xC5 // U+253c
+ 0xE29590 0xCD // U+2550
+ 0xE29591 0xBA // U+2551
+ 0xE29594 0xC9 // U+2554
+ 0xE29597 0xBB // U+2557
+ 0xE2959A 0xC8 // U+255a
+ 0xE2959D 0xBC // U+255d
+ 0xE295A0 0xCC // U+2560
+ 0xE295A3 0xB9 // U+2563
+ 0xE295A6 0xCB // U+2566
+ 0xE295A9 0xCA // U+2569
+ 0xE295AC 0xCE // U+256c
+ 0xE29680 0xDF // U+2580
+ 0xE29684 0xDC // U+2584
+ 0xE29688 0xDB // U+2588
+ 0xE29691 0xB0 // U+2591
+ 0xE29692 0xB1 // U+2592
+ 0xE29693 0xB2 // U+2593
+ 0xE296A0 0xFE // U+25a0
+ 0xefbfbe error
+ 0xefbfbf error
+ default 0x3f
+ }; // for last @map syntax
+ @condition {
+ inputsize <= 3;
+ @between 0XF0...0XFD;
+ } @operation {
+ error EINVAL;
+ };
+ @condition {
+ inputsize >= 4;
+ @between 0XF0808080...0XF7BFBFBF;
+ } @operation {
+ output = 0x3f;
+ discard 4;
+ };
+ @condition {
+ inputsize <= 4;
+ @between 0XF8...0XFD;
+ } @operation {
+ error EINVAL;
+ };
+ @condition {
+ inputsize >= 5;
+ @between 0XF880808080...0XFBBFBFBFBF;
+ } @operation {
+ output = 0x3f;
+ discard 5;
+ };
+ @condition {
+ inputsize <= 5;
+ @between 0XFC...0XFD;
+ } @operation {
+ error EINVAL;
+ };
+ @condition {
+ inputsize >= 6;
+ @between 0XFC8080808080...0XFDBFBFBFBFBF;
+ } @operation {
+ output = 0x3f;
+ discard 6;
+ };
+ }; // for direction
+} // for conversion name