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

TOMOYO Linux Cross Reference
Linux/fs/nls/nls_iso8859-3.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/nls/nls_iso8859-3.c (Version linux-6.12-rc7) and /fs/nls/nls_iso8859-3.c (Version linux-5.15.169)


** Warning: Cannot open xref database.

  1 /*                                                  1 
  2  * linux/fs/nls/nls_iso8859-3.c                   
  3  *                                                
  4  * Charset iso8859-3 translation tables.          
  5  * Generated automatically from the Unicode an    
  6  * tables from the Unicode Organization (www.u    
  7  * The Unicode to charset table has only exact    
  8  */                                               
  9                                                   
 10 #include <linux/module.h>                         
 11 #include <linux/kernel.h>                         
 12 #include <linux/string.h>                         
 13 #include <linux/nls.h>                            
 14 #include <linux/errno.h>                          
 15                                                   
 16 static const wchar_t charset2uni[256] = {         
 17         /* 0x00*/                                 
 18         0x0000, 0x0001, 0x0002, 0x0003,           
 19         0x0004, 0x0005, 0x0006, 0x0007,           
 20         0x0008, 0x0009, 0x000a, 0x000b,           
 21         0x000c, 0x000d, 0x000e, 0x000f,           
 22         /* 0x10*/                                 
 23         0x0010, 0x0011, 0x0012, 0x0013,           
 24         0x0014, 0x0015, 0x0016, 0x0017,           
 25         0x0018, 0x0019, 0x001a, 0x001b,           
 26         0x001c, 0x001d, 0x001e, 0x001f,           
 27         /* 0x20*/                                 
 28         0x0020, 0x0021, 0x0022, 0x0023,           
 29         0x0024, 0x0025, 0x0026, 0x0027,           
 30         0x0028, 0x0029, 0x002a, 0x002b,           
 31         0x002c, 0x002d, 0x002e, 0x002f,           
 32         /* 0x30*/                                 
 33         0x0030, 0x0031, 0x0032, 0x0033,           
 34         0x0034, 0x0035, 0x0036, 0x0037,           
 35         0x0038, 0x0039, 0x003a, 0x003b,           
 36         0x003c, 0x003d, 0x003e, 0x003f,           
 37         /* 0x40*/                                 
 38         0x0040, 0x0041, 0x0042, 0x0043,           
 39         0x0044, 0x0045, 0x0046, 0x0047,           
 40         0x0048, 0x0049, 0x004a, 0x004b,           
 41         0x004c, 0x004d, 0x004e, 0x004f,           
 42         /* 0x50*/                                 
 43         0x0050, 0x0051, 0x0052, 0x0053,           
 44         0x0054, 0x0055, 0x0056, 0x0057,           
 45         0x0058, 0x0059, 0x005a, 0x005b,           
 46         0x005c, 0x005d, 0x005e, 0x005f,           
 47         /* 0x60*/                                 
 48         0x0060, 0x0061, 0x0062, 0x0063,           
 49         0x0064, 0x0065, 0x0066, 0x0067,           
 50         0x0068, 0x0069, 0x006a, 0x006b,           
 51         0x006c, 0x006d, 0x006e, 0x006f,           
 52         /* 0x70*/                                 
 53         0x0070, 0x0071, 0x0072, 0x0073,           
 54         0x0074, 0x0075, 0x0076, 0x0077,           
 55         0x0078, 0x0079, 0x007a, 0x007b,           
 56         0x007c, 0x007d, 0x007e, 0x007f,           
 57         /* 0x80*/                                 
 58         0x0080, 0x0081, 0x0082, 0x0083,           
 59         0x0084, 0x0085, 0x0086, 0x0087,           
 60         0x0088, 0x0089, 0x008a, 0x008b,           
 61         0x008c, 0x008d, 0x008e, 0x008f,           
 62         /* 0x90*/                                 
 63         0x0090, 0x0091, 0x0092, 0x0093,           
 64         0x0094, 0x0095, 0x0096, 0x0097,           
 65         0x0098, 0x0099, 0x009a, 0x009b,           
 66         0x009c, 0x009d, 0x009e, 0x009f,           
 67         /* 0xa0*/                                 
 68         0x00a0, 0x0126, 0x02d8, 0x00a3,           
 69         0x00a4, 0x0000, 0x0124, 0x00a7,           
 70         0x00a8, 0x0130, 0x015e, 0x011e,           
 71         0x0134, 0x00ad, 0x0000, 0x017b,           
 72         /* 0xb0*/                                 
 73         0x00b0, 0x0127, 0x00b2, 0x00b3,           
 74         0x00b4, 0x00b5, 0x0125, 0x00b7,           
 75         0x00b8, 0x0131, 0x015f, 0x011f,           
 76         0x0135, 0x00bd, 0x0000, 0x017c,           
 77         /* 0xc0*/                                 
 78         0x00c0, 0x00c1, 0x00c2, 0x0000,           
 79         0x00c4, 0x010a, 0x0108, 0x00c7,           
 80         0x00c8, 0x00c9, 0x00ca, 0x00cb,           
 81         0x00cc, 0x00cd, 0x00ce, 0x00cf,           
 82         /* 0xd0*/                                 
 83         0x0000, 0x00d1, 0x00d2, 0x00d3,           
 84         0x00d4, 0x0120, 0x00d6, 0x00d7,           
 85         0x011c, 0x00d9, 0x00da, 0x00db,           
 86         0x00dc, 0x016c, 0x015c, 0x00df,           
 87         /* 0xe0*/                                 
 88         0x00e0, 0x00e1, 0x00e2, 0x0000,           
 89         0x00e4, 0x010b, 0x0109, 0x00e7,           
 90         0x00e8, 0x00e9, 0x00ea, 0x00eb,           
 91         0x00ec, 0x00ed, 0x00ee, 0x00ef,           
 92         /* 0xf0*/                                 
 93         0x0000, 0x00f1, 0x00f2, 0x00f3,           
 94         0x00f4, 0x0121, 0x00f6, 0x00f7,           
 95         0x011d, 0x00f9, 0x00fa, 0x00fb,           
 96         0x00fc, 0x016d, 0x015d, 0x02d9,           
 97 };                                                
 98                                                   
 99 static const unsigned char page00[256] = {        
100         0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x    
101         0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x    
102         0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x    
103         0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x    
104         0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x    
105         0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x    
106         0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x    
107         0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x    
108         0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x    
109         0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x    
110         0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x    
111         0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x    
112         0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x    
113         0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x    
114         0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x    
115         0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x    
116                                                   
117         0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x    
118         0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x    
119         0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x    
120         0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x    
121         0xa0, 0x00, 0x00, 0xa3, 0xa4, 0x00, 0x    
122         0xa8, 0x00, 0x00, 0x00, 0x00, 0xad, 0x    
123         0xb0, 0x00, 0xb2, 0xb3, 0xb4, 0xb5, 0x    
124         0xb8, 0x00, 0x00, 0x00, 0x00, 0xbd, 0x    
125         0xc0, 0xc1, 0xc2, 0x00, 0xc4, 0x00, 0x    
126         0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0x    
127         0x00, 0xd1, 0xd2, 0xd3, 0xd4, 0x00, 0x    
128         0x00, 0xd9, 0xda, 0xdb, 0xdc, 0x00, 0x    
129         0xe0, 0xe1, 0xe2, 0x00, 0xe4, 0x00, 0x    
130         0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0x    
131         0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0x00, 0x    
132         0x00, 0xf9, 0xfa, 0xfb, 0xfc, 0x00, 0x    
133 };                                                
134                                                   
135 static const unsigned char page01[256] = {        
136         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
137         0xc6, 0xe6, 0xc5, 0xe5, 0x00, 0x00, 0x    
138         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
139         0x00, 0x00, 0x00, 0x00, 0xd8, 0xf8, 0x    
140         0xd5, 0xf5, 0x00, 0x00, 0xa6, 0xb6, 0x    
141         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
142         0xa9, 0xb9, 0x00, 0x00, 0xac, 0xbc, 0x    
143         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
144         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
145         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
146         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
147         0x00, 0x00, 0x00, 0x00, 0xde, 0xfe, 0x    
148         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
149         0x00, 0x00, 0x00, 0x00, 0xdd, 0xfd, 0x    
150         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
151         0x00, 0x00, 0x00, 0xaf, 0xbf, 0x00, 0x    
152 };                                                
153                                                   
154 static const unsigned char page02[256] = {        
155         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
156         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
157         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
158         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
159         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
160         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
161         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
162         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
163         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
164         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
165         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
166         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
167         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
168         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
169         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
170         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
171                                                   
172         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
173         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
174         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
175         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
176         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
177         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
178         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
179         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
180         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
181         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
182         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x    
183         0xa2, 0xff, 0x00, 0x00, 0x00, 0x00, 0x    
184 };                                                
185                                                   
186 static const unsigned char *const page_uni2cha    
187         page00, page01, page02, NULL,   NULL,     
188 };                                                
189                                                   
190 static const unsigned char charset2lower[256]     
191         0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x    
192         0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x    
193         0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x    
194         0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x    
195         0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x    
196         0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x    
197         0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x    
198         0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x    
199         0x40, 0x61, 0x62, 0x63, 0x64, 0x65, 0x    
200         0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x    
201         0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x    
202         0x78, 0x79, 0x7a, 0x5b, 0x5c, 0x5d, 0x    
203         0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x    
204         0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x    
205         0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x    
206         0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x    
207                                                   
208         0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x    
209         0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x    
210         0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x    
211         0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x    
212         0xa0, 0xb1, 0xa2, 0xa3, 0xa4, 0x00, 0x    
213         0xa8, 0x69, 0xba, 0xbb, 0xbc, 0xad, 0x    
214         0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0x    
215         0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0x    
216         0xe0, 0xe1, 0xe2, 0x00, 0xe4, 0xe5, 0x    
217         0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0x    
218         0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0x    
219         0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0x    
220         0xe0, 0xe1, 0xe2, 0x00, 0xe4, 0xe5, 0x    
221         0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0x    
222         0x00, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0x    
223         0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0x    
224 };                                                
225                                                   
226 static const unsigned char charset2upper[256]     
227         0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x    
228         0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x    
229         0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x    
230         0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x    
231         0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x    
232         0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x    
233         0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x    
234         0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x    
235         0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x    
236         0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x    
237         0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x    
238         0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x    
239         0x60, 0x41, 0x42, 0x43, 0x44, 0x45, 0x    
240         0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x    
241         0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x    
242         0x58, 0x59, 0x5a, 0x7b, 0x7c, 0x7d, 0x    
243                                                   
244         0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x    
245         0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x    
246         0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x    
247         0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x    
248         0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0x00, 0x    
249         0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0x    
250         0xb0, 0xa1, 0xb2, 0xb3, 0xb4, 0x00, 0x    
251         0xb8, 0x49, 0xaa, 0xab, 0xac, 0xbd, 0x    
252         0xc0, 0xc1, 0xc2, 0x00, 0xc4, 0xc5, 0x    
253         0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0x    
254         0x00, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0x    
255         0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0x    
256         0xc0, 0xc1, 0xc2, 0x00, 0xc4, 0xc5, 0x    
257         0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0x    
258         0x00, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0x    
259         0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0x    
260 };                                                
261                                                   
262 static int uni2char(wchar_t uni, unsigned char    
263 {                                                 
264         const unsigned char *uni2charset;         
265         unsigned char cl = uni & 0x00ff;          
266         unsigned char ch = (uni & 0xff00) >> 8    
267                                                   
268         if (boundlen <= 0)                        
269                 return -ENAMETOOLONG;             
270                                                   
271         uni2charset = page_uni2charset[ch];       
272         if (uni2charset && uni2charset[cl])       
273                 out[0] = uni2charset[cl];         
274         else                                      
275                 return -EINVAL;                   
276         return 1;                                 
277 }                                                 
278                                                   
279 static int char2uni(const unsigned char *rawst    
280 {                                                 
281         *uni = charset2uni[*rawstring];           
282         if (*uni == 0x0000)                       
283                 return -EINVAL;                   
284         return 1;                                 
285 }                                                 
286                                                   
287 static struct nls_table table = {                 
288         .charset        = "iso8859-3",            
289         .uni2char       = uni2char,               
290         .char2uni       = char2uni,               
291         .charset2lower  = charset2lower,          
292         .charset2upper  = charset2upper,          
293 };                                                
294                                                   
295 static int __init init_nls_iso8859_3(void)        
296 {                                                 
297         return register_nls(&table);              
298 }                                                 
299                                                   
300 static void __exit exit_nls_iso8859_3(void)       
301 {                                                 
302         unregister_nls(&table);                   
303 }                                                 
304                                                   
305 module_init(init_nls_iso8859_3)                   
306 module_exit(exit_nls_iso8859_3)                   
307                                                   
308 MODULE_DESCRIPTION("NLS ISO 8859-3 (Latin 3; E    
309 MODULE_LICENSE("Dual BSD/GPL");                   
310                                                   

~ [ 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