mosquitto
mosquitto copied to clipboard
Add socket activation for systemd and s6
Use open, listening socket file descriptors provided by the service manager via LISTEN_FDS and LISTEN_PID environment variables.
This is how systemd tells the service about open sockets. However, this change does not depend on systemd libraries or header.
All sockets must be mentioned exactly (IP:Port / unix-path) in the mosquitto config file in order to be recognized. Sockets not mentioned in the config file will be ignored.
The service/systemd directory contains an example (mosquitto.socket). The service/s6 directory contains examples for the s6 service manager.
The new, builtin websocket mechanism can also use already open sockets. However, the libwebsocket mchanism can not.
Signed-off-by: Christian Hohnstaedt [email protected]
Thank you for contributing your time to the Mosquitto project!
Before you go any further, please note that we cannot accept contributions if you haven't signed the Eclipse Contributor Agreement. If you aren't able to do that, or just don't want to, please describe your bug fix/feature change in an issue. For simple bug fixes it is can be just as easy for us to be told about the problem and then go fix it directly.
Then please check the following list of things we ask for in your pull request:
- [x] Have you signed the Eclipse Contributor Agreement, using the same email address as you used in your commits?
- [x] Do each of your commits have a "Signed-off-by" line, with the correct email address? Use "git commit -s" to generate this line for you.
- [x] If you are contributing a new feature, is your work based off the develop branch?
- [x] Have you added an explanation of what your changes do and why you'd like us to include them?
- [x] Have you successfully run
make testwith your changes locally?
Thanks @chris2511, this looks good from an initial look over.
any update on this?