diff --git a/gst/rtsp-server/rtsp-token.c b/gst/rtsp-server/rtsp-token.c index 2c228f7dbf..b252ff533f 100644 --- a/gst/rtsp-server/rtsp-token.c +++ b/gst/rtsp-server/rtsp-token.c @@ -205,3 +205,24 @@ gst_rtsp_token_get_string (GstRTSPToken * token, const gchar * field) { return gst_structure_get_string (GST_RTSP_TOKEN_STRUCTURE (token), field); } + +/** + * gst_rtsp_token_is_allowed: + * @token: a #GstRTSPToken + * @field: a field name + * + * Check if @token has a boolean @field and if it is set to %TRUE. + * + * Returns: %TRUE if @token has a boolean field named @field set to %TRUE. + */ +gboolean +gst_rtsp_token_is_allowed (GstRTSPToken * token, const gchar * field) +{ + gboolean result; + + if (!gst_structure_get_boolean (GST_RTSP_TOKEN_STRUCTURE (token), field, + &result)) + result = FALSE; + + return result; +} diff --git a/gst/rtsp-server/rtsp-token.h b/gst/rtsp-server/rtsp-token.h index fa6a888ceb..b7c06c4cf6 100644 --- a/gst/rtsp-server/rtsp-token.h +++ b/gst/rtsp-server/rtsp-token.h @@ -90,6 +90,8 @@ GstStructure * gst_rtsp_token_writable_structure (GstRTSPToken *token); const gchar * gst_rtsp_token_get_string (GstRTSPToken *token, const gchar *field); +gboolean gst_rtsp_token_is_allowed (GstRTSPToken *token, + const gchar *field); G_END_DECLS #endif /* __GST_RTSP_TOKEN_H__ */