ignore invalid attributes

git.mgm/mediaproxy-ng/github/master
Richard Fuchs 12 years ago
parent 14bcbcfa73
commit 9ef4bd2f9c

@ -119,7 +119,6 @@ struct sdp_attribute {
param; /* "PCMA/8000" */
enum {
ATTR_INVALID = -1,
ATTR_OTHER = 0,
ATTR_RTCP,
ATTR_CANDIDATE,
@ -445,7 +444,7 @@ static int parse_attribute_candidate(struct sdp_attribute *output) {
return 0;
}
static void parse_attribute(struct sdp_attribute *a) {
static int parse_attribute(struct sdp_attribute *a) {
int ret;
a->name = a->line_value;
@ -511,8 +510,7 @@ static void parse_attribute(struct sdp_attribute *a) {
break;
}
if (ret)
a->attr = ATTR_INVALID;
return ret;
}
int sdp_parse(str *body, GQueue *sessions) {
@ -604,7 +602,10 @@ int sdp_parse(str *body, GQueue *sessions) {
attr->line_value.s = value;
attr->line_value.len = line_end - value;
parse_attribute(attr);
if (parse_attribute(attr)) {
g_slice_free1(sizeof(*attr), attr);
break;
}
attrs = media ? &media->attributes : &session->attributes;
g_queue_push_tail(&attrs->list, attr);

Loading…
Cancel
Save