mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 06:54:49 +00:00
rtsp-client: RTP Info must exist in PLAY response
If RTP Info is missing. Then return GST_RTSP_STS_INTERNAL_SERVER_ERROR Fixes #76
This commit is contained in:
parent
513c0fcb95
commit
f834700eff
1 changed files with 9 additions and 4 deletions
|
@ -2006,7 +2006,8 @@ handle_play_request (GstRTSPClient * client, GstRTSPContext * ctx)
|
||||||
goto invalid_mode;
|
goto invalid_mode;
|
||||||
|
|
||||||
/* grab RTPInfo from the media now */
|
/* grab RTPInfo from the media now */
|
||||||
rtpinfo = gst_rtsp_session_media_get_rtpinfo (sessmedia);
|
if (!(rtpinfo = gst_rtsp_session_media_get_rtpinfo (sessmedia)))
|
||||||
|
goto rtp_info_error;
|
||||||
|
|
||||||
/* construct the response now */
|
/* construct the response now */
|
||||||
code = GST_RTSP_STS_OK;
|
code = GST_RTSP_STS_OK;
|
||||||
|
@ -2014,9 +2015,7 @@ handle_play_request (GstRTSPClient * client, GstRTSPContext * ctx)
|
||||||
gst_rtsp_status_as_text (code), ctx->request);
|
gst_rtsp_status_as_text (code), ctx->request);
|
||||||
|
|
||||||
/* add the RTP-Info header */
|
/* add the RTP-Info header */
|
||||||
if (rtpinfo)
|
gst_rtsp_message_take_header (ctx->response, GST_RTSP_HDR_RTP_INFO, rtpinfo);
|
||||||
gst_rtsp_message_take_header (ctx->response, GST_RTSP_HDR_RTP_INFO,
|
|
||||||
rtpinfo);
|
|
||||||
if (seek_style)
|
if (seek_style)
|
||||||
gst_rtsp_message_add_header (ctx->response, GST_RTSP_HDR_SEEK_STYLE,
|
gst_rtsp_message_add_header (ctx->response, GST_RTSP_HDR_SEEK_STYLE,
|
||||||
seek_style);
|
seek_style);
|
||||||
|
@ -2138,6 +2137,12 @@ adjust_play_response_failed:
|
||||||
send_generic_response (client, code, ctx);
|
send_generic_response (client, code, ctx);
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
rtp_info_error:
|
||||||
|
{
|
||||||
|
GST_ERROR ("client %p: failed to add RTP-Info", client);
|
||||||
|
send_generic_response (client, GST_RTSP_STS_INTERNAL_SERVER_ERROR, ctx);
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Loading…
Reference in a new issue