mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-06 13:30:01 -05:00
core: remove permission callback
Remove the core permission check callback. We can now use the per client permission configuration. Rework the flatpak module to use the permissions. When a client connects, do the portal call and iterate all globals, updating the permissions. Also update the permissions of newly added globals. The client is owner of itself.
This commit is contained in:
parent
ff17fb68b5
commit
f115646bcd
6 changed files with 107 additions and 200 deletions
|
|
@ -68,6 +68,11 @@ struct pw_protocol {
|
|||
void *user_data; /**< user data for the implementation */
|
||||
};
|
||||
|
||||
/** the permission function. It returns the allowed access permissions for \a global
|
||||
* for \a client */
|
||||
typedef uint32_t (*pw_permission_func_t) (struct pw_global *global,
|
||||
struct pw_client *client, void *data);
|
||||
|
||||
struct pw_client {
|
||||
struct pw_core *core; /**< core object */
|
||||
struct spa_list link; /**< link in core object client list */
|
||||
|
|
@ -127,9 +132,6 @@ struct pw_core {
|
|||
|
||||
struct pw_type type; /**< type map and common types */
|
||||
|
||||
pw_permission_func_t permission_func; /**< get permissions of an object */
|
||||
void *permission_data; /**< data passed to permission function */
|
||||
|
||||
struct pw_map globals; /**< map of globals */
|
||||
|
||||
struct spa_list protocol_list; /**< list of protocols */
|
||||
|
|
@ -422,6 +424,7 @@ struct pw_control {
|
|||
void *user_data;
|
||||
};
|
||||
|
||||
|
||||
/** Find a good format between 2 ports */
|
||||
int pw_core_find_format(struct pw_core *core,
|
||||
struct pw_port *output,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue