Merged revisions 54787 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r54787 | oej | 2007-02-16 13:06:23 +0100 (Fri, 16 Feb 2007) | 2 lines Issue #7541 - Handle multipart attachments to SIP messages - even if boundary is quoted. ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@54806 f38db490-d61c-443f-a65b-d21fe96a405b
This commit is contained in:
parent
c55d56714d
commit
bfa6998730
|
@ -4870,6 +4870,7 @@ static int find_sdp(struct sip_request *req)
|
|||
const char *search;
|
||||
char *boundary;
|
||||
unsigned int x;
|
||||
int boundaryisquoted = FALSE;
|
||||
|
||||
content_type = get_header(req, "Content-Type");
|
||||
|
||||
|
@ -4889,15 +4890,24 @@ static int find_sdp(struct sip_request *req)
|
|||
return 0;
|
||||
|
||||
search += 10;
|
||||
|
||||
if (ast_strlen_zero(search))
|
||||
return 0;
|
||||
|
||||
/* If the boundary is quoted with ", remove quote */
|
||||
if (*search == '\"') {
|
||||
search++;
|
||||
boundaryisquoted = TRUE;
|
||||
}
|
||||
|
||||
/* make a duplicate of the string, with two extra characters
|
||||
at the beginning */
|
||||
boundary = ast_strdupa(search - 2);
|
||||
boundary[0] = boundary[1] = '-';
|
||||
|
||||
/* Remove final quote */
|
||||
if (boundaryisquoted)
|
||||
boundary[strlen(boundary) - 1] = '\0';
|
||||
|
||||
/* search for the boundary marker, but stop when there are not enough
|
||||
lines left for it, the Content-Type header and at least one line of
|
||||
body */
|
||||
|
|
Reference in New Issue