Skip to content
This repository was archived by the owner on Jan 23, 2026. It is now read-only.

v0.4.0 - TLS & Session Options

Choose a tag to compare

@frahlg frahlg released this 21 Jan 09:03
· 7 commits to master since this release

What's New

TLS Certificate Support

  • Custom CA Certificate: Load self-signed or private CA certificates for broker authentication
  • Client Certificates (mTLS): Full mutual TLS support with client certificate and key
  • Insecure Mode: Skip certificate verification for testing (use with caution!)

MQTT Session Options

  • Clean Session Toggle: Choose between persistent sessions (retained subscriptions/messages) or fresh starts
  • Subscription QoS: Configure QoS level (0, 1, or 2) for subscriptions
  • Last Will and Testament (LWT): Configure disconnect message with topic, payload, QoS, and retain flag

UI Improvements

  • Renamed "Exact ID" to "ID Suffix" with clearer status values
  • Added placeholder hints for empty Client ID field showing auto-generation behavior
  • All new options available in the server edit dialog

Bug Fixes

  • Extended reconnect delay for exact client ID to prevent session takeover kick loops (waits keep_alive + 2s)

Configuration Example

[[mqtt.servers]]
name = "secure-broker"
host = "mqtt.example.com"
port = 8883
use_tls = true
ca_cert = "/path/to/ca.pem"           # Custom CA
client_cert = "/path/to/client.pem"   # mTLS cert
client_key = "/path/to/client-key.pem"
clean_session = false                  # Persistent session
subscribe_qos = 1                      # At least once
lwt_topic = "clients/mqtop/status"
lwt_payload = "offline"
lwt_retain = true