Top | ![]() |
![]() |
![]() |
![]() |
GstRTSPPermissions * | gst_rtsp_permissions_new () |
GstRTSPPermissions * | gst_rtsp_permissions_ref () |
void | gst_rtsp_permissions_unref () |
void | gst_rtsp_permissions_add_role () |
void | gst_rtsp_permissions_add_role_valist () |
void | gst_rtsp_permissions_add_role_empty () |
void | gst_rtsp_permissions_add_role_from_structure () |
void | gst_rtsp_permissions_add_permission_for_role () |
void | gst_rtsp_permissions_remove_role () |
const GstStructure * | gst_rtsp_permissions_get_role () |
gboolean | gst_rtsp_permissions_is_allowed () |
The GstRTSPPermissions object contains an array of roles and associated permissions. The roles are represented with a string and the permissions with a generic GstStructure.
The permissions are deliberately kept generic. The possible values of the roles and GstStructure keys and values are only determined by the GstRTSPAuth object that performs the checks on the permissions and the current GstRTSPToken.
As a convenience function, gst_rtsp_permissions_is_allowed()
can be used to
check if the permissions contains a role that contains the boolean value
TRUE
for the the given key.
Last reviewed on 2013-07-15 (1.0.0)
GstRTSPPermissions *
gst_rtsp_permissions_new (void
);
Create a new empty Authorization permissions.
GstRTSPPermissions *
gst_rtsp_permissions_ref (GstRTSPPermissions *permissions
);
Increase the refcount of this permissions.
void
gst_rtsp_permissions_unref (GstRTSPPermissions *permissions
);
Decrease the refcount of an permissions, freeing it if the refcount reaches 0.
void gst_rtsp_permissions_add_role (GstRTSPPermissions *permissions
,const gchar *role
,const gchar *fieldname
,...
);
Add a new role
to permissions
with the given variables. The fields
are the same layout as gst_structure_new()
.
void gst_rtsp_permissions_add_role_valist (GstRTSPPermissions *permissions
,const gchar *role
,const gchar *fieldname
,va_list var_args
);
Add a new role
to permissions
with the given variables. Structure fields
are set according to the varargs in a manner similar to gst_structure_new()
.
void gst_rtsp_permissions_add_role_empty (GstRTSPPermissions *permissions
,const gchar *role
);
Add a new role
to permissions
without any permissions. You can add
permissions for the role with gst_rtsp_permissions_add_permission_for_role()
.
[rename-to gst_rtsp_permissions_add_role]
Since: 1.14
void gst_rtsp_permissions_add_role_from_structure (GstRTSPPermissions *permissions
,GstStructure *structure
);
Add a new role to permissions
based on structure
, for example
given a role named tester
, which should be granted a permission named
permission1
, the structure could be created with:
gst_structure_new ("tester", "permission1", G_TYPE_BOOLEAN, TRUE, NULL);
Since: 1.14
void gst_rtsp_permissions_add_permission_for_role (GstRTSPPermissions *permissions
,const gchar *role
,const gchar *permission
,gboolean allowed
);
Add a new permission
for role
to permissions
with the access in allowed
.
permissions |
||
role |
a role |
|
permission |
the permission |
|
allowed |
whether the role has this permission or not |
Since: 1.14
void gst_rtsp_permissions_remove_role (GstRTSPPermissions *permissions
,const gchar *role
);
Remove all permissions for role
in permissions
.
const GstStructure * gst_rtsp_permissions_get_role (GstRTSPPermissions *permissions
,const gchar *role
);
Get all permissions for role
in permissions
.
gboolean gst_rtsp_permissions_is_allowed (GstRTSPPermissions *permissions
,const gchar *role
,const gchar *permission
);
Check if role
in permissions
is given permission for permission
.