I have simpe MQTT client application from hivemq site:
MQTTClient client;
MQTTClient_create(&client, "ssl://xxx.s1.eu.hivemq.cloud:8883", "Client_1", MQTTCLIENT_PERSISTENCE_NONE, NULL);
int i = MQTTClient_setCallbacks(client, NULL, NULL, messageArrived, NULL);
Got segmentation fault while setting callback in variable m->c->connect_state
MQTTClient.c code with segmentation fault:
int MQTTClient_setCallbacks(MQTTClient handle, void* context, MQTTClient_connectionLost* cl, MQTTClient_messageArrived* ma, MQTTClient_deliveryComplete* dc)
{
int rc = MQTTCLIENT_SUCCESS;
MQTTClients* m = handle;
FUNC_ENTRY;
Thread_lock_mutex(mqttclient_mutex);
if (m == NULL || ma == NULL || m->c->connect_state != NOT_IN_PROGRESS)
...
}