C service drones do not explicitly terminate their XMPP sessions by sending a "</stream:stream>" message prior to exiting (Perl services do). Instead, the socket just gets closed when the process ends.
This doesn't appear to be the end of the world, but it does cause "Connection failed: connection closed" noise in the Ejabberd logs that can mask true connection failures.
Looks like osrf_prefork_child_exit() is where the client connection cleanup would be added.
C service drones do not explicitly terminate their XMPP sessions by sending a "</stream:stream>" message prior to exiting (Perl services do). Instead, the socket just gets closed when the process ends.
This doesn't appear to be the end of the world, but it does cause "Connection failed: connection closed" noise in the Ejabberd logs that can mask true connection failures.
Looks like osrf_prefork_ child_exit( ) is where the client connection cleanup would be added.