URL:
https://github.com/SSSD/sssd/pull/932
Author: alexey-tikhonov
Title: #932: SBUS: defer deallocation of sbus_watch_ctx
Action: opened
PR body:
"""
The following flow was causing use-after-free error:
tevent_common_invoke_fd_handler(RW) -> sbus_watch_handler(RW) ->
dbus_watch_handle(R) -> ...libdbus detects connection is closed... ->
sbus_remove_watch() -> talloc_free(watch) ->
... get back to libdbus and back to sbus_watch_handler() ->
"if (watch->dbus_write_watch) dbus_watch_handle(W)" => use-after-free
To resolve an issue schedule deallocation of watch as immediate event.
Resolves:
https://pagure.io/SSSD/sssd/issue/2660
"""
To pull the PR as Git branch:
git remote add ghsssd
https://github.com/SSSD/sssd
git fetch ghsssd pull/932/head:pr932
git checkout pr932