mirror of
https://github.com/mamoe/mirai.git
synced 2025-03-23 05:40:10 +08:00
[core] decode SsoSecureA2Access
This commit is contained in:
parent
1dacce61cd
commit
1fde79d7ad
@ -18,7 +18,7 @@ import net.mamoe.mirai.internal.network.components.PacketCodecException.Kind.*
|
||||
import net.mamoe.mirai.internal.network.handler.selector.NetworkException
|
||||
import net.mamoe.mirai.internal.network.protocol.packet.*
|
||||
import net.mamoe.mirai.internal.network.protocol.packet.login.WtLogin
|
||||
import net.mamoe.mirai.internal.network.protocol.packet.sso.PREFIX_TRPC_SSO
|
||||
import net.mamoe.mirai.internal.network.protocol.packet.sso.TRpcRawPacket
|
||||
import net.mamoe.mirai.internal.utils.crypto.Ecdh
|
||||
import net.mamoe.mirai.internal.utils.crypto.TEA
|
||||
import net.mamoe.mirai.utils.*
|
||||
@ -174,7 +174,7 @@ internal class PacketCodecImpl : PacketCodec {
|
||||
"which may means protocol is updated.",
|
||||
flag3Exception
|
||||
)
|
||||
} else if (raw.commandName.startsWith(PREFIX_TRPC_SSO)) {
|
||||
} else if (raw.commandName.startsWith(TRpcRawPacket.COMMAND_PREFIX)) {
|
||||
PacketLogger.verbose { "received a trpc native packet: ${raw.commandName}" }
|
||||
} else {
|
||||
throw flag3Exception
|
||||
@ -194,7 +194,7 @@ internal class PacketCodecImpl : PacketCodec {
|
||||
raw.commandName,
|
||||
raw.sequenceId,
|
||||
raw.body.withUse {
|
||||
if (raw.commandName.startsWith(PREFIX_TRPC_SSO)) {
|
||||
if (raw.commandName.startsWith(TRpcRawPacket.COMMAND_PREFIX)) {
|
||||
readBytes()
|
||||
} else {
|
||||
try {
|
||||
|
@ -27,6 +27,7 @@ import net.mamoe.mirai.internal.network.protocol.packet.login.Heartbeat
|
||||
import net.mamoe.mirai.internal.network.protocol.packet.login.StatSvc
|
||||
import net.mamoe.mirai.internal.network.protocol.packet.login.WtLogin
|
||||
import net.mamoe.mirai.internal.network.protocol.packet.sso.SsoEstablishShareKey
|
||||
import net.mamoe.mirai.internal.network.protocol.packet.sso.SsoSecureA2Access
|
||||
import net.mamoe.mirai.internal.network.protocol.packet.summarycard.ChangeFriendRemark
|
||||
import net.mamoe.mirai.internal.network.protocol.packet.summarycard.SummaryCard
|
||||
import net.mamoe.mirai.utils.DeprecatedSinceMirai
|
||||
@ -133,6 +134,7 @@ internal object KnownPacketFactories {
|
||||
WtLogin.ExchangeEmp,
|
||||
WtLogin.TransEmp,
|
||||
SsoEstablishShareKey,
|
||||
SsoSecureA2Access,
|
||||
StatSvc.Register,
|
||||
StatSvc.GetOnlineStatus,
|
||||
StatSvc.SimpleGet,
|
||||
|
@ -14,12 +14,22 @@ import net.mamoe.mirai.internal.QQAndroidBot
|
||||
import net.mamoe.mirai.internal.network.Packet
|
||||
import net.mamoe.mirai.internal.network.protocol.packet.OutgoingPacketFactory
|
||||
|
||||
internal object SsoEstablishShareKey : OutgoingPacketFactory<SsoEstablishShareKey.RawData>(
|
||||
"trpc.o3.ecdh_access.EcdhAccess.SsoEstablishShareKey"
|
||||
) {
|
||||
internal abstract class TRpcRawPacket(commandName: String) :
|
||||
OutgoingPacketFactory<TRpcRawPacket.RawData>(commandName) {
|
||||
internal class RawData(val data: ByteArray) : Packet
|
||||
|
||||
override suspend fun ByteReadPacket.decode(bot: QQAndroidBot): RawData {
|
||||
return RawData(readBytes())
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
const val COMMAND_PREFIX = "trpc.o3"
|
||||
}
|
||||
}
|
||||
|
||||
internal object SsoEstablishShareKey :
|
||||
TRpcRawPacket("$COMMAND_PREFIX.ecdh_access.EcdhAccess.SsoEstablishShareKey")
|
||||
|
||||
internal object SsoSecureA2Access :
|
||||
TRpcRawPacket("$COMMAND_PREFIX.ecdh_access.EcdhAccess.SsoSecureA2Access")
|
||||
|
@ -1,12 +0,0 @@
|
||||
/*
|
||||
* Copyright 2019-2023 Mamoe Technologies and contributors.
|
||||
*
|
||||
* 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证.
|
||||
* Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link.
|
||||
*
|
||||
* https://github.com/mamoe/mirai/blob/dev/LICENSE
|
||||
*/
|
||||
|
||||
package net.mamoe.mirai.internal.network.protocol.packet.sso
|
||||
|
||||
internal const val PREFIX_TRPC_SSO = "trpc.o3"
|
Loading…
Reference in New Issue
Block a user