1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
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/*
23 * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
24 * Use is subject to license terms.
25 */
26
27/*
28 * Copyright 2010 Nexenta Systems, Inc.  All rights reserved.
29 * Use is subject to license terms.
30 */
31
32/*	Copyright (c) 1988 AT&T	*/
33/*	  All Rights Reserved  	*/
34
35#pragma weak _ctype = __ctype
36
37#include "lint.h"
38#include <locale.h>
39#include "_locale.h"
40#include <ctype.h>
41#include <sys/types.h>
42
43unsigned char __ctype_C[SZ_TOTAL] =
44{
45	0, /* EOF */
46	_C,	_C,	_C,	_C,	_C,	_C,	_C,	_C,
47	_C,	_S|_C,	_S|_C,	_S|_C,	_S|_C,	_S|_C,	_C,	_C,
48	_C,	_C,	_C,	_C,	_C,	_C,	_C,	_C,
49	_C,	_C,	_C,	_C,	_C,	_C,	_C,	_C,
50	_S|_B,	_P,	_P,	_P,	_P,	_P,	_P,	_P,
51	_P,	_P,	_P,	_P,	_P,	_P,	_P,	_P,
52	_N|_X,	_N|_X,	_N|_X,	_N|_X,	_N|_X,	_N|_X,	_N|_X,	_N|_X,
53	_N|_X,	_N|_X,	_P,	_P,	_P,	_P,	_P,	_P,
54	_P,	_U|_X,	_U|_X,	_U|_X,	_U|_X,	_U|_X,	_U|_X,	_U,
55	_U,	_U,	_U,	_U,	_U,	_U,	_U,	_U,
56	_U,	_U,	_U,	_U,	_U,	_U,	_U,	_U,
57	_U,	_U,	_U,	_P,	_P,	_P,	_P,	_P,
58	_P,	_L|_X,	_L|_X,	_L|_X,	_L|_X,	_L|_X,	_L|_X,	_L,
59	_L,	_L,	_L,	_L,	_L,	_L,	_L,	_L,
60	_L,	_L,	_L,	_L,	_L,	_L,	_L,	_L,
61	_L,	_L,	_L,	_P,	_P,	_P,	_P,	_C,
62	0,	0,	0,	0,	0,	0,	0,	0,
63	0,	0,	0,	0,	0,	0,	0,	0,
64	0,	0,	0,	0,	0,	0,	0,	0,
65	0,	0,	0,	0,	0,	0,	0,	0,
66	0,	0,	0,	0,	0,	0,	0,	0,
67	0,	0,	0,	0,	0,	0,	0,	0,
68	0,	0,	0,	0,	0,	0,	0,	0,
69	0,	0,	0,	0,	0,	0,	0,	0,
70	0,	0,	0,	0,	0,	0,	0,	0,
71	0,	0,	0,	0,	0,	0,	0,	0,
72	0,	0,	0,	0,	0,	0,	0,	0,
73	0,	0,	0,	0,	0,	0,	0,	0,
74	0,	0,	0,	0,	0,	0,	0,	0,
75	0,	0,	0,	0,	0,	0,	0,	0,
76	0,	0,	0,	0,	0,	0,	0,	0,
77	0,	0,	0,	0,	0,	0,	0,	0,
78
79/* tolower()  and toupper() conversion table */	0,
80	0,	1,	2,	3,	4,	5,	6,	7,
81	8,	9,	10,	11,	12,	13,	14,	15,
82	16,	17,	18,	19,	20,	21,	22,	23,
83	24,	25,	26,	27,	28,	29,	30,	31,
84	32,	33,	34,	35,	36,	37,	38,	39,
85	40,	41,	42,	43,	44,	45,	46,	47,
86	48,	49,	50,	51,	52,	53,	54,	55,
87	56,	57,	58,	59,	60,	61,	62,	63,
88	64,	97,	98,	99,	100,	101,	102,	103,
89	104,	105,	106,	107,	108,	109,	110,	111,
90	112,	113,	114,	115,	116,	117,	118,	119,
91	120,	121,	122,	91,	92,	93,	94,	95,
92	96,	65,	66,	67,	68,	69,	70,	71,
93	72,	73,	74,	75,	76,	77,	78,	79,
94	80,	81,	82,	83,	84,	85,	86,	87,
95	88,	89,	90,	123,	124,	125,	126,	127,
96	0,	0,	0,	0,	0,	0,	0,	0,
97	0,	0,	0,	0,	0,	0,	0,	0,
98	0,	0,	0,	0,	0,	0,	0,	0,
99	0,	0,	0,	0,	0,	0,	0,	0,
100	0,	0,	0,	0,	0,	0,	0,	0,
101	0,	0,	0,	0,	0,	0,	0,	0,
102	0,	0,	0,	0,	0,	0,	0,	0,
103	0,	0,	0,	0,	0,	0,	0,	0,
104	0,	0,	0,	0,	0,	0,	0,	0,
105	0,	0,	0,	0,	0,	0,	0,	0,
106	0,	0,	0,	0,	0,	0,	0,	0,
107	0,	0,	0,	0,	0,	0,	0,	0,
108	0,	0,	0,	0,	0,	0,	0,	0,
109	0,	0,	0,	0,	0,	0,	0,	0,
110	0,	0,	0,	0,	0,	0,	0,	0,
111	0,	0,	0,	0,	0,	0,	0,	0,
112/* CSWIDTH information */
113	1,	0,	0,	1,	0,	0,	1,
114};
115
116unsigned char __ctype[SZ_TOTAL] =
117{
118	0, /* EOF */
119	_C,	_C,	_C,	_C,	_C,	_C,	_C,	_C,
120	_C,	_S|_C,	_S|_C,	_S|_C,	_S|_C,	_S|_C,	_C,	_C,
121	_C,	_C,	_C,	_C,	_C,	_C,	_C,	_C,
122	_C,	_C,	_C,	_C,	_C,	_C,	_C,	_C,
123	_S|_B,	_P,	_P,	_P,	_P,	_P,	_P,	_P,
124	_P,	_P,	_P,	_P,	_P,	_P,	_P,	_P,
125	_N|_X,	_N|_X,	_N|_X,	_N|_X,	_N|_X,	_N|_X,	_N|_X,	_N|_X,
126	_N|_X,	_N|_X,	_P,	_P,	_P,	_P,	_P,	_P,
127	_P,	_U|_X,	_U|_X,	_U|_X,	_U|_X,	_U|_X,	_U|_X,	_U,
128	_U,	_U,	_U,	_U,	_U,	_U,	_U,	_U,
129	_U,	_U,	_U,	_U,	_U,	_U,	_U,	_U,
130	_U,	_U,	_U,	_P,	_P,	_P,	_P,	_P,
131	_P,	_L|_X,	_L|_X,	_L|_X,	_L|_X,	_L|_X,	_L|_X,	_L,
132	_L,	_L,	_L,	_L,	_L,	_L,	_L,	_L,
133	_L,	_L,	_L,	_L,	_L,	_L,	_L,	_L,
134	_L,	_L,	_L,	_P,	_P,	_P,	_P,	_C,
135	0,	0,	0,	0,	0,	0,	0,	0,
136	0,	0,	0,	0,	0,	0,	0,	0,
137	0,	0,	0,	0,	0,	0,	0,	0,
138	0,	0,	0,	0,	0,	0,	0,	0,
139	0,	0,	0,	0,	0,	0,	0,	0,
140	0,	0,	0,	0,	0,	0,	0,	0,
141	0,	0,	0,	0,	0,	0,	0,	0,
142	0,	0,	0,	0,	0,	0,	0,	0,
143	0,	0,	0,	0,	0,	0,	0,	0,
144	0,	0,	0,	0,	0,	0,	0,	0,
145	0,	0,	0,	0,	0,	0,	0,	0,
146	0,	0,	0,	0,	0,	0,	0,	0,
147	0,	0,	0,	0,	0,	0,	0,	0,
148	0,	0,	0,	0,	0,	0,	0,	0,
149	0,	0,	0,	0,	0,	0,	0,	0,
150	0,	0,	0,	0,	0,	0,	0,	0,
151
152/* tolower()  and toupper() conversion table */	0,
153	0,	1,	2,	3,	4,	5,	6,	7,
154	8,	9,	10,	11,	12,	13,	14,	15,
155	16,	17,	18,	19,	20,	21,	22,	23,
156	24,	25,	26,	27,	28,	29,	30,	31,
157	32,	33,	34,	35,	36,	37,	38,	39,
158	40,	41,	42,	43,	44,	45,	46,	47,
159	48,	49,	50,	51,	52,	53,	54,	55,
160	56,	57,	58,	59,	60,	61,	62,	63,
161	64,	97,	98,	99,	100,	101,	102,	103,
162	104,	105,	106,	107,	108,	109,	110,	111,
163	112,	113,	114,	115,	116,	117,	118,	119,
164	120,	121,	122,	91,	92,	93,	94,	95,
165	96,	65,	66,	67,	68,	69,	70,	71,
166	72,	73,	74,	75,	76,	77,	78,	79,
167	80,	81,	82,	83,	84,	85,	86,	87,
168	88,	89,	90,	123,	124,	125,	126,	127,
169	0,	0,	0,	0,	0,	0,	0,	0,
170	0,	0,	0,	0,	0,	0,	0,	0,
171	0,	0,	0,	0,	0,	0,	0,	0,
172	0,	0,	0,	0,	0,	0,	0,	0,
173	0,	0,	0,	0,	0,	0,	0,	0,
174	0,	0,	0,	0,	0,	0,	0,	0,
175	0,	0,	0,	0,	0,	0,	0,	0,
176	0,	0,	0,	0,	0,	0,	0,	0,
177	0,	0,	0,	0,	0,	0,	0,	0,
178	0,	0,	0,	0,	0,	0,	0,	0,
179	0,	0,	0,	0,	0,	0,	0,	0,
180	0,	0,	0,	0,	0,	0,	0,	0,
181	0,	0,	0,	0,	0,	0,	0,	0,
182	0,	0,	0,	0,	0,	0,	0,	0,
183	0,	0,	0,	0,	0,	0,	0,	0,
184	0,	0,	0,	0,	0,	0,	0,	0,
185/* CSWIDTH information */
186	1,	0,	0,	1,	0,	0,	1,
187};
188
189unsigned char	_numeric[SZ_NUMERIC] =
190{
191	'.',	'\0',
192};
193