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: bugs@openldap.org Reporter: ondra@mistotebe.net 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.
https://bugs.openldap.org/show_bug.cgi?id=10083
Ondřej Kuzník ondra@mistotebe.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |IN_PROGRESS Assignee|bugs@openldap.org |ondra@mistotebe.net Ever confirmed|0 |1
--- Comment #1 from Ondřej Kuzník ondra@mistotebe.net --- https://git.openldap.org/openldap/openldap/-/merge_requests/636
https://bugs.openldap.org/show_bug.cgi?id=10083
Quanah Gibson-Mount quanah@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords|needs_review | Target Milestone|--- |2.5.17
https://bugs.openldap.org/show_bug.cgi?id=10083
--- Comment #2 from Quanah Gibson-Mount quanah@openldap.org --- head:
• 5677a410 by Ondřej Kuzník at 2023-07-20T16:21:54+00:00 ITS#10083 Do not mess with a connection that's dying already
https://bugs.openldap.org/show_bug.cgi?id=10083
Quanah Gibson-Mount quanah@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|IN_PROGRESS |RESOLVED
--- Comment #3 from Quanah Gibson-Mount quanah@openldap.org --- RE26:
• 7f1bfb0e by Ondřej Kuzník at 2023-10-09T20:28:33+00:00 ITS#10083 Do not mess with a connection that's dying already
RE25:
• 399eac41 by Ondřej Kuzník at 2023-10-09T20:29:15+00:00 ITS#10083 Do not mess with a connection that's dying already
https://bugs.openldap.org/show_bug.cgi?id=10083
Quanah Gibson-Mount quanah@openldap.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |VERIFIED