Changeset 745 for trunk/server/source4/heimdal/lib/wind
- Timestamp:
- Nov 27, 2012, 4:43:17 PM (13 years ago)
- Location:
- trunk/server
- Files:
-
- 6 deleted
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/server
- Property svn:mergeinfo changed
/vendor/current merged: 581,587,591,594,597,600,615,618,740
- Property svn:mergeinfo changed
-
trunk/server/source4/heimdal/lib/wind/errorlist.c
r414 r745 50 50 51 51 int 52 _wind_stringprep_error( uint32_t cp, wind_profile_flags flags)52 _wind_stringprep_error(const uint32_t cp, wind_profile_flags flags) 53 53 { 54 54 struct error_entry ee = {cp}; -
trunk/server/source4/heimdal/lib/wind/gen-bidi.py
r414 r745 71 71 bidi_c.file.write( 72 72 ''' 73 #include <stdlib.h> 73 74 #include "bidi_table.h" 74 75 -
trunk/server/source4/heimdal/lib/wind/gen-combining.py
r414 r745 74 74 combining_c.file.write( 75 75 ''' 76 #include <stdlib.h> 76 77 #include "combining_table.h" 77 78 -
trunk/server/source4/heimdal/lib/wind/gen-errorlist.py
r414 r745 78 78 errorlist_c.file.write( 79 79 ''' 80 #include <stdlib.h> 80 81 #include "errorlist_table.h" 81 82 -
trunk/server/source4/heimdal/lib/wind/gen-normalize.py
r414 r745 98 98 normalize_c.file.write( 99 99 ''' 100 #include <stdlib.h> 100 101 #include "normalize_table.h" 101 102 -
trunk/server/source4/heimdal/lib/wind/map.c
r414 r745 40 40 41 41 #include "map_table.h" 42 43 RCSID("$Id$");44 42 45 43 static int -
trunk/server/source4/heimdal/lib/wind/normalize.c
r414 r745 40 40 #include <stdlib.h> 41 41 #include <errno.h> 42 #include <stdio.h> 43 44 #include "roken.h" 42 45 43 46 #include "normalize_table.h" 44 45 RCSID("$Id$");46 47 47 48 static int … … 164 165 } 165 166 166 static int 167 cc_cmp(const void *a, const void *b) 168 { 169 const uint32_t *ua = (const uint32_t *)a; 170 const uint32_t *ub = (const uint32_t *)b; 171 172 return _wind_combining_class(*ua) - _wind_combining_class(*ub); 167 static void 168 swap_char(uint32_t * a, uint32_t * b) 169 { 170 uint32_t t; 171 t = *a; 172 *a = *b; 173 *b = t; 174 } 175 176 /* Unicode 5.2.0 D109 Canonical Ordering for a sequence of code points 177 * that all have Canonical_Combining_Class > 0 */ 178 static void 179 canonical_reorder_sequence(uint32_t * a, size_t len) 180 { 181 size_t i, j; 182 183 if (len <= 1) 184 return; 185 186 for (i = 1; i < len; i++) { 187 for (j = i; 188 j > 0 && 189 _wind_combining_class(a[j]) < _wind_combining_class(a[j-1]); 190 j--) 191 swap_char(&a[j], &a[j-1]); 192 } 173 193 } 174 194 … … 176 196 canonical_reorder(uint32_t *tmp, size_t tmp_len) 177 197 { 178 unsignedi;198 size_t i; 179 199 180 200 for (i = 0; i < tmp_len; ++i) { … … 186 206 ++j) 187 207 ; 188 qsort(&tmp[i], j - i, sizeof(unsigned), 189 cc_cmp); 208 canonical_reorder_sequence(&tmp[i], j - i); 190 209 i = j; 191 210 } … … 283 302 int ret; 284 303 304 if (in_len == 0) { 305 *out_len = 0; 306 return 0; 307 } 308 285 309 tmp_len = in_len * 4; 286 310 if (tmp_len < MAX_LENGTH_CANON) -
trunk/server/source4/heimdal/lib/wind/stringprep.c
r414 r745 40 40 #include <errno.h> 41 41 42 RCSID("$Id$");43 44 42 /** 45 43 * Process a input UCS4 string according a string-prep profile. … … 61 59 { 62 60 size_t tmp_len = in_len * 3; 63 uint32_t *tmp = malloc(tmp_len * sizeof(uint32_t));61 uint32_t *tmp; 64 62 int ret; 65 63 size_t olen; 66 64 65 if (in_len == 0) { 66 *out_len = 0; 67 return 0; 68 } 69 70 tmp = malloc(tmp_len * sizeof(uint32_t)); 67 71 if (tmp == NULL) 68 72 return ENOMEM; -
trunk/server/source4/heimdal/lib/wind/stringprep.py
r414 r745 47 47 48 48 name_map = ['B.1', 'B.2'] 49 ldap_map = ['rfc4518-map', 'B.2'] 49 ldap_map = ['rfc4518-map'] 50 ldap_case_map = ['rfc4518-map', 'B.2'] 50 51 sasl_map = ['C.1.2', 'B.1'] 51 52 … … 70 71 _merge_table(d, dict(map(lambda x: [x, ['name']], name_map))) 71 72 _merge_table(d, dict(map(lambda x: [x, ['ldap']], ldap_map))) 73 _merge_table(d, dict(map(lambda x: [x, ['ldap_case']], ldap_case_map))) 72 74 _merge_table(d, dict(map(lambda x: [x, ['sasl']], sasl_map))) 73 75 return d -
trunk/server/source4/heimdal/lib/wind/utf8.c
r414 r745 34 34 #include <config.h> 35 35 #include "windlocl.h" 36 37 RCSID("$Id$");38 36 39 37 static int -
trunk/server/source4/heimdal/lib/wind/wind.h
r414 r745 47 47 #define WIND_PROFILE_SASL 0x00000002 48 48 #define WIND_PROFILE_LDAP 0x00000004 49 #define WIND_PROFILE_LDAP_CASE 0x00000008 49 50 50 51 #define WIND_PROFILE_LDAP_CASE_EXACT_ATTRIBUTE 0x00010000 -
trunk/server/source4/heimdal/lib/wind/windlocl.h
r414 r745 42 42 43 43 #include <krb5-types.h> 44 #include <roken.h> 44 45 45 46 #include "wind.h"
Note:
See TracChangeset
for help on using the changeset viewer.