• src/sbbs3/mqtt.c

    From Rob Swindell (on Debian L@VERT to Git commit to main/sbbs/m on Wed May 6 22:36:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/77a712c064189539e761b224
    Modified Files:
    src/sbbs3/mqtt.c
    Log Message:
    mqtt: cast putnmsg to void in mqtt_message_received (CID 469140)

    The MQTT bridge forwards an inbound payload to the node; if delivery
    fails (node not running, etc.) there's nothing useful for the MQTT
    callback to do with the error. Make the discarded return explicit.

    Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/m on Thu May 7 02:03:00 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/fb788069b14684762744d5de
    Modified Files:
    src/sbbs3/mqtt.c
    Log Message:
    mqtt.c: fix server state not published correctly on connect

    mqtt_server_state() only updated mqtt->server_state inside the publish
    block, so when mqtt->connected was false (race between synchronous
    TCP connect and async CONNACK callback), the state transition was
    lost. Move the state update before the publish so it's always tracked.

    mqtt_server_startup() hardcoded SERVER_INIT, overwriting the real state
    if the MQTT connect callback fired after the server had already
    transitioned to SERVER_READY. Use mqtt->server_state instead.

    On reconnect (server_version is NULL), re-publish the current state
    so the broker has the correct retained server-level status.

    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net