On Thu, 2012-03-08 at 19:17 +0100, Jakub Hrozek wrote:
The attached patch fixes the crash described in
https://bugzilla.redhat.com/show_bug.cgi?id=743133#c28
The cause is actually embarassingly simple, the bug just did occur only
with specific configurations our tests didn't exercise and moreover the
default debugging didn't include enough information to triage the issue
just from the debug logs.
The root cause was that we would process all nested groups in a nesting
level in a single tevent request and we kept the number of parent groups
stored in the "state" structure. However, when moving to next group in
the nesting leve, we didn't reset the number of parents..
Instead of keeping the number of parent groups in "state" and having to
reset the count when moving to another group on the same level, the patch
keeps track of the all groups on a particular level along with their
parents and parent count in a more structured manner. This makes the
code less fragile.
The patch also adds more debugging.
Ack for master and sssd-1-8, though I fixed two minor formatting issues
(interdiff attached).