diff --git a/debian/changelog b/debian/changelog index 658a78a3..e344f44c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,11 +1,14 @@ -mosquitto (1.5.8-1) unstable; urgency=medium +mosquitto (1.6.4-1) unstable; urgency=medium * New upstream release. - * Remove bug-1162.patch, fixed upstream. + * Bump standards version to 4.4.0, no changes needed. + * bug-1367.patch: fix bug with v5 DISCONNECT packets with remaining_length = + 2 being treated as a protocol error. Fixed upstream for 1.6.5 or 1.7. + * Added override_dh_makeshlibs for catching symbol errors. * Add --retry to init file as per https://github.com/eclipse/mosquitto/issues/1117 - -- Roger A. Light Wed, 06 Mar 2019 10:21:43 +0000 + -- Roger A. Light Thu, 01 Aug 2019 22:51:08 +0100 mosquitto (1.5.7-1) unstable; urgency=medium @@ -17,7 +20,7 @@ mosquitto (1.5.7-1) unstable; urgency=medium -- Roger A. Light Mon, 18 Feb 2019 09:28:40 +0000 mosquitto (1.5.6-1) unstable; urgency=medium - + * SECURITY UPDATE: If Mosquitto is configured to use a password file for authentication, any malformed data in the password file will be treated as valid. This typically means that the malformed data becomes a username and diff --git a/debian/control b/debian/control index a74f913d..d5d66300 100644 --- a/debian/control +++ b/debian/control @@ -10,7 +10,7 @@ Build-Depends: debhelper (>= 11), pkg-config, uthash-dev, uuid-dev -Standards-Version: 4.3.0 +Standards-Version: 4.4.0 Homepage: https://mosquitto.org/ Vcs-Git: https://github.com/eclipse/mosquitto Vcs-Browser: https://github.com/eclipse/mosquitto/tree/debian diff --git a/debian/libmosquitto1.symbols b/debian/libmosquitto1.symbols index acbc6f2f..8cb66692 100644 --- a/debian/libmosquitto1.symbols +++ b/debian/libmosquitto1.symbols @@ -5,3 +5,4 @@ libmosquitto.so.1 libmosquitto1 #MINVER# (symver)MOSQ_1.3 1.3 (symver)MOSQ_1.4 1.4 (symver)MOSQ_1.5 1.5 + (symver)MOSQ_1.6 1.6 diff --git a/debian/mosquitto.init b/debian/mosquitto.init index f82276f2..5613d19f 100755 --- a/debian/mosquitto.init +++ b/debian/mosquitto.init @@ -55,7 +55,7 @@ case "$1" in exit 0 fi log_daemon_msg "Stopping network daemon:" "mosquitto" - if start-stop-daemon --stop --quiet --oknodo --pidfile ${PIDFILE} --retry 30; then + if start-stop-daemon --stop --quiet --oknodo --pidfile ${PIDFILE}; then log_end_msg 0 rm -f ${PIDFILE} else diff --git a/debian/patches/914525.patch b/debian/patches/914525.patch index 13d9e5b2..d68aa857 100644 --- a/debian/patches/914525.patch +++ b/debian/patches/914525.patch @@ -3,15 +3,15 @@ Author: Roger Light Forwarded: yes --- a/config.mk +++ b/config.mk -@@ -244,8 +244,10 @@ +@@ -242,8 +242,10 @@ endif ifeq ($(WITH_SYSTEMD),yes) -- BROKER_CFLAGS:=$(BROKER_CFLAGS) -DWITH_SYSTEMD -- BROKER_LIBS:=$(BROKER_LIBS) -lsystemd +- BROKER_CPPFLAGS:=$(BROKER_CPPFLAGS) -DWITH_SYSTEMD +- BROKER_LDADD:=$(BROKER_LDADD) -lsystemd + ifneq ($(shell pkg-config --libs libsystemd),) -+ BROKER_CFLAGS:=$(BROKER_CFLAGS) -DWITH_SYSTEMD $(shell pkg-config --cflags libsystemd) -+ BROKER_LIBS:=$(BROKER_LIBS) $(shell pkg-config --libs libsystemd) ++ BROKER_CPPFLAGS:=$(BROKER_CPPFLAGS) -DWITH_SYSTEMD $(shell pkg-config --cflags libsystemd) ++ BROKER_LDADD:=$(BROKER_LDADD) $(shell pkg-config --libs libsystemd) + endif endif diff --git a/debian/patches/bug-1367.patch b/debian/patches/bug-1367.patch new file mode 100644 index 00000000..9ef8b06c --- /dev/null +++ b/debian/patches/bug-1367.patch @@ -0,0 +1,32 @@ +Description: Fix for v5 DISCONNECT packets with remaining length=2 +Author: Roger Light +Forwarded: not-needed +--- a/src/handle_disconnect.c ++++ b/src/handle_disconnect.c +@@ -34,12 +34,12 @@ int handle__disconnect(struct mosquitto_db *db, struct mosquitto *context) + return MOSQ_ERR_INVAL; + } + +- if(context->protocol == mosq_p_mqtt5 && context->in_packet.remaining_length > 1){ ++ if(context->protocol == mosq_p_mqtt5 && context->in_packet.remaining_length > 0){ + /* FIXME - must handle reason code */ + rc = packet__read_byte(&context->in_packet, &reason_code); + if(rc) return rc; + +- if(context->in_packet.remaining_length > 2){ ++ if(context->in_packet.remaining_length > 1){ + rc = property__read_all(CMD_DISCONNECT, &context->in_packet, &properties); + if(rc) return rc; + } +@@ -54,7 +54,7 @@ int handle__disconnect(struct mosquitto_db *db, struct mosquitto *context) + } + mosquitto_property_free_all(&properties); /* FIXME - TEMPORARY UNTIL PROPERTIES PROCESSED */ + +- if(context->in_packet.remaining_length != 0){ ++ if(context->in_packet.pos != context->in_packet.remaining_length){ + return MOSQ_ERR_PROTOCOL; + } + log__printf(NULL, MOSQ_LOG_DEBUG, "Received DISCONNECT from %s", context->id); +-- +2.17.1 + diff --git a/debian/patches/debian-config.patch b/debian/patches/debian-config.patch index 22606aee..f27545e7 100644 --- a/debian/patches/debian-config.patch +++ b/debian/patches/debian-config.patch @@ -3,7 +3,7 @@ Author: Roger Light Forwarded: not-needed --- a/Makefile +++ b/Makefile -@@ -49,6 +49,7 @@ +@@ -87,6 +87,7 @@ endif $(INSTALL) -d "${DESTDIR}/etc/mosquitto" $(INSTALL) -m 644 mosquitto.conf "${DESTDIR}/etc/mosquitto/mosquitto.conf.example" diff --git a/debian/patches/series b/debian/patches/series index 380236d1..031bf03a 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,2 +1,3 @@ 914525.patch debian-config.patch +bug-1367.patch diff --git a/debian/rules b/debian/rules index f6e496a5..d1be3571 100755 --- a/debian/rules +++ b/debian/rules @@ -33,3 +33,6 @@ override_dh_auto_install: install -m 644 debian/mosquitto.conf debian/tmp/etc/mosquitto/mosquitto.conf install -d debian/tmp/lib/systemd/system/ install -m 644 ./service/systemd/mosquitto.service.notify debian/tmp/lib/systemd/system/mosquitto.service + +override_dh_makeshlibs: + dh_makeshlibs -- -c4