Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.2
-
None
-
None
Description
When I attempted to connect a lot of clients to a router, I exceeded my process limit. Then this happens:
1. proton gets an invalid socket, and returns a 0 from pn_listener_accept
2. dispatch function thread_process_listeners takes the null and starts using it.
3. Some proton calls return silently after having gotten a null input.
4. dispatch passes the null to pn_transport_set_max_frame, which dereferences it.
5. router blows core. testing engineer panics. hilarity ensues.