]> arthur.barton.de Git - netatalk.git/blob - libatalk/unicode/utf16_case.c
Hangs in Netatalk which causes it to stop responding to connections
[netatalk.git] / libatalk / unicode / utf16_case.c
1 /*
2 DO NOT EDIT BY HAND!!!
3
4 This file is generated by
5  contrib/shell_utils/make-casetable.pl UnicodeData.txt utf16_casetable.h utf16_case.c
6
7 UnicodeData.txt is got from
8 http://www.unicode.org/Public/UNIDATA/UnicodeData.txt
9 */
10
11 #include <stdint.h>
12 #include <atalk/unicode.h>
13 #include "utf16_casetable.h"
14
15 /*******************************************************************
16  Convert a wide character to upper case.
17 *******************************************************************/
18 ucs2_t toupper_w(ucs2_t val)
19 {
20     if ( val <= 0x02BF)
21         return upper_table_1[val];
22
23     if ( val >= 0x0340 && val <= 0x05BF)
24         return upper_table_2[val-0x0340];
25
26     if ( val >= 0x1D40 && val <= 0x1D7F)
27         return upper_table_3[val-0x1D40];
28
29     if ( val >= 0x1E00 && val <= 0x1FFF)
30         return upper_table_4[val-0x1E00];
31
32     if ( val >= 0x2140 && val <= 0x21BF)
33         return upper_table_5[val-0x2140];
34
35     if ( val >= 0x24C0 && val <= 0x24FF)
36         return upper_table_6[val-0x24C0];
37
38     if ( val >= 0x2C00 && val <= 0x2D3F)
39         return upper_table_7[val-0x2C00];
40
41     if ( val >= 0xA640 && val <= 0xA6BF)
42         return upper_table_8[val-0xA640];
43
44     if ( val >= 0xA700 && val <= 0xA7BF)
45         return upper_table_9[val-0xA700];
46
47     if ( val >= 0xFF40 && val <= 0xFF7F)
48         return upper_table_10[val-0xFF40];
49
50         return (val);
51 }
52
53 /*******************************************************************
54  Convert a surrogate pair to upper case.
55 *******************************************************************/
56 uint32_t toupper_sp(uint32_t val)
57 {
58     if ( val >= 0xD801DC00 && val <= 0xD801DC7F)
59         return upper_table_sp_1[val-0xD801DC00];
60
61     if ( val >= 0xD806DCC0 && val <= 0xD806DCFF)
62         return upper_table_sp_2[val-0xD806DCC0];
63
64         return (val);
65 }
66
67 /*******************************************************************
68  Convert a wide character to lower case.
69 *******************************************************************/
70 ucs2_t tolower_w(ucs2_t val)
71 {
72     if ( val <= 0x007F)
73         return lower_table_1[val];
74
75     if ( val >= 0x00C0 && val <= 0x027F)
76         return lower_table_2[val-0x00C0];
77
78     if ( val >= 0x0340 && val <= 0x057F)
79         return lower_table_3[val-0x0340];
80
81     if ( val >= 0x1080 && val <= 0x10FF)
82         return lower_table_4[val-0x1080];
83
84     if ( val >= 0x1E00 && val <= 0x1FFF)
85         return lower_table_5[val-0x1E00];
86
87     if ( val >= 0x2100 && val <= 0x21BF)
88         return lower_table_6[val-0x2100];
89
90     if ( val >= 0x2480 && val <= 0x24FF)
91         return lower_table_7[val-0x2480];
92
93     if ( val >= 0x2C00 && val <= 0x2CFF)
94         return lower_table_8[val-0x2C00];
95
96     if ( val >= 0xA640 && val <= 0xA6BF)
97         return lower_table_9[val-0xA640];
98
99     if ( val >= 0xA700 && val <= 0xA7BF)
100         return lower_table_10[val-0xA700];
101
102     if ( val >= 0xFF00 && val <= 0xFF3F)
103         return lower_table_11[val-0xFF00];
104
105         return (val);
106 }
107
108 /*******************************************************************
109  Convert a surrogate pair to lower case.
110 *******************************************************************/
111 uint32_t tolower_sp(uint32_t val)
112 {
113     if ( val >= 0xD801DC00 && val <= 0xD801DC3F)
114         return lower_table_sp_1[val-0xD801DC00];
115
116     if ( val >= 0xD806DC80 && val <= 0xD806DCBF)
117         return lower_table_sp_2[val-0xD806DC80];
118
119         return (val);
120 }
121
122 /* EOF */