mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2026-02-11 04:27:56 -05:00
modules: get also instance id for flatpak apps
Add "pipewire.access.portal.instance_id" property for distinguishing Flatpak application instances from each other.
This commit is contained in:
parent
09a5b7ee35
commit
1445843ced
3 changed files with 21 additions and 10 deletions
|
|
@ -167,12 +167,13 @@ context_check_access(void *data, struct pw_impl_client *client)
|
|||
{
|
||||
struct impl *impl = data;
|
||||
struct pw_permission permissions[1];
|
||||
struct spa_dict_item items[3];
|
||||
struct spa_dict_item items[4];
|
||||
const struct pw_properties *props;
|
||||
const char *str;
|
||||
const char *access;
|
||||
const char *socket;
|
||||
spa_autofree char *flatpak_app_id = NULL;
|
||||
spa_autofree char *flatpak_instance_id = NULL;
|
||||
int nitems = 0;
|
||||
bool sandbox_flatpak;
|
||||
int pid, res;
|
||||
|
|
@ -197,7 +198,7 @@ context_check_access(void *data, struct pw_impl_client *client)
|
|||
} else {
|
||||
pw_log_info("client %p has trusted pid %d", client, pid);
|
||||
|
||||
res = pw_check_flatpak(pid, &flatpak_app_id, NULL);
|
||||
res = pw_check_flatpak(pid, &flatpak_app_id, &flatpak_instance_id, NULL);
|
||||
if (res != 0) {
|
||||
if (res < 0)
|
||||
pw_log_warn("%p: client %p flatpak check failed: %s",
|
||||
|
|
@ -233,6 +234,8 @@ context_check_access(void *data, struct pw_impl_client *client)
|
|||
if (sandbox_flatpak) {
|
||||
items[nitems++] = SPA_DICT_ITEM_INIT("pipewire.access.portal.app_id",
|
||||
flatpak_app_id);
|
||||
items[nitems++] = SPA_DICT_ITEM_INIT("pipewire.access.portal.instance_id",
|
||||
flatpak_instance_id);
|
||||
items[nitems++] = SPA_DICT_ITEM_INIT("pipewire.sec.flatpak", "true");
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue