URL:
https://github.com/SSSD/sssd/pull/934
Author: alexey-tikhonov
Title: #934: 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_watch_remove() -> talloc_free(watch_fd) ->
... get back to libdbus and back to sbus_watch_handler() ->
"if (watch_fd->dbus_watch.write != NULL) 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/934/head:pr934
git checkout pr934