From 4ae0eecd4db4c6e6387069c918eb8c822a242a51 Mon Sep 17 00:00:00 2001
From: Him188 <Him188@mamoe.net>
Date: Fri, 7 Feb 2020 12:46:34 +0800
Subject: [PATCH] Add fast-fail check

---
 .../net/mamoe/mirai/qqandroid/network/highway/Codec.kt       | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/highway/Codec.kt b/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/highway/Codec.kt
index edc89d58e..a3b2d4d83 100644
--- a/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/highway/Codec.kt
+++ b/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/highway/Codec.kt
@@ -77,6 +77,7 @@ object Highway {
         dataSize: Int,
         md5: ByteArray
     ): ByteReadPacket {
+        require(uKey.size == 128) { "bad uKey. Required size=128, got ${uKey.size}" }
         val dataHighwayHead = CSDataHighwayHead.DataHighwayHead(
             version = 1,
             uin = uin.toString(),
@@ -93,7 +94,9 @@ object Highway {
             filesize = dataSize.toLong() and 0xFFffFFff,
             serviceticket = uKey,
             md5 = md5,
-            fileMd5 = md5
+            fileMd5 = md5,
+            flag = 0,
+            rtcode = 0
         )
         //println(data.readBytes().toUHexString())
         return Codec.buildC2SData(dataHighwayHead, segHead, EMPTY_BYTE_ARRAY, null, data, dataSize)