コード例 #1
0
        /// <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);
        }
コード例 #2
0
 /// <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();
 }