rtmp: Return an error when the client bandwidth is incorrect

Signed-off-by: Martin Storsjö <martin@martin.st>
pull/28/head
Samuel Pitoiset 12 years ago committed by Martin Storsjö
parent be8f949219
commit abf77a247b
  1. 12
      libavformat/rtmpproto.c

@ -932,8 +932,16 @@ static int handle_client_bw(URLContext *s, RTMPPacket *pkt)
pkt->data_size);
return AVERROR_INVALIDDATA;
}
av_log(s, AV_LOG_DEBUG, "Client bandwidth = %d\n", AV_RB32(pkt->data));
rt->client_report_size = AV_RB32(pkt->data) >> 1;
rt->client_report_size = AV_RB32(pkt->data);
if (rt->client_report_size <= 0) {
av_log(s, AV_LOG_ERROR, "Incorrect client bandwidth %d\n",
rt->client_report_size);
return AVERROR_INVALIDDATA;
}
av_log(s, AV_LOG_DEBUG, "Client bandwidth = %d\n", rt->client_report_size);
rt->client_report_size >>= 1;
return 0;
}

Loading…
Cancel
Save