diff --git a/ChangeLog.txt b/ChangeLog.txt index 91319356..6c639d86 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt @@ -9,6 +9,7 @@ Broker: listening socket, by calling freeaddrinfo. Closes #1565. - Fix config->user not being freed on exit. Closes #1564. - Fix trailing whitespace not being trimmed on acl users. Closes #1539. +- Fix `bind_interface` not working for the default listener. Closes #1533. Library: - Set minimum keepalive argument to `mosquitto_connect*()` to be 5 seconds. diff --git a/src/conf.c b/src/conf.c index 49eca766..38075956 100644 --- a/src/conf.c +++ b/src/conf.c @@ -446,6 +446,7 @@ int config__parse_args(struct mosquitto_db *db, struct mosquitto__config *config } if(config->listener_count == 0 + || config->default_listener.bind_interface #ifdef WITH_TLS || config->default_listener.cafile || config->default_listener.capath @@ -499,6 +500,7 @@ int config__parse_args(struct mosquitto_db *db, struct mosquitto__config *config }else{ config->listeners[config->listener_count-1].mount_point = NULL; } + config->listeners[config->listener_count-1].bind_interface = config->default_listener.bind_interface; config->listeners[config->listener_count-1].max_connections = config->default_listener.max_connections; config->listeners[config->listener_count-1].protocol = config->default_listener.protocol; config->listeners[config->listener_count-1].socket_domain = config->default_listener.socket_domain;