/// <summary> /// Processes the response to our LIT Handler. The data segment of the message should be /// identical to our request data, as this is an echo implementation. /// </summary> /// <param name="session"></param> /// <param name="message"></param> public unsafe override void ProcessMessage(IDSPExSession session, TransactionMessage message) { bool match = RequestData.Length == message.DataLength; //if (match) //{ // fixed (byte* pRequestBuffer = RequestData) // fixed (byte* pResponseBuffer = message.DataBuffer) // { // byte* pResponseBuffer_ = pResponseBuffer + message.DataOffset; // match = memcmp(pRequestBuffer, pResponseBuffer_, RequestData.Length) == 0; // } //} ResponseDataMatched = match; session.DeregisterLITransactionHandler(this); OnCompletion(); Logger.L(LoggerLevel.Info, "Echo response matched? " + match); }
/// <summary> /// Processes the response to our LIT Handler. The data segment of the message should be /// identical to our request data, as this is an echo implementation. /// </summary> /// <param name="session"></param> /// <param name="message"></param> public override void ProcessMessage(IDSPExSession session, TransactionMessage message) { ResponseData = message.DataBuffer.SubArray(message.DataOffset, message.DataLength); session.DeregisterLITransactionHandler(this); OnCompletion(); }