in source/core_mqtt_agent.c [908:942]
static bool validateParams( MQTTAgentCommandType_t commandType,
const void * pParams )
{
bool ret = false;
const MQTTAgentConnectArgs_t * pConnectArgs = NULL;
const MQTTAgentSubscribeArgs_t * pSubscribeArgs = NULL;
assert( ( commandType == CONNECT ) || ( commandType == PUBLISH ) ||
( commandType == SUBSCRIBE ) || ( commandType == UNSUBSCRIBE ) );
switch( commandType )
{
case CONNECT:
pConnectArgs = ( const MQTTAgentConnectArgs_t * ) pParams;
ret = ( ( pConnectArgs != NULL ) &&
( pConnectArgs->pConnectInfo != NULL ) );
break;
case SUBSCRIBE:
case UNSUBSCRIBE:
pSubscribeArgs = ( const MQTTAgentSubscribeArgs_t * ) pParams;
ret = ( ( pSubscribeArgs != NULL ) &&
( pSubscribeArgs->pSubscribeInfo != NULL ) &&
( pSubscribeArgs->numSubscriptions != 0U ) );
break;
case PUBLISH:
default:
/* Publish, does not need to be cast since we do not check it. */
ret = ( pParams != NULL );
break;
}
return ret;
}