- Timestamp:
- Apr 29, 2007 6:23:11 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/branches/split-3rd-party/pjsip/src/pjsip/sip_parser.c
r1220 r1221 139 139 pj_pool_t *pool, 140 140 pj_str_t *pname, 141 pj_str_t *pvalue); 141 pj_str_t *pvalue, 142 unsigned option); 142 143 static void int_parse_uri_param( pj_scanner *scanner, 143 144 pj_pool_t *pool, … … 1118 1119 /* Parse parameter (";" pname ["=" pvalue]) in header. */ 1119 1120 static void int_parse_param( pj_scanner *scanner, pj_pool_t *pool, 1120 pj_str_t *pname, pj_str_t *pvalue) 1121 pj_str_t *pname, pj_str_t *pvalue, 1122 unsigned option) 1121 1123 { 1122 1124 /* Get ';' character */ … … 1124 1126 1125 1127 /* Get pname and optionally pvalue */ 1126 pjsip_parse_param_imp(scanner, pool, pname, pvalue, 1127 PJSIP_PARSE_REMOVE_QUOTE); 1128 pjsip_parse_param_imp(scanner, pool, pname, pvalue, option); 1128 1129 } 1129 1130 … … 1536 1537 * Accept, Allow, Supported 1537 1538 */ 1538 if (*scanner->curptr == '\r' || *scanner->curptr == '\n') { 1539 if (pj_scan_is_eof(scanner) || 1540 *scanner->curptr == '\r' || *scanner->curptr == '\n') 1541 { 1539 1542 goto end; 1540 1543 } … … 1548 1551 &hdr->values[hdr->count]); 1549 1552 hdr->count++; 1553 1554 if (hdr->count >= PJSIP_GENERIC_ARRAY_MAX_COUNT) 1555 break; 1550 1556 } 1551 1557 … … 1614 1620 pj_str_t pname, pvalue; 1615 1621 1616 int_parse_param( scanner, pool, &pname, &pvalue );1622 int_parse_param( scanner, pool, &pname, &pvalue, 0); 1617 1623 if (!parser_stricmp(pname, pjsip_Q_STR) && pvalue.slen) { 1618 1624 char *dot_pos = pj_memchr(pvalue.ptr, '.', pvalue.slen); … … 1707 1713 while (*scanner->curptr == ';') { 1708 1714 pj_str_t pname, pvalue; 1709 int_parse_param(scanner, ctx->pool, &pname, &pvalue );1715 int_parse_param(scanner, ctx->pool, &pname, &pvalue, 0); 1710 1716 concat_param(&hdr->media.param, ctx->pool, &pname, &pvalue); 1711 1717 } … … 1760 1766 pj_str_t pname, pvalue; 1761 1767 1762 int_parse_param( scanner, pool, &pname, &pvalue );1768 int_parse_param( scanner, pool, &pname, &pvalue, 0); 1763 1769 1764 1770 if (!parser_stricmp(pname, pjsip_TAG_STR)) { … … 1844 1850 pj_str_t pname, pvalue; 1845 1851 1846 int_parse_param( scanner, pool, &pname, &pvalue );1852 int_parse_param( scanner, pool, &pname, &pvalue, 0); 1847 1853 1848 1854 if (!parser_stricmp(pname, pjsip_BRANCH_STR) && pvalue.slen) { … … 1905 1911 while (*scanner->curptr == ';') { 1906 1912 pjsip_param *p = pj_pool_alloc(pool, sizeof(pjsip_param)); 1907 int_parse_param(scanner, pool, &p->name, &p->value );1913 int_parse_param(scanner, pool, &p->name, &p->value, 0); 1908 1914 pj_list_insert_before(&hdr->other_param, p); 1909 1915 }
Note: See TracChangeset
for help on using the changeset viewer.