~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/fs/smb/client/winucase.c

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /fs/smb/client/winucase.c (Version linux-6.12-rc7) and /fs/smb/client/winucase.c (Version linux-4.4.302)


  1 // SPDX-License-Identifier: GPL-2.0-or-later        1 
  2 /*                                                
  3  *                                                
  4  * Copyright (c) Jeffrey Layton <jlayton@redha    
  5  *                                                
  6  * The const tables in this file were converte    
  7  * provided by Microsoft:                         
  8  *                                                
  9  * 3.1.5.3 Mapping UTF-16 Strings to Upper Cas    
 10  *                                                
 11  * https://msdn.microsoft.com/en-us/library/hh    
 12  * http://www.microsoft.com/en-us/download/det    
 13  *                                                
 14  * In particular, the table in "Windows 8 Uppe    
 15  * post-processed using the winucase_convert.p    
 16  */                                               
 17                                                   
 18 #include <linux/nls.h>                            
 19                                                   
 20 wchar_t cifs_toupper(wchar_t in);  /* quiet sp    
 21                                                   
 22 static const wchar_t t2_00[256] = {               
 23         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 24         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 25         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 26         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 27         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 28         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 29         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 30         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 31         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 32         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 33         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 34         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 35         0x0000, 0x0041, 0x0042, 0x0043, 0x0044    
 36         0x0048, 0x0049, 0x004a, 0x004b, 0x004c    
 37         0x0050, 0x0051, 0x0052, 0x0053, 0x0054    
 38         0x0058, 0x0059, 0x005a, 0x0000, 0x0000    
 39         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 40         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 41         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 42         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 43         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 44         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 45         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 46         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 47         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 48         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 49         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 50         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 51         0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4    
 52         0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc    
 53         0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4    
 54         0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc    
 55 };                                                
 56                                                   
 57 static const wchar_t t2_01[256] = {               
 58         0x0000, 0x0100, 0x0000, 0x0102, 0x0000    
 59         0x0000, 0x0108, 0x0000, 0x010a, 0x0000    
 60         0x0000, 0x0110, 0x0000, 0x0112, 0x0000    
 61         0x0000, 0x0118, 0x0000, 0x011a, 0x0000    
 62         0x0000, 0x0120, 0x0000, 0x0122, 0x0000    
 63         0x0000, 0x0128, 0x0000, 0x012a, 0x0000    
 64         0x0000, 0x0000, 0x0000, 0x0132, 0x0000    
 65         0x0000, 0x0000, 0x0139, 0x0000, 0x013b    
 66         0x013f, 0x0000, 0x0141, 0x0000, 0x0143    
 67         0x0147, 0x0000, 0x0000, 0x014a, 0x0000    
 68         0x0000, 0x0150, 0x0000, 0x0152, 0x0000    
 69         0x0000, 0x0158, 0x0000, 0x015a, 0x0000    
 70         0x0000, 0x0160, 0x0000, 0x0162, 0x0000    
 71         0x0000, 0x0168, 0x0000, 0x016a, 0x0000    
 72         0x0000, 0x0170, 0x0000, 0x0172, 0x0000    
 73         0x0000, 0x0000, 0x0179, 0x0000, 0x017b    
 74         0x0243, 0x0000, 0x0000, 0x0182, 0x0000    
 75         0x0187, 0x0000, 0x0000, 0x0000, 0x018b    
 76         0x0000, 0x0000, 0x0191, 0x0000, 0x0000    
 77         0x0000, 0x0198, 0x023d, 0x0000, 0x0000    
 78         0x0000, 0x01a0, 0x0000, 0x01a2, 0x0000    
 79         0x01a7, 0x0000, 0x0000, 0x0000, 0x0000    
 80         0x01af, 0x0000, 0x0000, 0x0000, 0x01b3    
 81         0x0000, 0x01b8, 0x0000, 0x0000, 0x0000    
 82         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
 83         0x0000, 0x01c7, 0x0000, 0x0000, 0x01ca    
 84         0x01cf, 0x0000, 0x01d1, 0x0000, 0x01d3    
 85         0x01d7, 0x0000, 0x01d9, 0x0000, 0x01db    
 86         0x0000, 0x01e0, 0x0000, 0x01e2, 0x0000    
 87         0x0000, 0x01e8, 0x0000, 0x01ea, 0x0000    
 88         0x0000, 0x0000, 0x0000, 0x01f1, 0x0000    
 89         0x0000, 0x01f8, 0x0000, 0x01fa, 0x0000    
 90 };                                                
 91                                                   
 92 static const wchar_t t2_02[256] = {               
 93         0x0000, 0x0200, 0x0000, 0x0202, 0x0000    
 94         0x0000, 0x0208, 0x0000, 0x020a, 0x0000    
 95         0x0000, 0x0210, 0x0000, 0x0212, 0x0000    
 96         0x0000, 0x0218, 0x0000, 0x021a, 0x0000    
 97         0x0000, 0x0000, 0x0000, 0x0222, 0x0000    
 98         0x0000, 0x0228, 0x0000, 0x022a, 0x0000    
 99         0x0000, 0x0230, 0x0000, 0x0232, 0x0000    
100         0x0000, 0x0000, 0x0000, 0x0000, 0x023b    
101         0x0000, 0x0000, 0x0241, 0x0000, 0x0000    
102         0x0000, 0x0248, 0x0000, 0x024a, 0x0000    
103         0x2c6f, 0x2c6d, 0x0000, 0x0181, 0x0186    
104         0x0000, 0x018f, 0x0000, 0x0190, 0x0000    
105         0x0193, 0x0000, 0x0000, 0x0194, 0x0000    
106         0x0197, 0x0196, 0x0000, 0x2c62, 0x0000    
107         0x0000, 0x2c6e, 0x019d, 0x0000, 0x0000    
108         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
109         0x01a6, 0x0000, 0x0000, 0x01a9, 0x0000    
110         0x01ae, 0x0244, 0x01b1, 0x01b2, 0x0245    
111         0x0000, 0x0000, 0x01b7, 0x0000, 0x0000    
112         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
113         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
114         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
115         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
116         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
117         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
118         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
119         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
120         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
121         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
122         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
123         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
124         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
125 };                                                
126                                                   
127 static const wchar_t t2_03[256] = {               
128         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
129         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
130         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
131         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
132         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
133         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
134         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
135         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
136         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
137         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
138         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
139         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
140         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
141         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
142         0x0000, 0x0370, 0x0000, 0x0372, 0x0000    
143         0x0000, 0x0000, 0x0000, 0x03fd, 0x03fe    
144         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
145         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
146         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
147         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
148         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
149         0x0000, 0x0000, 0x0000, 0x0000, 0x0386    
150         0x0000, 0x0391, 0x0392, 0x0393, 0x0394    
151         0x0398, 0x0399, 0x039a, 0x039b, 0x039c    
152         0x03a0, 0x03a1, 0x0000, 0x03a3, 0x03a4    
153         0x03a8, 0x03a9, 0x03aa, 0x03ab, 0x038c    
154         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
155         0x0000, 0x03d8, 0x0000, 0x03da, 0x0000    
156         0x0000, 0x03e0, 0x0000, 0x03e2, 0x0000    
157         0x0000, 0x03e8, 0x0000, 0x03ea, 0x0000    
158         0x0000, 0x0000, 0x03f9, 0x0000, 0x0000    
159         0x03f7, 0x0000, 0x0000, 0x03fa, 0x0000    
160 };                                                
161                                                   
162 static const wchar_t t2_04[256] = {               
163         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
164         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
165         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
166         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
167         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
168         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
169         0x0410, 0x0411, 0x0412, 0x0413, 0x0414    
170         0x0418, 0x0419, 0x041a, 0x041b, 0x041c    
171         0x0420, 0x0421, 0x0422, 0x0423, 0x0424    
172         0x0428, 0x0429, 0x042a, 0x042b, 0x042c    
173         0x0400, 0x0401, 0x0402, 0x0403, 0x0404    
174         0x0408, 0x0409, 0x040a, 0x040b, 0x040c    
175         0x0000, 0x0460, 0x0000, 0x0462, 0x0000    
176         0x0000, 0x0468, 0x0000, 0x046a, 0x0000    
177         0x0000, 0x0470, 0x0000, 0x0472, 0x0000    
178         0x0000, 0x0478, 0x0000, 0x047a, 0x0000    
179         0x0000, 0x0480, 0x0000, 0x0000, 0x0000    
180         0x0000, 0x0000, 0x0000, 0x048a, 0x0000    
181         0x0000, 0x0490, 0x0000, 0x0492, 0x0000    
182         0x0000, 0x0498, 0x0000, 0x049a, 0x0000    
183         0x0000, 0x04a0, 0x0000, 0x04a2, 0x0000    
184         0x0000, 0x04a8, 0x0000, 0x04aa, 0x0000    
185         0x0000, 0x04b0, 0x0000, 0x04b2, 0x0000    
186         0x0000, 0x04b8, 0x0000, 0x04ba, 0x0000    
187         0x0000, 0x0000, 0x04c1, 0x0000, 0x04c3    
188         0x04c7, 0x0000, 0x04c9, 0x0000, 0x04cb    
189         0x0000, 0x04d0, 0x0000, 0x04d2, 0x0000    
190         0x0000, 0x04d8, 0x0000, 0x04da, 0x0000    
191         0x0000, 0x04e0, 0x0000, 0x04e2, 0x0000    
192         0x0000, 0x04e8, 0x0000, 0x04ea, 0x0000    
193         0x0000, 0x04f0, 0x0000, 0x04f2, 0x0000    
194         0x0000, 0x04f8, 0x0000, 0x04fa, 0x0000    
195 };                                                
196                                                   
197 static const wchar_t t2_05[256] = {               
198         0x0000, 0x0500, 0x0000, 0x0502, 0x0000    
199         0x0000, 0x0508, 0x0000, 0x050a, 0x0000    
200         0x0000, 0x0510, 0x0000, 0x0512, 0x0000    
201         0x0000, 0x0518, 0x0000, 0x051a, 0x0000    
202         0x0000, 0x0520, 0x0000, 0x0522, 0x0000    
203         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
204         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
205         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
206         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
207         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
208         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
209         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
210         0x0000, 0x0531, 0x0532, 0x0533, 0x0534    
211         0x0538, 0x0539, 0x053a, 0x053b, 0x053c    
212         0x0540, 0x0541, 0x0542, 0x0543, 0x0544    
213         0x0548, 0x0549, 0x054a, 0x054b, 0x054c    
214         0x0550, 0x0551, 0x0552, 0x0553, 0x0554    
215         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
216         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
217         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
218         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
219         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
220         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
221         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
222         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
223         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
224         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
225         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
226         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
227         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
228         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
229         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
230 };                                                
231                                                   
232 static const wchar_t t2_1d[256] = {               
233         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
234         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
235         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
236         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
237         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
238         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
239         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
240         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
241         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
242         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
243         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
244         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
245         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
246         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
247         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
248         0x0000, 0xa77d, 0x0000, 0x0000, 0x0000    
249         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
250         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
251         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
252         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
253         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
254         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
255         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
256         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
257         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
258         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
259         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
260         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
261         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
262         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
263         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
264         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
265 };                                                
266                                                   
267 static const wchar_t t2_1e[256] = {               
268         0x0000, 0x1e00, 0x0000, 0x1e02, 0x0000    
269         0x0000, 0x1e08, 0x0000, 0x1e0a, 0x0000    
270         0x0000, 0x1e10, 0x0000, 0x1e12, 0x0000    
271         0x0000, 0x1e18, 0x0000, 0x1e1a, 0x0000    
272         0x0000, 0x1e20, 0x0000, 0x1e22, 0x0000    
273         0x0000, 0x1e28, 0x0000, 0x1e2a, 0x0000    
274         0x0000, 0x1e30, 0x0000, 0x1e32, 0x0000    
275         0x0000, 0x1e38, 0x0000, 0x1e3a, 0x0000    
276         0x0000, 0x1e40, 0x0000, 0x1e42, 0x0000    
277         0x0000, 0x1e48, 0x0000, 0x1e4a, 0x0000    
278         0x0000, 0x1e50, 0x0000, 0x1e52, 0x0000    
279         0x0000, 0x1e58, 0x0000, 0x1e5a, 0x0000    
280         0x0000, 0x1e60, 0x0000, 0x1e62, 0x0000    
281         0x0000, 0x1e68, 0x0000, 0x1e6a, 0x0000    
282         0x0000, 0x1e70, 0x0000, 0x1e72, 0x0000    
283         0x0000, 0x1e78, 0x0000, 0x1e7a, 0x0000    
284         0x0000, 0x1e80, 0x0000, 0x1e82, 0x0000    
285         0x0000, 0x1e88, 0x0000, 0x1e8a, 0x0000    
286         0x0000, 0x1e90, 0x0000, 0x1e92, 0x0000    
287         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
288         0x0000, 0x1ea0, 0x0000, 0x1ea2, 0x0000    
289         0x0000, 0x1ea8, 0x0000, 0x1eaa, 0x0000    
290         0x0000, 0x1eb0, 0x0000, 0x1eb2, 0x0000    
291         0x0000, 0x1eb8, 0x0000, 0x1eba, 0x0000    
292         0x0000, 0x1ec0, 0x0000, 0x1ec2, 0x0000    
293         0x0000, 0x1ec8, 0x0000, 0x1eca, 0x0000    
294         0x0000, 0x1ed0, 0x0000, 0x1ed2, 0x0000    
295         0x0000, 0x1ed8, 0x0000, 0x1eda, 0x0000    
296         0x0000, 0x1ee0, 0x0000, 0x1ee2, 0x0000    
297         0x0000, 0x1ee8, 0x0000, 0x1eea, 0x0000    
298         0x0000, 0x1ef0, 0x0000, 0x1ef2, 0x0000    
299         0x0000, 0x1ef8, 0x0000, 0x1efa, 0x0000    
300 };                                                
301                                                   
302 static const wchar_t t2_1f[256] = {               
303         0x1f08, 0x1f09, 0x1f0a, 0x1f0b, 0x1f0c    
304         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
305         0x1f18, 0x1f19, 0x1f1a, 0x1f1b, 0x1f1c    
306         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
307         0x1f28, 0x1f29, 0x1f2a, 0x1f2b, 0x1f2c    
308         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
309         0x1f38, 0x1f39, 0x1f3a, 0x1f3b, 0x1f3c    
310         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
311         0x1f48, 0x1f49, 0x1f4a, 0x1f4b, 0x1f4c    
312         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
313         0x0000, 0x1f59, 0x0000, 0x1f5b, 0x0000    
314         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
315         0x1f68, 0x1f69, 0x1f6a, 0x1f6b, 0x1f6c    
316         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
317         0x1fba, 0x1fbb, 0x1fc8, 0x1fc9, 0x1fca    
318         0x1ff8, 0x1ff9, 0x1fea, 0x1feb, 0x1ffa    
319         0x1f88, 0x1f89, 0x1f8a, 0x1f8b, 0x1f8c    
320         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
321         0x1f98, 0x1f99, 0x1f9a, 0x1f9b, 0x1f9c    
322         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
323         0x1fa8, 0x1fa9, 0x1faa, 0x1fab, 0x1fac    
324         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
325         0x1fb8, 0x1fb9, 0x0000, 0x1fbc, 0x0000    
326         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
327         0x0000, 0x0000, 0x0000, 0x1fcc, 0x0000    
328         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
329         0x1fd8, 0x1fd9, 0x0000, 0x0000, 0x0000    
330         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
331         0x1fe8, 0x1fe9, 0x0000, 0x0000, 0x0000    
332         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
333         0x0000, 0x0000, 0x0000, 0x1ffc, 0x0000    
334         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
335 };                                                
336                                                   
337 static const wchar_t t2_21[256] = {               
338         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
339         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
340         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
341         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
342         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
343         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
344         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
345         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
346         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
347         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
348         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
349         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
350         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
351         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
352         0x2160, 0x2161, 0x2162, 0x2163, 0x2164    
353         0x2168, 0x2169, 0x216a, 0x216b, 0x216c    
354         0x0000, 0x0000, 0x0000, 0x0000, 0x2183    
355         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
356         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
357         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
358         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
359         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
360         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
361         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
362         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
363         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
364         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
365         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
366         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
367         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
368         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
369         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
370 };                                                
371                                                   
372 static const wchar_t t2_24[256] = {               
373         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
374         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
375         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
376         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
377         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
378         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
379         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
380         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
381         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
382         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
383         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
384         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
385         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
386         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
387         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
388         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
389         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
390         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
391         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
392         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
393         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
394         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
395         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
396         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
397         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
398         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
399         0x24b6, 0x24b7, 0x24b8, 0x24b9, 0x24ba    
400         0x24be, 0x24bf, 0x24c0, 0x24c1, 0x24c2    
401         0x24c6, 0x24c7, 0x24c8, 0x24c9, 0x24ca    
402         0x24ce, 0x24cf, 0x0000, 0x0000, 0x0000    
403         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
404         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
405 };                                                
406                                                   
407 static const wchar_t t2_2c[256] = {               
408         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
409         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
410         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
411         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
412         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
413         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
414         0x2c00, 0x2c01, 0x2c02, 0x2c03, 0x2c04    
415         0x2c08, 0x2c09, 0x2c0a, 0x2c0b, 0x2c0c    
416         0x2c10, 0x2c11, 0x2c12, 0x2c13, 0x2c14    
417         0x2c18, 0x2c19, 0x2c1a, 0x2c1b, 0x2c1c    
418         0x2c20, 0x2c21, 0x2c22, 0x2c23, 0x2c24    
419         0x2c28, 0x2c29, 0x2c2a, 0x2c2b, 0x2c2c    
420         0x0000, 0x2c60, 0x0000, 0x0000, 0x0000    
421         0x2c67, 0x0000, 0x2c69, 0x0000, 0x2c6b    
422         0x0000, 0x0000, 0x0000, 0x2c72, 0x0000    
423         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
424         0x0000, 0x2c80, 0x0000, 0x2c82, 0x0000    
425         0x0000, 0x2c88, 0x0000, 0x2c8a, 0x0000    
426         0x0000, 0x2c90, 0x0000, 0x2c92, 0x0000    
427         0x0000, 0x2c98, 0x0000, 0x2c9a, 0x0000    
428         0x0000, 0x2ca0, 0x0000, 0x2ca2, 0x0000    
429         0x0000, 0x2ca8, 0x0000, 0x2caa, 0x0000    
430         0x0000, 0x2cb0, 0x0000, 0x2cb2, 0x0000    
431         0x0000, 0x2cb8, 0x0000, 0x2cba, 0x0000    
432         0x0000, 0x2cc0, 0x0000, 0x2cc2, 0x0000    
433         0x0000, 0x2cc8, 0x0000, 0x2cca, 0x0000    
434         0x0000, 0x2cd0, 0x0000, 0x2cd2, 0x0000    
435         0x0000, 0x2cd8, 0x0000, 0x2cda, 0x0000    
436         0x0000, 0x2ce0, 0x0000, 0x2ce2, 0x0000    
437         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
438         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
439         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
440 };                                                
441                                                   
442 static const wchar_t t2_2d[256] = {               
443         0x10a0, 0x10a1, 0x10a2, 0x10a3, 0x10a4    
444         0x10a8, 0x10a9, 0x10aa, 0x10ab, 0x10ac    
445         0x10b0, 0x10b1, 0x10b2, 0x10b3, 0x10b4    
446         0x10b8, 0x10b9, 0x10ba, 0x10bb, 0x10bc    
447         0x10c0, 0x10c1, 0x10c2, 0x10c3, 0x10c4    
448         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
449         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
450         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
451         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
452         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
453         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
454         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
455         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
456         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
457         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
458         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
459         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
460         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
461         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
462         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
463         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
464         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
465         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
466         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
467         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
468         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
469         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
470         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
471         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
472         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
473         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
474         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
475 };                                                
476                                                   
477 static const wchar_t t2_a6[256] = {               
478         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
479         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
480         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
481         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
482         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
483         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
484         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
485         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
486         0x0000, 0xa640, 0x0000, 0xa642, 0x0000    
487         0x0000, 0xa648, 0x0000, 0xa64a, 0x0000    
488         0x0000, 0xa650, 0x0000, 0xa652, 0x0000    
489         0x0000, 0xa658, 0x0000, 0xa65a, 0x0000    
490         0x0000, 0x0000, 0x0000, 0xa662, 0x0000    
491         0x0000, 0xa668, 0x0000, 0xa66a, 0x0000    
492         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
493         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
494         0x0000, 0xa680, 0x0000, 0xa682, 0x0000    
495         0x0000, 0xa688, 0x0000, 0xa68a, 0x0000    
496         0x0000, 0xa690, 0x0000, 0xa692, 0x0000    
497         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
498         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
499         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
500         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
501         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
502         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
503         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
504         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
505         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
506         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
507         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
508         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
509         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
510 };                                                
511                                                   
512 static const wchar_t t2_a7[256] = {               
513         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
514         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
515         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
516         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
517         0x0000, 0x0000, 0x0000, 0xa722, 0x0000    
518         0x0000, 0xa728, 0x0000, 0xa72a, 0x0000    
519         0x0000, 0x0000, 0x0000, 0xa732, 0x0000    
520         0x0000, 0xa738, 0x0000, 0xa73a, 0x0000    
521         0x0000, 0xa740, 0x0000, 0xa742, 0x0000    
522         0x0000, 0xa748, 0x0000, 0xa74a, 0x0000    
523         0x0000, 0xa750, 0x0000, 0xa752, 0x0000    
524         0x0000, 0xa758, 0x0000, 0xa75a, 0x0000    
525         0x0000, 0xa760, 0x0000, 0xa762, 0x0000    
526         0x0000, 0xa768, 0x0000, 0xa76a, 0x0000    
527         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
528         0x0000, 0x0000, 0xa779, 0x0000, 0xa77b    
529         0x0000, 0xa780, 0x0000, 0xa782, 0x0000    
530         0x0000, 0x0000, 0x0000, 0x0000, 0xa78b    
531         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
532         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
533         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
534         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
535         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
536         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
537         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
538         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
539         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
540         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
541         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
542         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
543         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
544         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
545 };                                                
546                                                   
547 static const wchar_t t2_ff[256] = {               
548         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
549         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
550         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
551         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
552         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
553         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
554         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
555         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
556         0x0000, 0xff21, 0xff22, 0xff23, 0xff24    
557         0xff28, 0xff29, 0xff2a, 0xff2b, 0xff2c    
558         0xff30, 0xff31, 0xff32, 0xff33, 0xff34    
559         0xff38, 0xff39, 0xff3a, 0x0000, 0x0000    
560         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
561         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
562         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
563         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
564         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
565         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
566         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
567         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
568         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
569         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
570         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
571         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
572         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
573         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
574         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
575         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
576         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
577         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
578         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
579         0x0000, 0x0000, 0x0000, 0x0000, 0x0000    
580 };                                                
581                                                   
582 static const wchar_t *const toplevel[256] = {     
583         t2_00, t2_01, t2_02, t2_03, t2_04, t2_    
584         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
585         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
586         NULL,  NULL,  NULL,  NULL,  NULL, t2_1    
587         NULL, t2_21,  NULL,  NULL, t2_24,  NUL    
588         NULL,  NULL,  NULL,  NULL, t2_2c, t2_2    
589         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
590         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
591         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
592         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
593         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
594         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
595         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
596         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
597         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
598         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
599         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
600         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
601         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
602         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
603         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
604         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
605         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
606         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
607         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
608         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
609         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
610         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
611         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
612         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
613         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
614         NULL,  NULL,  NULL,  NULL,  NULL,  NUL    
615 };                                                
616                                                   
617 /**                                               
618  * cifs_toupper - convert a wchar_t from lower    
619  * @in: character to convert from lower to upp    
620  *                                                
621  * This function consults the static tables ab    
622  * lower to uppercase. In the event that there    
623  * "in" character is returned.                    
624  */                                               
625 wchar_t                                           
626 cifs_toupper(wchar_t in)                          
627 {                                                 
628         unsigned char idx;                        
629         const wchar_t *tbl;                       
630         wchar_t out;                              
631                                                   
632         /* grab upper byte */                     
633         idx = (in & 0xff00) >> 8;                 
634                                                   
635         /* find pointer to 2nd layer table */     
636         tbl = toplevel[idx];                      
637         if (!tbl)                                 
638                 return in;                        
639                                                   
640         /* grab lower byte */                     
641         idx = in & 0xff;                          
642                                                   
643         /* look up character in table */          
644         out = tbl[idx];                           
645         if (out)                                  
646                 return out;                       
647                                                   
648         return in;                                
649 }                                                 
650                                                   

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php