https://bugs.openldap.org/show_bug.cgi?id=10083
Issue ID: 10083
Summary: lload: Receiving a NoD while connection is closing
already corrupts c_state
Product: OpenLDAP
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: needs_review
Severity: normal
Priority: ---
Component: lloadd
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: ---
If the backend closes a connection with a NoD, two things happen: we won't be
able to write to the socket and we receive the NoD message.
lloadd might encounter those in either order, but handle_unsolicited() doesn't
expect to be the second one to come in and happily overrides c_state, even if
c_unlink() has been called by the write side already. upstream_destroy()
eventually discovers the inconsistent state (LLOAD_C_CLOSING vs. LLOAD_C_DYING)
and assert()s.
A fix to handle_unsolicited() is coming.
--
You are receiving this mail because:
You are on the CC list for the issue.