Browse Source

parser/parse_addr_spec: allow comma in tag parameter

- some user agents uses it and it was in older versions
Daniel-Constantin Mierla 11 years ago
parent
commit
6156d2572e
1 changed files with 6 additions and 3 deletions
  1. 6 3
      parser/parse_addr_spec.c

+ 6 - 3
parser/parse_addr_spec.c

@@ -480,9 +480,12 @@ semicolon_add_param:
 							goto error;
 							goto error;
 					}
 					}
 					break;
 					break;
-				}
-				else
-				{
+				} else {
+					if(status==S_PARA_VALUE && param->type==TAG_PARAM) {
+						/* if comma is not separator, allow it as part of value
+						 * - some user agents use it */
+						break;
+					}
 					LOG( L_ERR, "ERROR parse_to_param : "
 					LOG( L_ERR, "ERROR parse_to_param : "
 							"invalid character ',' in status %d: <<%.*s>>\n",
 							"invalid character ',' in status %d: <<%.*s>>\n",
 							status, (int)(tmp-buffer), ZSW(buffer));
 							status, (int)(tmp-buffer), ZSW(buffer));