@@ -224,7 +224,7 @@ static void BrokerStore_String(char** dst_ptr,
224224 BrokerStore_String(&(dst), src, len, 1)
225225#endif
226226
227- #ifdef ENABLE_MQTT_TLS
227+ #if defined( ENABLE_MQTT_TLS ) && !defined( WOLFMQTT_BROKER_CUSTOM_NET )
228228static int BrokerTls_Init (MqttBroker * broker )
229229{
230230 WOLFSSL_CTX * ctx = NULL ;
@@ -347,7 +347,7 @@ static void BrokerTls_Free(MqttBroker* broker)
347347 }
348348 wolfSSL_Cleanup ();
349349}
350- #endif /* ENABLE_MQTT_TLS */
350+ #endif /* ENABLE_MQTT_TLS && !WOLFMQTT_BROKER_CUSTOM_NET */
351351
352352/* -------------------------------------------------------------------------- */
353353/* wolfIP network backend */
@@ -2657,6 +2657,10 @@ static int BrokerHandle_Connect(BrokerClient* bc, int rx_len,
26572657 rc = MqttDecode_Connect (bc -> rx_buf , rx_len , & mc );
26582658 if (rc < 0 ) {
26592659 WBLOG_ERR (broker , "broker: CONNECT decode failed rc=%d" , rc );
2660+ #ifdef WOLFMQTT_V5
2661+ if (mc .props ) { (void )MqttProps_Free (mc .props ); }
2662+ if (lwt .props ) { (void )MqttProps_Free (lwt .props ); }
2663+ #endif
26602664 return rc ;
26612665 }
26622666
@@ -3848,11 +3852,14 @@ int MqttBroker_Free(MqttBroker* broker)
38483852
38493853#ifdef ENABLE_MQTT_TLS
38503854 if (broker -> tls_ctx != NULL ) {
3855+ #if !defined(WOLFMQTT_BROKER_CUSTOM_NET )
38513856 if (broker -> tls_ctx_owned ) {
38523857 /* Context was created by BrokerTls_Init: full cleanup */
38533858 BrokerTls_Free (broker );
38543859 }
3855- else {
3860+ else
3861+ #endif
3862+ {
38563863 /* Application-provided TLS context: free ctx but skip
38573864 * wolfSSL_Cleanup() since wolfSSL may be shared */
38583865 wolfSSL_CTX_free (broker -> tls_ctx );
0 commit comments