Lines Matching refs:limit

67 		      const char *limit, int *shift)  in string_len()  argument
71 while (dptr < limit && isalpha(*dptr)) { in string_len()
79 const char *limit, int *shift) in digits_len() argument
82 while (dptr < limit && isdigit(*dptr)) { in digits_len()
100 static int word_len(const char *dptr, const char *limit) in word_len() argument
103 while (dptr < limit && iswordc(*dptr)) { in word_len()
111 const char *limit, int *shift) in callid_len() argument
115 len = word_len(dptr, limit); in callid_len()
117 if (!len || dptr == limit || *dptr != '@') in callid_len()
122 domain_len = word_len(dptr, limit); in callid_len()
130 const char *limit, int *shift) in media_len() argument
132 int len = string_len(ct, dptr, limit, shift); in media_len()
135 if (dptr >= limit || *dptr != ' ') in media_len()
140 return len + digits_len(ct, dptr, limit, shift); in media_len()
145 const char *limit, bool delim) in sip_parse_addr() argument
156 ret = in4_pton(cp, limit - cp, (u8 *)&addr->ip, -1, &end); in sip_parse_addr()
161 if (cp < limit && *cp == '[') in sip_parse_addr()
166 ret = in6_pton(cp, limit - cp, (u8 *)&addr->ip6, -1, &end); in sip_parse_addr()
170 if (end < limit && *end == ']') in sip_parse_addr()
186 const char *limit, int *shift) in epaddr_len() argument
191 if (!sip_parse_addr(ct, dptr, &dptr, &addr, limit, true)) { in epaddr_len()
199 dptr += digits_len(ct, dptr, limit, shift); in epaddr_len()
206 const char *limit, int *shift) in skp_epaddr_len() argument
214 while (dptr < limit && in skp_epaddr_len()
220 if (dptr < limit && *dptr == '@') { in skp_epaddr_len()
228 return epaddr_len(ct, dptr, limit, shift); in skp_epaddr_len()
242 const char *start = dptr, *limit = dptr + datalen, *end; in ct_sip_parse_request() local
248 mlen = string_len(ct, dptr, limit, NULL); in ct_sip_parse_request()
252 if (++dptr >= limit) in ct_sip_parse_request()
256 for (; dptr < limit - strlen("sip:"); dptr++) { in ct_sip_parse_request()
264 if (!skp_epaddr_len(ct, dptr, limit, &shift)) in ct_sip_parse_request()
268 if (!sip_parse_addr(ct, dptr, &end, addr, limit, true)) in ct_sip_parse_request()
270 if (end < limit && *end == ':') { in ct_sip_parse_request()
312 static const char *sip_follow_continuation(const char *dptr, const char *limit) in sip_follow_continuation() argument
315 if (++dptr >= limit) in sip_follow_continuation()
320 if (++dptr >= limit) in sip_follow_continuation()
329 for (; dptr < limit; dptr++) { in sip_follow_continuation()
336 static const char *sip_skip_whitespace(const char *dptr, const char *limit) in sip_skip_whitespace() argument
338 for (; dptr < limit; dptr++) { in sip_skip_whitespace()
343 dptr = sip_follow_continuation(dptr, limit); in sip_skip_whitespace()
350 static const char *ct_sip_header_search(const char *dptr, const char *limit, in ct_sip_header_search() argument
353 for (limit -= len; dptr < limit; dptr++) { in ct_sip_header_search()
355 dptr = sip_follow_continuation(dptr, limit); in ct_sip_header_search()
373 const char *start = dptr, *limit = dptr + datalen; in ct_sip_get_header() local
376 for (dptr += dataoff; dptr < limit; dptr++) { in ct_sip_get_header()
380 if (++dptr >= limit) in ct_sip_get_header()
383 if (++dptr >= limit) in ct_sip_get_header()
393 if (limit - dptr >= hdr->len && in ct_sip_get_header()
396 else if (hdr->cname && limit - dptr >= hdr->clen + 1 && in ct_sip_get_header()
404 dptr = sip_skip_whitespace(dptr, limit); in ct_sip_get_header()
407 if (*dptr != ':' || ++dptr >= limit) in ct_sip_get_header()
411 dptr = sip_skip_whitespace(dptr, limit); in ct_sip_get_header()
417 dptr = ct_sip_header_search(dptr, limit, hdr->search, in ct_sip_get_header()
424 *matchlen = hdr->match_len(ct, dptr, limit, &shift); in ct_sip_get_header()
441 const char *start = dptr, *limit = dptr + datalen; in ct_sip_next_header() local
446 dptr = ct_sip_header_search(dptr, limit, ",", strlen(",")); in ct_sip_next_header()
450 dptr = ct_sip_header_search(dptr, limit, hdr->search, hdr->slen); in ct_sip_next_header()
456 *matchlen = hdr->match_len(ct, dptr, limit, &shift); in ct_sip_next_header()
511 const char *c, *limit = dptr + datalen; in ct_sip_parse_header_uri() local
521 if (!sip_parse_addr(ct, dptr + *matchoff, &c, addr, limit, true)) in ct_sip_parse_header_uri()
543 const char *limit = dptr + datalen; in ct_sip_parse_param() local
547 limit = ct_sip_header_search(dptr + dataoff, limit, ",", strlen(",")); in ct_sip_parse_param()
548 if (!limit) in ct_sip_parse_param()
549 limit = dptr + datalen; in ct_sip_parse_param()
551 start = ct_sip_header_search(dptr + dataoff, limit, name, strlen(name)); in ct_sip_parse_param()
556 end = ct_sip_header_search(start, limit, ";", strlen(";")); in ct_sip_parse_param()
558 end = limit; in ct_sip_parse_param()
572 const char *limit = dptr + datalen; in ct_sip_parse_address_param() local
575 limit = ct_sip_header_search(dptr + dataoff, limit, ",", strlen(",")); in ct_sip_parse_address_param()
576 if (!limit) in ct_sip_parse_address_param()
577 limit = dptr + datalen; in ct_sip_parse_address_param()
579 start = ct_sip_header_search(dptr + dataoff, limit, name, strlen(name)); in ct_sip_parse_address_param()
584 if (!sip_parse_addr(ct, start, &end, addr, limit, delim)) in ct_sip_parse_address_param()
599 const char *limit = dptr + datalen; in ct_sip_parse_numerical_param() local
603 limit = ct_sip_header_search(dptr + dataoff, limit, ",", strlen(",")); in ct_sip_parse_numerical_param()
604 if (!limit) in ct_sip_parse_numerical_param()
605 limit = dptr + datalen; in ct_sip_parse_numerical_param()
607 start = ct_sip_header_search(dptr + dataoff, limit, name, strlen(name)); in ct_sip_parse_numerical_param()
648 const char *limit) in sdp_parse_addr() argument
656 ret = in4_pton(cp, limit - cp, (u8 *)&addr->ip, -1, &end); in sdp_parse_addr()
659 ret = in6_pton(cp, limit - cp, (u8 *)&addr->ip6, -1, &end); in sdp_parse_addr()
674 const char *limit, int *shift) in sdp_addr_len() argument
679 if (!sdp_parse_addr(ct, dptr, &dptr, &addr, limit)) { in sdp_addr_len()
711 static const char *ct_sdp_header_search(const char *dptr, const char *limit, in ct_sdp_header_search() argument
714 for (limit -= len; dptr < limit; dptr++) { in ct_sdp_header_search()
734 const char *start = dptr, *limit = dptr + datalen; in ct_sip_get_sdp_header() local
741 for (dptr += dataoff; dptr < limit; dptr++) { in ct_sip_get_sdp_header()
745 if (++dptr >= limit) in ct_sip_get_sdp_header()
748 if (++dptr >= limit) in ct_sip_get_sdp_header()
753 limit - dptr >= thdr->len && in ct_sip_get_sdp_header()
756 else if (limit - dptr >= hdr->len && in ct_sip_get_sdp_header()
764 dptr = ct_sdp_header_search(dptr, limit, hdr->search, in ct_sip_get_sdp_header()
771 *matchlen = hdr->match_len(ct, dptr, limit, &shift); in ct_sip_get_sdp_header()