Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r1e62db4e4c11657a30823872d3a523814c9c7419 -rcbef3eeccf761b959283d027da24ac389df48434 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 1e62db4e4c11657a30823872d3a523814c9c7419) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision cbef3eeccf761b959283d027da24ac389df48434) @@ -4920,4 +4920,29 @@ sendTestAckResponseMsg( (MSG_ID_T)message->hdr.msgID, result ); } +/*********************************************************************//** + * @brief + * The handleDGROStatusRequest function handles a request + * to get the RO only mode + * @details Inputs: none + * @details Outputs: message handled + * @param message a pointer to the message to handle + * @return none + *************************************************************************/ +void handleDGROStatusRequest( MESSAGE_T* message ) +{ + REQUEST_REJECT_REASON_CODE_T rejReason = REQUEST_REJECT_REASON_NONE; + BOOL roMode = FALSE; + + if ( 0 == message->hdr.payloadLen ) + { + roMode = isROOnlyModeEnabled(); + } + else + { + rejReason = REQUEST_REJECT_REASON_DG_RO_ONLY_MODE_INVALID_PAYLOAD_LENGTH; + } + sendUIResponseMsg( MSG_ID_DG_RO_ONLY_MODE_STATUS_RESPONSE, roMode, rejReason ); +} + /**@}*/