Commit 7b906794 authored by Ian Craggs's avatar Ian Craggs

Merge branch 'EasyMile-strerror' into develop

parents fdbc9be3 f4f1d7f4
......@@ -3329,3 +3329,42 @@ MQTTAsync_nameValue* MQTTAsync_getVersionInfo(void)
libinfo[i].value = NULL;
return libinfo;
}
const char* MQTTAsync_strerror(int code)
{
switch (code) {
case MQTTASYNC_SUCCESS:
return "Success";
case MQTTASYNC_FAILURE:
return "Failure";
case MQTTASYNC_PERSISTENCE_ERROR:
return "Persistence error";
case MQTTASYNC_DISCONNECTED:
return "Disconnected";
case MQTTASYNC_MAX_MESSAGES_INFLIGHT:
return "Maximum in-flight messages amount reached";
case MQTTASYNC_BAD_UTF8_STRING:
return "Invalid UTF8 string";
case MQTTASYNC_NULL_PARAMETER:
return "Invalid (NULL) parameter";
case MQTTASYNC_TOPICNAME_TRUNCATED:
return "Topic containing NULL characters has been truncated";
case MQTTASYNC_BAD_STRUCTURE:
return "Bad structure";
case MQTTASYNC_BAD_QOS:
return "Invalid QoS value";
case MQTTASYNC_NO_MORE_MSGIDS:
return "Too many pending commands";
case MQTTASYNC_OPERATION_INCOMPLETE:
return "Operation discarded before completion";
case MQTTASYNC_MAX_BUFFERED_MESSAGES:
return "No more messages can be buffered";
case MQTTASYNC_SSL_NOT_SUPPORTED:
return "SSL is not supported";
case MQTTASYNC_BAD_PROTOCOL:
return "Invalid protocole scheme";
}
return NULL;
}
......@@ -1187,6 +1187,13 @@ typedef struct
*/
DLLExport MQTTAsync_nameValue* MQTTAsync_getVersionInfo(void);
/**
* Returns a pointer to the string representation of the error or NULL.
*
* Do not free after use. Returns NULL if the error code is unknown.
*/
DLLExport const char* MQTTAsync_strerror(int code);
/**
* @cond MQTTAsync_main
......
......@@ -2098,6 +2098,37 @@ MQTTClient_nameValue* MQTTClient_getVersionInfo(void)
}
const char* MQTTClient_strerror(int code)
{
switch (code) {
case MQTTCLIENT_SUCCESS:
return "Success";
case MQTTCLIENT_FAILURE:
return "Failure";
case MQTTCLIENT_DISCONNECTED:
return "Disconnected";
case MQTTCLIENT_MAX_MESSAGES_INFLIGHT:
return "Maximum in-flight messages amount reached";
case MQTTCLIENT_BAD_UTF8_STRING:
return "Invalid UTF8 string";
case MQTTCLIENT_NULL_PARAMETER:
return "Invalid (NULL) parameter";
case MQTTCLIENT_TOPICNAME_TRUNCATED:
return "Topic containing NULL characters has been truncated";
case MQTTCLIENT_BAD_STRUCTURE:
return "Bad structure";
case MQTTCLIENT_BAD_QOS:
return "Invalid QoS value";
case MQTTCLIENT_SSL_NOT_SUPPORTED:
return "SSL is not supported";
case MQTTCLIENT_BAD_PROTOCOL:
return "Invalid protocole scheme";
}
return NULL;
}
/**
* See if any pending writes have been completed, and cleanup if so.
* Cleaning up means removing any publication data that was stored because the write did
......
......@@ -993,6 +993,13 @@ DLLExport void MQTTClient_free(void* ptr);
*/
DLLExport void MQTTClient_destroy(MQTTClient* handle);
/**
* Returns a pointer to the string representation of the error or NULL.
*
* Do not free after use. Returns NULL if the error code is unknown.
*/
DLLExport const char* MQTTClient_strerror(int code);
#endif
#ifdef __cplusplus
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment