polkit: when authorizing via PK let's re-resolve callback/userdata instead of caching it v239-18.3
authorJan Synacek <jsynacek@redhat.com>
Fri, 31 Jan 2020 14:17:25 +0000 (15:17 +0100)
committerLukas Nykryn <lnykryn@redhat.com>
Mon, 3 Feb 2020 10:05:28 +0000 (11:05 +0100)
commitae3cdcd5f8954d020a146c980ed064c21fd21239
treedd45c7a065c79049e4250d7e496b6732df53a8e7
parent8e155b3dad29a96cd2586185c63604c42bc5690e
polkit: when authorizing via PK let's re-resolve callback/userdata instead of caching it

Previously, when doing an async PK query we'd store the original
callback/userdata pair and call it again after the PK request is
complete. This is problematic, since PK queries might be slow and in the
meantime the userdata might be released and re-acquired. Let's avoid
this by always traversing through the message handlers so that we always
re-resolve the callback and userdata pair and thus can be sure it's
up-to-date and properly valid.

Resolves: CVE-2020-1712
src/shared/bus-util.c