Commit Graph

255 Commits (master)

Author SHA1 Message Date
Aidan Garske 375d19af5b Make broker retained store best-effort and tighten property validation 2026-09-17 10:19:13 -07:00
Aidan Garske 2fc5d43dd7 F-13238 - Reject inbound MQTT 5 Topic Alias the client cannot resolve 2026-09-16 14:51:53 -07:00
Aidan Garske 6d008d1c4d F-13237 - Reject invalid MQTT 5 Boolean property values when encoding 2026-09-16 14:51:53 -07:00
Aidan Garske ddf39538ca F-13224 - Free decoded CONNECT properties before building the CONNACK 2026-09-16 14:51:53 -07:00
Aidan Garske 13a45bf3b5 F-13223 - Release the QoS 2 packet id when a retained store is rejected 2026-09-16 14:51:53 -07:00
Aidan Garske 276d86368a Fix MQTT-SN short writes and QoS 2 delivery errors 2026-09-14 14:59:06 -07:00
Aidan Garske 6b2564f7d7 Keep MQTT 3.1.1 connected when the QoS 2 dedup table is full 2026-09-14 14:44:34 -07:00
Aidan Garske 06accd38f1 Fix test build errors from a duplicate counter and an SN test guard 2026-09-14 14:44:34 -07:00
Aidan Garske ad73c4d80f F-12443 - Retain MQTT-SN write ownership across partial writes 2026-09-14 14:44:33 -07:00
Aidan Garske ad0fbd0c9b F-12479 - Require QoS 2 before advancing a PUBLISH on PUBREC 2026-09-14 14:44:33 -07:00
Aidan Garske aa66d42661 F-12478 - Require re-authentication to reuse the CONNECT auth method 2026-09-14 14:44:33 -07:00
Aidan Garske 91d99079d0 F-12445 - Keep durable outbound queue on orphan session reclaim 2026-09-14 14:42:58 -07:00
Aidan Garske 6083bfe488 F-12444 - Refuse untrackable QoS 2 PUBLISH when dedup table full 2026-09-14 14:42:58 -07:00
Aidan Garske 397124402a
Merge pull request #615 from embhorn/gh_issues
Gh issues
2026-09-11 09:09:39 -07:00
Eric Blankenhorn 803c37b438 Fix from review 2026-09-10 15:07:06 -05:00
Eric Blankenhorn 114c6e8399 Fix from review 2026-09-09 16:35:08 -05:00
Eric Blankenhorn 5230f9dcbd Fixes from review 2026-09-09 11:57:11 -05:00
Eric Blankenhorn 2b9e905a4c Fix 597, 598 and 602 2026-09-09 08:29:12 -05:00
Eric Blankenhorn a82c4146af Replay unacknowledged QoS messages on session reconnect (#597, #598, #602) 2026-09-08 16:41:17 -05:00
Eric Blankenhorn c4c6b627ab Stage QoS acknowledgements per wait object (#608) 2026-09-08 16:14:06 -05:00
Eric Blankenhorn 6ec061779d Fixes from review 2026-09-08 13:58:34 -05:00
Eric Blankenhorn 7f60b98949 Add MqttConnect.password_len for binary passwords (#588) 2026-09-08 11:57:08 -05:00
Eric Blankenhorn ed40e5b8c7 Bind client QoS 2 dedup state to the ClientId (#595) 2026-09-08 11:53:05 -05:00
Eric Blankenhorn 23eb8ed801 Track static broker outbound Packet IDs in flight (#614) 2026-09-08 11:49:50 -05:00
Eric Blankenhorn 055b8a4186 Fix use-after-free and non-v5 identifier reset found in review 2026-09-08 11:00:20 -05:00
Eric Blankenhorn 3ea3c09898 Track outbound Packet IDs in flight in every build (#589, #599, #601, #605, #611, #612, #613) 2026-09-08 10:20:04 -05:00
Eric Blankenhorn 5af9dafa2e Fix broker CONNACK, keepalive, DUP and QoS 0 replay (#592, #594, #596, #604, #610) 2026-09-08 10:03:46 -05:00
Eric Blankenhorn d537d61432 Send CONNECT first and only once per connection (#585, #590, #591) 2026-09-08 09:51:37 -05:00
Eric Blankenhorn f7fc470dec Reject CONNACK payload and zero publish-response Packet IDs (#603, #607) 2026-09-08 09:34:36 -05:00
Kareem f0b683c437 Code review feedback 2026-09-04 14:29:59 -07:00
Kareem 2363cb6ffe Fix write failures not publishing Wills.
Fixes #582.
2026-09-04 12:06:39 -07:00
Kareem d18df31539 Forbid payload bytes in UNSUBACK for MQTT versions below v5.
Fixes #581.
2026-09-04 12:05:34 -07:00
Kareem d4a37bff73 Reject AUTH and server-sent DISCONNECT packets in MQTT versions below v5.
Fixes #580.
2026-09-04 12:01:44 -07:00
Kareem 0fb1c64c7d Add regression tests to ensure expired messages are properly purged. 2026-08-25 17:13:25 -07:00
Aidan Garske c85b4878a4 F-10352 - Report unknown PUBREC packet identifiers 2026-08-25 09:06:04 -07:00
Aidan Garske d8f0d57f25 F-7648 - Bound CONNACK properties by Remaining Length 2026-08-25 09:04:18 -07:00
Aidan Garske ef66e265b9 F-10353 - Resume MQTT-SN automatic replies after partial writes 2026-08-25 09:04:18 -07:00
Aidan Garske a3ce774788 F-10342 - Decode preliminary PUBLISH with negotiated protocol 2026-08-25 09:04:18 -07:00
Aidan Garske 013e0a78db F-10341 - Validate CONNECT Will property context 2026-08-25 09:04:18 -07:00
Aidan Garske 1039628d99 F-10340 - Report libcurl global initialization failure 2026-08-25 09:04:18 -07:00
Aidan Garske 4c90256d86 F-8608 - Reject zero packet ID in UNSUBACK encoder 2026-08-25 09:04:18 -07:00
Aidan Garske 72a9b0434f F-8607 - Reject Session Present on refused CONNACK 2026-08-25 09:04:18 -07:00
Aidan Garske 46ae2d71bc F-8606 - Reject mismatched UNSUBACK reason counts 2026-08-25 09:04:17 -07:00
Aidan Garske baae8232a4 F-8605 - Validate decoder topic arrays before properties 2026-08-25 09:04:17 -07:00
Aidan Garske 4d501bc8e7 F-8604 - Reject duplicate singleton properties 2026-08-25 09:04:17 -07:00
Aidan Garske 0f2aeb7c54 F-8596 - Clean up broker startup failures 2026-08-25 09:04:17 -07:00
Aidan Garske 70efb7aedc F-8595 - Reset MQTT-SN Will responses correctly 2026-08-25 09:04:17 -07:00
Aidan Garske 3b9011f4ac F-7660 - Validate encoded CONNACK reason codes 2026-08-25 09:04:17 -07:00
Aidan Garske 969bc54a37 F-7659 - Validate encoded UNSUBACK reason codes 2026-08-25 09:04:17 -07:00
Aidan Garske eabbceaa24 F-7647 - Bound MQTT-SN fixed header reads 2026-08-25 09:04:17 -07:00