mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-22 14:06:23 +00:00
rtsp: Ignore the Content-Length for POST requests.
The Content-Length for POST requests with an x-sessioncookie header should be ignored as the length is bogus and only there to fool proxies.
This commit is contained in:
parent
11c8b811f3
commit
e1b3393d6b
1 changed files with 7 additions and 2 deletions
|
@ -1806,9 +1806,14 @@ build_next (GstRTSPBuilder * builder, GstRTSPMessage * message,
|
|||
gchar *hdrval;
|
||||
|
||||
/* empty line, end of message header */
|
||||
/* see if there is a Content-Length header */
|
||||
/* see if there is a Content-Length header, but ignore it if this
|
||||
* is a POST request with an x-sessioncookie header */
|
||||
if (gst_rtsp_message_get_header (message,
|
||||
GST_RTSP_HDR_CONTENT_LENGTH, &hdrval, 0) == GST_RTSP_OK) {
|
||||
GST_RTSP_HDR_CONTENT_LENGTH, &hdrval, 0) == GST_RTSP_OK &&
|
||||
(message->type != GST_RTSP_MESSAGE_HTTP_REQUEST ||
|
||||
message->type_data.request.method != GST_RTSP_POST ||
|
||||
gst_rtsp_message_get_header (message,
|
||||
GST_RTSP_HDR_X_SESSIONCOOKIE, NULL, 0) != GST_RTSP_OK)) {
|
||||
/* there is, prepare to read the body */
|
||||
builder->body_len = atol (hdrval);
|
||||
builder->body_data = g_malloc (builder->body_len + 1);
|
||||
|
|
Loading…
Reference in a new issue