My employer maintains an internal, proprietary service plugin for C-ICAP. The plugin needs to interface with an external network service, and we found that the C-ICAP server is more stable if we maintain those connections per-child-process, rather than starting them during daemon startup and letting them follow through forking and child creation.
After trying a number of different approaches I settled on using register_command_extend to hook into CHILD_START_CMD. This works fine, but this API is not documented, and I feel as though this would be useful functionality to expose to other service plugins.
I propose relocating the register_command_extend function (and associated types and constants) to libicapapi, renaming it with a prefix of ci_, and documenting it.
I'm happy to assist with this task if my employer permits me to spend time on it.
Anonymous