1
0
mirror of https://github.com/Mrs4s/MiraiGo.git synced 2025-05-04 11:07:40 +08:00

client/internal/oicq: clean up

This commit is contained in:
wdvxdr 2022-08-28 17:01:50 +08:00
parent 63cd911a25
commit a3c348100d

View File

@ -111,16 +111,13 @@ func (c *Codec) Unmarshal(data []byte) (*Message, error) {
reader.ReadByte() reader.ReadByte()
switch encryptType { switch encryptType {
case 0: case 0:
m.Body = func() (decrypted []byte) { d := reader.ReadBytes(reader.Len() - 1)
d := reader.ReadBytes(reader.Len() - 1) defer func() {
defer func() { if pan := recover(); pan != nil {
if pan := recover(); pan != nil { m.Body = binary.NewTeaCipher(c.randomKey).Decrypt(d)
tea := binary.NewTeaCipher(c.randomKey) }
decrypted = tea.Decrypt(d)
}
}()
return binary.NewTeaCipher(c.ecdh.ShareKey).Decrypt(d)
}() }()
m.Body = binary.NewTeaCipher(c.ecdh.ShareKey).Decrypt(d)
case 3: case 3:
d := reader.ReadBytes(reader.Len() - 1) d := reader.ReadBytes(reader.Len() - 1)
m.Body = binary.NewTeaCipher(c.WtSessionTicketKey).Decrypt(d) m.Body = binary.NewTeaCipher(c.WtSessionTicketKey).Decrypt(d)