BBS: TELESC.NET.BR Assunto: src/sbbs3/mqtt.cppsrc/sbbs3/mqtt.h mqtt_client.cpp mqtt_client.h objec De: Deuc¨ Data: Sun, 10 May 2026 19:29:42 -0700 ----------------------------------------------------------- https://gitlab.synchro.net/main/sbbs/-/commit/2ddba195bd0e9b05a26b8ac4 Added Files: src/sbbs3/mqtt.cpp Modified Files: src/sbbs3/mqtt.h mqtt_client.cpp mqtt_client.h objects.mk Removed Files: src/sbbs3/mqtt_broker_glue.cpp Log Message: Convert mqtt.c to C++, eliminate glue layer and C wrappers All callers of the mqtt API are C++, so mqtt.c can be compiled as C++ directly. This eliminates the entire indirection layer: - mqtt.c renamed to mqtt.cpp - mqtt_broker_glue.cpp deleted broker_lputs_adapter, local_message_callback, mqtt_internal_startup/publish/subscribe/shutdown all merged into mqtt.cpp with direct C++ calls - C-callable wrappers removed: mqtt5client_open/close/connect/disconnect/ publish/subscribe/pump/read/read_free/set_will (mqtt_client.cpp), mqtt_props_new/add_string_pair/free (mqtt_broker_glue.cpp) - mqtt.h: removed mqtt_internal_* and mqtt_props_* declarations - mqtt_client.h: removed C wrapper declarations and mqtt5client_msg struct - mqtt.cpp uses mqtt5::Client, mqtt5::Broker, mqtt5::Properties directly - Pump thread reads from Client::read() directly no alloc/copy/free needed since caller and client share the same heap - objects.mk: removed mqtt_broker_glue NOTE: clean sbbs3 before building (stale mqtt.d references mqtt.c) Co-Authored-By: Claude Opus 4.6 (1M context)n --- mSynchronetn hgVertrauen n hHome of Synchronet n gh[vert/cvs/bbs].synchro.net ----------------------------------------------------------- [Voltar]