GstRTSPPermissions

GstRTSPPermissions — Roles and associated permissions

Functions

Types and Values

Description

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)

Functions

gst_rtsp_permissions_new ()

GstRTSPPermissions *
gst_rtsp_permissions_new (void);

Create a new empty Authorization permissions.

Returns

a new empty authorization permissions.

[transfer full]


gst_rtsp_permissions_ref ()

GstRTSPPermissions *
gst_rtsp_permissions_ref (GstRTSPPermissions *permissions);

Increase the refcount of this permissions.

Parameters

permissions

The permissions to refcount

 

Returns

permissions (for convenience when doing assignments).

[transfer full]


gst_rtsp_permissions_unref ()

void
gst_rtsp_permissions_unref (GstRTSPPermissions *permissions);

Decrease the refcount of an permissions, freeing it if the refcount reaches 0.

Parameters

permissions

the permissions to refcount.

[transfer full]

gst_rtsp_permissions_add_role ()

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().

Parameters

permissions

a GstRTSPPermissions

 

role

a role

 

fieldname

the first field name

 

...

additional arguments

 

gst_rtsp_permissions_add_role_valist ()

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().

Parameters

permissions

a GstRTSPPermissions

 

role

a role

 

fieldname

the first field name

 

var_args

additional fields to add

 

gst_rtsp_permissions_remove_role ()

void
gst_rtsp_permissions_remove_role (GstRTSPPermissions *permissions,
                                  const gchar *role);

Remove all permissions for role in permissions .

Parameters

permissions

a GstRTSPPermissions

 

role

a role

 

gst_rtsp_permissions_get_role ()

const GstStructure *
gst_rtsp_permissions_get_role (GstRTSPPermissions *permissions,
                               const gchar *role);

Get all permissions for role in permissions .

Parameters

permissions

a GstRTSPPermissions

 

role

a role

 

Returns

the structure with permissions for role . It remains valid for as long as permissions is valid.

[transfer none]


gst_rtsp_permissions_is_allowed ()

gboolean
gst_rtsp_permissions_is_allowed (GstRTSPPermissions *permissions,
                                 const gchar *role,
                                 const gchar *permission);

Check if role in permissions is given permission for permission .

Parameters

permissions

a GstRTSPPermissions

 

role

a role

 

permission

a permission

 

Returns

TRUE if role is allowed permission .

Types and Values

struct GstRTSPPermissions

struct GstRTSPPermissions {
  GstMiniObject mini_object;
};

The opaque permissions structure. It is used to define the permissions of objects in different roles.

See Also

GstRTSPToken, GstRTSPAuth