fedora-selinux / setroubleshoot

Abandoned, use https://gitlab.com/setroubleshoot
https://gitlab.com/setroubleshoot
9 stars 12 forks source link

dbus: not every new alert gets a notification #13

Closed dperpeet closed 8 years ago

dperpeet commented 8 years ago

While implementing a dbus api client for setroubleshoot, I noticed that not every alert triggers a dbus signal. I used the following snippet to generate alerts (courtesy @bachradsusi )

$ cp /bin/ls ls
$ chcon -t httpd_exec_t ls
$ runcon -u system_u -r system_r -t httpd_t -- ./ls /home/*

On my system, this generates two messages, but I only receive one signal via the dbus api. This would still be ok if it were on the second (io throttling), but it is usually after the first. So when I get the alert details I receive the "old" info. Only after refreshing and getting the other alerts do I get the final count.

Expected behavior: If the alert database changes after an alert change was signaled, a new signal should go out so clients can update their info.

bachradsusi commented 8 years ago

Seems to work for me as expected. But I'll investigate it further. It might be a caching issue in sedispatch.

bachradsusi commented 8 years ago

It should be fixed by the referenced patch. setroubleshoot-3.3.5-0.3 builds with the fix will be soon available in https://copr.fedorainfracloud.org/coprs/plautrba/setroubleshoot/

bachradsusi commented 8 years ago

I believe it's fixed by https://github.com/fedora-selinux/setroubleshoot/commit/723d4890c18444ab7ff68b33b4d28137dc07f94c

If the problem persists feel free to reopen