Lines Matching refs:len

38  * which to read, from the left, `len' which means the maximum number
45 der_get_unsigned (const unsigned char *p, size_t len,
49 size_t oldlen = len;
51 if (len == sizeof(unsigned) + 1 && p[0] == 0)
53 else if (len > sizeof(unsigned))
56 while (len--)
64 der_get_integer (const unsigned char *p, size_t len,
68 size_t oldlen = len;
70 if (len > sizeof(int))
73 if (len > 0) {
75 while (--len)
84 der_get_length (const unsigned char *p, size_t len,
89 if (len <= 0)
91 --len;
107 if (len < v)
118 der_get_boolean(const unsigned char *p, size_t len, int *data, size_t *size)
120 if(len < 1)
131 der_get_general_string (const unsigned char *p, size_t len,
137 p1 = memchr(p, 0, len);
144 while ((size_t)(p1 - p) < len && *p1 == '\0')
146 if ((size_t)(p1 - p) != len)
149 if (len > len + 1)
152 s = malloc (len + 1);
155 memcpy (s, p, len);
156 s[len] = '\0';
158 if(size) *size = len;
163 der_get_utf8string (const unsigned char *p, size_t len,
166 return der_get_general_string(p, len, str, size);
170 der_get_printable_string(const unsigned char *p, size_t len,
173 str->length = len;
174 str->data = malloc(len + 1);
177 memcpy(str->data, p, len);
178 ((char *)str->data)[len] = '\0';
179 if(size) *size = len;
184 der_get_ia5_string(const unsigned char *p, size_t len,
187 return der_get_printable_string(p, len, str, size);
191 der_get_bmp_string (const unsigned char *p, size_t len,
196 if (len & 1)
198 data->length = len / 2;
216 if (size) *size = len;
222 der_get_universal_string (const unsigned char *p, size_t len,
227 if (len & 3)
229 data->length = len / 4;
247 if (size) *size = len;
252 der_get_visible_string (const unsigned char *p, size_t len,
255 return der_get_general_string(p, len, str, size);
259 der_get_octet_string (const unsigned char *p, size_t len,
262 data->length = len;
263 data->data = malloc(len);
266 memcpy (data->data, p, len);
267 if(size) *size = len;
272 der_get_octet_string_ber (const unsigned char *p, size_t len,
279 size_t l, datalen, oldlen = len;
284 while (len) {
285 e = der_get_tag (p, len, &class, &type, &tag, &l);
302 len -= l;
303 e = der_get_length (p, len, &datalen, &l);
306 len -= l;
308 if (datalen > len)
326 len -= datalen;
330 if(size) *size = oldlen - len;
341 der_get_heim_integer (const unsigned char *p, size_t len,
348 if (len == 0) {
358 data->length = len;
382 data->length = len;
398 *size = len;
427 der_get_time (const unsigned char *p, size_t len,
433 if (len > len + 1 || len == 0)
436 times = malloc(len + 1);
439 memcpy(times, p, len);
440 times[len] = '\0';
443 if(size) *size = len;
448 der_get_generalized_time (const unsigned char *p, size_t len,
451 return der_get_time(p, len, data, size);
455 der_get_utctime (const unsigned char *p, size_t len,
458 return der_get_time(p, len, data, size);
462 der_get_oid (const unsigned char *p, size_t len,
466 size_t oldlen = len;
468 if (len < 1)
471 if (len > len + 1)
474 if (len + 1 > UINT_MAX/sizeof(data->components[0]))
477 data->components = malloc((len + 1) * sizeof(data->components[0]));
482 --len;
484 for (n = 2; len > 0; ++n) {
488 --len;
496 } while (len > 0 && p[-1] & 0x80);
510 der_get_tag (const unsigned char *p, size_t len,
515 if (len < 1)
520 p++; len--; ret++;
526 if(len < 1)
534 p++; len--; ret++;
542 der_match_tag (const unsigned char *p, size_t len,
549 e = der_match_tag2(p, len, class, &thistype, tag, size);
556 der_match_tag2 (const unsigned char *p, size_t len,
565 e = der_get_tag (p, len, &thisclass, type, &thistag, &l);
578 der_match_tag_and_length (const unsigned char *p, size_t len,
585 e = der_match_tag2 (p, len, class, type, tag, &l);
588 len -= l;
590 e = der_get_length (p, len, length_ret, &l);
612 _heim_fix_dce(size_t reallen, size_t *len)
616 if(*len < reallen)
618 *len = reallen;
623 der_get_bit_string (const unsigned char *p, size_t len,
626 if (len < 1)
630 if (len - 1 == 0 && p[0] != 0)
634 if ((len - 1) >> (sizeof(len) * 8 - 3))
636 data->length = (len - 1) * 8;
637 data->data = malloc(len - 1);
638 if (data->data == NULL && (len - 1) != 0)
641 if (len - 1 != 0) {
642 memcpy (data->data, p + 1, len - 1);
645 if(size) *size = len;