/********************************************************************* * @fn zclClosures_HdlIncoming * * @brief Callback from ZCL to process incoming Commands specific * to this cluster library or Profile commands for attributes * that aren't in the attribute list * * @param pInMsg - pointer to the incoming message * @param logicalClusterID * * @return ZStatus_t */ static ZStatus_t zclClosures_HdlIncoming( zclIncoming_t *pInMsg ) { ZStatus_t stat = ZSuccess; #if defined ( INTER_PAN ) if ( StubAPS_InterPan( pInMsg->msg->srcAddr.panId, pInMsg->msg->srcAddr.endPoint ) ) return ( stat ); // Cluster not supported thru Inter-PAN #endif if ( zcl_ClusterCmd( pInMsg->hdr.fc.type ) ) { // Is this a manufacturer specific command? if ( pInMsg->hdr.fc.manuSpecific == 0 ) { stat = zclClosures_HdlInSpecificCommands( pInMsg ); } else { // We don't support any manufacturer specific command. stat = ZFailure; } } else { // Handle all the normal (Read, Write...) commands -- should never get here stat = ZFailure; } return ( stat ); }
/********************************************************************* * @fn zclClosures_HdlIncoming * * @brief Callback from ZCL to process incoming Commands specific * to this cluster library or Profile commands for attributes * that aren't in the attribute list * * @param pInMsg - pointer to the incoming message * @param logicalClusterID * * @return ZStatus_t */ static ZStatus_t zclClosures_HdlIncoming( zclIncoming_t *pInMsg, uint16 logicalClusterID ) { ZStatus_t stat = ZSuccess; if ( zcl_ClusterCmd( pInMsg->hdr.fc.type ) ) { // Is this a manufacturer specific command? if ( pInMsg->hdr.fc.manuSpecific == 0 ) { stat = zclClosures_HdlInSpecificCommands( pInMsg, logicalClusterID ); } else { // We don't support any manufacturer specific command -- ignore it. stat = ZFailure; } } else { // Handle all the normal (Read, Write...) commands stat = ZFailure; } return ( stat ); }