added matching of .3g2 file extension
This commit is contained in:
parent
aea228ecc2
commit
89a6e5007d
|
@ -125,10 +125,8 @@ static int decode_multipart(ParseContext *context, List *body)
|
||||||
warning(0, "Parse error reading mime body [hlen=%d, dlen=%d, left=%d]!",
|
warning(0, "Parse error reading mime body [hlen=%d, dlen=%d, left=%d]!",
|
||||||
hlen,dlen, pleft);
|
hlen,dlen, pleft);
|
||||||
mime_entity_destroy(x);
|
mime_entity_destroy(x);
|
||||||
if (content_type)
|
octstr_destroy(content_type);
|
||||||
octstr_destroy(content_type);
|
octstr_destroy(content);
|
||||||
if (content)
|
|
||||||
octstr_destroy(content);
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -152,11 +150,9 @@ static int decode_multipart(ParseContext *context, List *body)
|
||||||
|
|
||||||
gwlist_destroy(ml, (gwlist_item_destructor_t *)mime_entity_destroy);
|
gwlist_destroy(ml, (gwlist_item_destructor_t *)mime_entity_destroy);
|
||||||
if (res < 0) {
|
if (res < 0) {
|
||||||
if (content_type)
|
octstr_destroy(content_type);
|
||||||
octstr_destroy(content_type);
|
octstr_destroy(content);
|
||||||
if (content)
|
return -1;
|
||||||
octstr_destroy(content);
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
} else
|
} else
|
||||||
mime_entity_set_body(x,content);
|
mime_entity_set_body(x,content);
|
||||||
|
@ -433,9 +429,7 @@ static int mms_unpack_well_known_field(List *unpacked, int field_type,
|
||||||
|
|
||||||
case MMS_HEADER_DELIVERY_TIME:
|
case MMS_HEADER_DELIVERY_TIME:
|
||||||
case MMS_HEADER_EXPIRY:
|
case MMS_HEADER_EXPIRY:
|
||||||
case MMS_HEADER_REPLY_CHARGING_DEADLINE:
|
case MMS_HEADER_REPLY_CHARGING_DEADLINE:
|
||||||
|
|
||||||
|
|
||||||
if (ret != WSP_FIELD_VALUE_DATA)
|
if (ret != WSP_FIELD_VALUE_DATA)
|
||||||
warning(0, "Error in value format, field %s!",
|
warning(0, "Error in value format, field %s!",
|
||||||
hname);
|
hname);
|
||||||
|
@ -594,7 +588,7 @@ static int mms_unpack_well_known_field(List *unpacked, int field_type,
|
||||||
}
|
}
|
||||||
|
|
||||||
http_header_add(unpacked, (char *)hname, (char *)ch);
|
http_header_add(unpacked, (char *)hname, (char *)ch);
|
||||||
if (decoded) octstr_destroy(decoded);
|
octstr_destroy(decoded);
|
||||||
return val;
|
return val;
|
||||||
|
|
||||||
value_error:
|
value_error:
|
||||||
|
@ -925,7 +919,7 @@ static void mms_pack_well_known_field(Octstr *os, int field_type, Octstr *value)
|
||||||
warning(0, "MMS: Unknown header with code 0x%02x!", field_type);
|
warning(0, "MMS: Unknown header with code 0x%02x!", field_type);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (encoded) octstr_destroy(encoded);
|
octstr_destroy(encoded);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1106,8 +1100,8 @@ MmsMsg *mms_frombinary(Octstr *msg, Octstr *from)
|
||||||
if (s &&
|
if (s &&
|
||||||
octstr_search(s, octstr_imm("application/vnd.wap.multipart"), 0) == 0)
|
octstr_search(s, octstr_imm("application/vnd.wap.multipart"), 0) == 0)
|
||||||
_m.ismultipart = 1;
|
_m.ismultipart = 1;
|
||||||
if (s)
|
|
||||||
octstr_destroy(s);
|
octstr_destroy(s);
|
||||||
|
|
||||||
s = http_header_value(_m.headers, octstr_imm("X-Mms-Message-Type"));
|
s = http_header_value(_m.headers, octstr_imm("X-Mms-Message-Type"));
|
||||||
if (s) {
|
if (s) {
|
||||||
|
@ -1133,15 +1127,13 @@ MmsMsg *mms_frombinary(Octstr *msg, Octstr *from)
|
||||||
if (!m) { /* This means an error occurred. Delete the interim stuff. */
|
if (!m) { /* This means an error occurred. Delete the interim stuff. */
|
||||||
MmsMsg *msg = &_m;
|
MmsMsg *msg = &_m;
|
||||||
|
|
||||||
if (msg->ismultipart && msg->body.l)
|
if (msg->ismultipart)
|
||||||
gwlist_destroy(msg->body.l, (gwlist_item_destructor_t *)mime_entity_destroy);
|
gwlist_destroy(msg->body.l, (gwlist_item_destructor_t *)mime_entity_destroy);
|
||||||
else if (msg->body.s)
|
else
|
||||||
octstr_destroy(msg->body.s);
|
octstr_destroy(msg->body.s);
|
||||||
|
|
||||||
if (msg->headers)
|
http_destroy_headers(msg->headers);
|
||||||
http_destroy_headers(msg->headers);
|
octstr_destroy(msg->msgId);
|
||||||
if (msg->msgId)
|
|
||||||
octstr_destroy(msg->msgId);
|
|
||||||
}
|
}
|
||||||
return m;
|
return m;
|
||||||
}
|
}
|
||||||
|
@ -1257,8 +1249,8 @@ static void convert_mime_msg(MIMEEntity *m)
|
||||||
|
|
||||||
octstr_destroy(value);
|
octstr_destroy(value);
|
||||||
}
|
}
|
||||||
if (h)
|
|
||||||
http_destroy_headers(h);
|
http_destroy_headers(h);
|
||||||
octstr_destroy(params);
|
octstr_destroy(params);
|
||||||
if ((n = mime_entity_num_parts(m)) > 0)
|
if ((n = mime_entity_num_parts(m)) > 0)
|
||||||
for (i = 0; i < n; i++) {
|
for (i = 0; i < n; i++) {
|
||||||
|
@ -1301,9 +1293,7 @@ static void unconvert_mime_msg(MIMEEntity *m)
|
||||||
strip_boundary_element(h,s);
|
strip_boundary_element(h,s);
|
||||||
mime_replace_headers(m, h);
|
mime_replace_headers(m, h);
|
||||||
http_destroy_headers(h);
|
http_destroy_headers(h);
|
||||||
|
octstr_destroy(params);
|
||||||
if (params)
|
|
||||||
octstr_destroy(params);
|
|
||||||
|
|
||||||
if ((n = mime_entity_num_parts(m)) > 0)
|
if ((n = mime_entity_num_parts(m)) > 0)
|
||||||
for (i = 0; i < n; i++) {
|
for (i = 0; i < n; i++) {
|
||||||
|
@ -1364,7 +1354,7 @@ static void fixup_date(List *headers, Octstr *hname)
|
||||||
break;
|
break;
|
||||||
q = p + (strlen(p) - 1);
|
q = p + (strlen(p) - 1);
|
||||||
while (isspace(*q) && q > p)
|
while (isspace(*q) && q > p)
|
||||||
*q-- = 0;
|
*q-- = 0;
|
||||||
|
|
||||||
http_header_add(headers, octstr_get_cstr(hname), p);
|
http_header_add(headers, octstr_get_cstr(hname), p);
|
||||||
octstr_destroy(s);
|
octstr_destroy(s);
|
||||||
|
@ -1787,8 +1777,7 @@ int mms_replace_header_values(MmsMsg *msg, char *hname, List *value)
|
||||||
Octstr *mms_get_header_value(MmsMsg *msg, Octstr *header)
|
Octstr *mms_get_header_value(MmsMsg *msg, Octstr *header)
|
||||||
{
|
{
|
||||||
gw_assert(msg);
|
gw_assert(msg);
|
||||||
return http_header_value(msg->headers, header);
|
return http_header_value(msg->headers, header);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1816,7 +1805,6 @@ List *mms_get_header_values(MmsMsg *msg, Octstr *header)
|
||||||
|
|
||||||
int mms_convert_readrec2readorig(MmsMsg *msg)
|
int mms_convert_readrec2readorig(MmsMsg *msg)
|
||||||
{
|
{
|
||||||
|
|
||||||
Octstr *s;
|
Octstr *s;
|
||||||
|
|
||||||
gw_assert(msg);
|
gw_assert(msg);
|
||||||
|
@ -1830,10 +1818,8 @@ int mms_convert_readrec2readorig(MmsMsg *msg)
|
||||||
time_t t = time(NULL);
|
time_t t = time(NULL);
|
||||||
s = date_format_http(t);
|
s = date_format_http(t);
|
||||||
mms_replace_header_value(msg, "Date", octstr_get_cstr(s));
|
mms_replace_header_value(msg, "Date", octstr_get_cstr(s));
|
||||||
}
|
}
|
||||||
|
octstr_destroy(s);
|
||||||
if (s)
|
|
||||||
octstr_destroy(s);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -1856,10 +1842,8 @@ MmsMsg *mms_storeconf(char *errstr, char *transid, Octstr *msgloc, int isupload,
|
||||||
m->message_type = MMS_MSGTYPE_MBOX_UPLOAD_CONF;
|
m->message_type = MMS_MSGTYPE_MBOX_UPLOAD_CONF;
|
||||||
http_header_add(m->headers, "X-Mms-Message-Type", "m-mbox-upload-conf");
|
http_header_add(m->headers, "X-Mms-Message-Type", "m-mbox-upload-conf");
|
||||||
}
|
}
|
||||||
http_header_add(m->headers, "X-Mms-Transaction-ID", transid);
|
http_header_add(m->headers, "X-Mms-Transaction-ID", transid);
|
||||||
|
http_header_add(m->headers, "X-Mms-MMS-Version", "1.2"); /* ignore menc for now. */
|
||||||
http_header_add(m->headers, "X-Mms-MMS-Version", "1.2"); /* ignore menc for now. */
|
|
||||||
|
|
||||||
http_header_add(m->headers, "X-Mms-Store-Status", errstr);
|
http_header_add(m->headers, "X-Mms-Store-Status", errstr);
|
||||||
|
|
||||||
if (msgloc)
|
if (msgloc)
|
||||||
|
@ -2035,10 +2019,7 @@ MmsMsg *mms_viewconf(char *transid,
|
||||||
} else
|
} else
|
||||||
http_header_add(m->headers, "X-Mms-Response-Status", "Ok");
|
http_header_add(m->headers, "X-Mms-Response-Status", "Ok");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
msize = mms_msgsize(m);
|
msize = mms_msgsize(m);
|
||||||
|
|
||||||
n = gwlist_len(msgrefs);
|
n = gwlist_len(msgrefs);
|
||||||
msgcount = 0;
|
msgcount = 0;
|
||||||
|
|
||||||
|
|
|
@ -1236,7 +1236,7 @@ static struct {
|
||||||
{"application/java-archive", "jar"},
|
{"application/java-archive", "jar"},
|
||||||
{"video/3gpp", "3gp2"},
|
{"video/3gpp", "3gp2"},
|
||||||
{"video/3gpp", "3gp"},
|
{"video/3gpp", "3gp"},
|
||||||
|
{"video/3gpp2", "3g2"},
|
||||||
{NULL, NULL}
|
{NULL, NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue