Changeset 4859 for pjproject/trunk


Ignore:
Timestamp:
Jun 10, 2014 2:56:56 AM (10 years ago)
Author:
riza
Message:

Re #1770: Fixed issue with "other params" quotes when proxying WWW-authenticate header.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/src/pjsip/sip_auth_parser.c

    r3553 r4859  
    138138 
    139139    for (;;) { 
    140         pj_str_t name, value; 
    141  
    142         pjsip_parse_param_imp(scanner, pool, &name, &value, 
    143                               PJSIP_PARSE_REMOVE_QUOTE); 
     140        pj_str_t name, value, unquoted_value; 
     141 
     142        pjsip_parse_param_imp(scanner, pool, &name, &value, 0); 
     143 
     144        if (value.ptr && (value.ptr[0] == '"')) { 
     145            unquoted_value.ptr = value.ptr + 1; 
     146            unquoted_value.slen = value.slen - 2; 
     147        } else { 
     148            unquoted_value.ptr = value.ptr; 
     149            unquoted_value.slen = value.slen; 
     150        } 
    144151 
    145152        if (!pj_stricmp(&name, &pjsip_REALM_STR)) { 
    146             chal->realm = value; 
     153            chal->realm = unquoted_value; 
    147154 
    148155        } else if (!pj_stricmp(&name, &pjsip_DOMAIN_STR)) { 
    149             chal->domain = value; 
     156            chal->domain = unquoted_value; 
    150157 
    151158        } else if (!pj_stricmp(&name, &pjsip_NONCE_STR)) { 
    152             chal->nonce = value; 
     159            chal->nonce = unquoted_value; 
    153160 
    154161        } else if (!pj_stricmp(&name, &pjsip_OPAQUE_STR)) { 
    155             chal->opaque = value; 
     162            chal->opaque = unquoted_value; 
    156163 
    157164        } else if (!pj_stricmp(&name, &pjsip_STALE_STR)) { 
     
    163170 
    164171        } else if (!pj_stricmp(&name, &pjsip_ALGORITHM_STR)) { 
    165             chal->algorithm = value; 
     172            chal->algorithm = unquoted_value; 
    166173 
    167174 
    168175        } else if (!pj_stricmp(&name, &pjsip_QOP_STR)) { 
    169             chal->qop = value; 
     176            chal->qop = unquoted_value; 
    170177 
    171178        } else { 
Note: See TracChangeset for help on using the changeset viewer.