Lines Matching defs:sip_header

44 sip_atoi(_sip_header_t *sip_header, int *num)
49 while (sip_header->sip_hdr_current < sip_header->sip_hdr_end) {
50 if (isspace(*sip_header->sip_hdr_current)) {
51 sip_header->sip_hdr_current++;
54 } else if (isdigit(*sip_header->sip_hdr_current)) {
56 (*sip_header->sip_hdr_current - '0');
58 sip_header->sip_hdr_current++;
72 sip_find_token(_sip_header_t *sip_header, char token)
74 while (sip_header->sip_hdr_current < sip_header->sip_hdr_end) {
76 *sip_header->sip_hdr_current == SIP_COMMA) {
77 sip_header->sip_hdr_current--;
80 if (*sip_header->sip_hdr_current++ == token) {
95 sip_find_cr(_sip_header_t *sip_header)
97 sip_header->sip_hdr_current = sip_header->sip_hdr_end;
98 while (*sip_header->sip_hdr_current-- != '\n') {
99 if (sip_header->sip_hdr_current == sip_header->sip_hdr_start)
110 sip_find_separator(_sip_header_t *sip_header, char separator_1st,
114 while (sip_header->sip_hdr_current < sip_header->sip_hdr_end) {
115 if (ignore_space && (*sip_header->sip_hdr_current == SIP_SP)) {
116 sip_header->sip_hdr_current++;
119 if (isspace(*sip_header->sip_hdr_current) ||
121 (*sip_header->sip_hdr_current == separator_1st)) ||
123 (*sip_header->sip_hdr_current == separator_2nd)) ||
125 (*sip_header->sip_hdr_current == separator_3rd))) {
131 if (*sip_header->sip_hdr_current == '\\')
132 sip_header->sip_hdr_current++;
133 sip_header->sip_hdr_current++;
142 sip_find_white_space(_sip_header_t *sip_header)
144 while (sip_header->sip_hdr_current < sip_header->sip_hdr_end) {
145 if (isspace(*sip_header->sip_hdr_current))
147 sip_header->sip_hdr_current++;
156 sip_skip_white_space(_sip_header_t *sip_header)
158 while (sip_header->sip_hdr_current < sip_header->sip_hdr_end) {
159 if (!isspace(*sip_header->sip_hdr_current))
161 sip_header->sip_hdr_current++;
171 sip_reverse_skip_white_space(_sip_header_t *sip_header)
173 while (sip_header->sip_hdr_current >= sip_header->sip_hdr_start) {
174 if (!isspace(*sip_header->sip_hdr_current))
176 sip_header->sip_hdr_current--;
185 sip_parse_goto_values(_sip_header_t *sip_header)
187 if (sip_find_token(sip_header, SIP_HCOLON) != 0)
189 if (sip_skip_white_space(sip_header) != 0)
199 sip_goto_next_value(_sip_header_t *sip_header)
203 while (sip_header->sip_hdr_current < sip_header->sip_hdr_end) {
204 if (*sip_header->sip_hdr_current == SIP_QUOTE) {
210 *sip_header->sip_hdr_current == SIP_COMMA) {
214 sip_header->sip_hdr_current--;
217 sip_header->sip_hdr_current++;
228 sip_parse_params(_sip_header_t *sip_header, sip_param_t **parsed_list)
244 if (sip_skip_white_space(sip_header) != 0)
246 if (*sip_header->sip_hdr_current != SIP_SEMI)
249 sip_header->sip_hdr_current++;
265 if (sip_skip_white_space(sip_header) != 0)
270 tmp_ptr = sip_header->sip_hdr_current;
273 if (sip_find_separator(sip_header, SIP_EQUAL, SIP_SEMI,
276 sip_header->sip_hdr_current - tmp_ptr;
286 sip_header->sip_hdr_current - tmp_ptr;
288 if (sip_skip_white_space(sip_header) != 0 ||
289 *sip_header->sip_hdr_current == SIP_COMMA) {
294 if (*sip_header->sip_hdr_current == SIP_SEMI) {
299 assert(*sip_header->sip_hdr_current == SIP_EQUAL);
304 sip_header->sip_hdr_current++;
306 if (sip_skip_white_space(sip_header) != 0)
309 if (*sip_header->sip_hdr_current == SIP_QUOTE) {
310 sip_header->sip_hdr_current++;
317 param->param_value.sip_str_ptr = sip_header->sip_hdr_current;
318 tmp_ptr = sip_header->sip_hdr_current;
320 if (quoted_name && sip_find_token(sip_header, SIP_QUOTE) != 0) {
322 } else if (sip_find_separator(sip_header, SIP_SEMI, SIP_COMMA,
326 param->param_value.sip_str_len = sip_header->sip_hdr_current -
339 sip_is_empty_hdr(_sip_header_t *sip_header)
341 if (sip_find_token(sip_header, SIP_HCOLON) != 0) {
342 sip_header->sip_hdr_current = sip_header->sip_hdr_start;
346 if (sip_skip_white_space(sip_header) == 0) {
347 sip_header->sip_hdr_current = sip_header->sip_hdr_start;
351 sip_header->sip_hdr_current = sip_header->sip_hdr_start;
379 parsed_header->sip_header = hdr;
413 sip_prim_parsers(_sip_header_t *sip_header, sip_parsed_header_t **header)
415 if (sip_header == NULL || header == NULL)
421 if (sip_header->sip_hdr_parsed != NULL) {
422 *header = sip_header->sip_hdr_parsed;
427 assert(sip_header->sip_hdr_start == sip_header->sip_hdr_current);
429 if (sip_parse_goto_values(sip_header) != 0)
439 sip_get_protocol_version(_sip_header_t *sip_header,
442 if (sip_skip_white_space(sip_header) != 0)
445 if (strncasecmp(sip_header->sip_hdr_current, SIP, strlen(SIP)) == 0) {
447 sip_header->sip_hdr_current;
450 if (sip_find_token(sip_header, SIP_SLASH) != 0)
452 if (sip_skip_white_space(sip_header) != 0)
456 sip_header->sip_hdr_current;
457 while (isdigit(*sip_header->sip_hdr_current)) {
458 sip_header->sip_hdr_current++;
459 if (sip_header->sip_hdr_current >=
460 sip_header->sip_hdr_end) {
464 if (*sip_header->sip_hdr_current != SIP_PERIOD)
466 sip_header->sip_hdr_current++;
468 if (!isdigit(*sip_header->sip_hdr_current))
470 while (isdigit(*sip_header->sip_hdr_current)) {
471 sip_header->sip_hdr_current++;
472 if (sip_header->sip_hdr_current >=
473 sip_header->sip_hdr_end) {
479 sip_header->sip_hdr_current -
518 parsed_header->sip_header = hdr;
686 parsed_header->sip_header = hdr;
740 parsed_header->sip_header = hdr;
945 parsed_header->sip_header = hdr;
994 parsed_header->sip_header = hdr;
1142 _sip_get_request_uri(_sip_header_t *sip_header, sip_message_type_t *msg_info)
1147 if (sip_skip_white_space(sip_header) != 0)
1149 start_ptr = sip_header->sip_hdr_current;
1151 while (!isspace(*sip_header->sip_hdr_current)) {
1152 if (sip_header->sip_hdr_current >= sip_header->sip_hdr_end)
1154 sip_header->sip_hdr_current++;
1157 size = sip_header->sip_hdr_current - start_ptr;
1176 sip_parse_first_line(_sip_header_t *sip_header, sip_message_type_t **msg_info)
1182 if (sip_header == NULL || msg_info == NULL)
1185 if (sip_skip_white_space(sip_header) != 0)
1191 if (sip_header->sip_hdr_current + strlen(SIP_VERSION) >=
1192 sip_header->sip_hdr_end) {
1196 assert(mutex_held(&sip_header->sip_hdr_sipmsg->sip_msg_mutex));
1205 ret = sip_get_protocol_version(sip_header,
1214 if (sip_skip_white_space(sip_header) != 0) {
1223 if (sip_skip_white_space(sip_header) != 0) {
1227 if (sip_header->sip_hdr_current + SIP_SIZE_OF_STATUS_CODE >=
1228 sip_header->sip_hdr_end) {
1233 if (sip_atoi(sip_header,
1248 if (sip_skip_white_space(sip_header) != 0) {
1253 sip_header->sip_hdr_current;
1254 if (sip_find_cr(sip_header) != 0) {
1259 sip_header->sip_hdr_current -
1271 sip_header->sip_hdr_current,
1274 sip_header->sip_hdr_current +=
1276 if (!isspace(*sip_header->sip_hdr_current++) ||
1277 !isalpha(*sip_header->sip_hdr_current)) {
1282 if ((ret = _sip_get_request_uri(sip_header,
1291 ret = sip_get_protocol_version(sip_header,