修正内网解密错误bug

This commit is contained in:
cdyong 2016-07-20 15:08:38 +00:00
parent cb82f4eefb
commit 7ac17fa4e2
3 changed files with 43 additions and 41 deletions

View File

@ -97,7 +97,7 @@ bool HelloMessage::Read(Stream& ms)
void HelloMessage::Write(Stream& ms) const
{
BinaryPair bp(ms);
bp.Set("ErrorCode", ErrCode);
bp.Set("Ver", Version);
bp.Set("Type", Type);
bp.Set("Name", Name);

View File

@ -246,7 +246,9 @@ bool TokenController::OnReceive(Message& msg)
remote->Show(false);
debug_printf(" Code 0x%02X Key: ", msg.Code);
Key.Show(true);
return false;
msg.Length = 0;
return Controller::OnReceive(msg);
}
}

View File

@ -48,15 +48,15 @@ void TokenSession::OnReceive(TokenMessage& msg)
TS("TokenSession::OnReceive");
LastActive = Sys.Ms();
if (Token == 0 && msg.Code > 2)
{
auto rs = msg.CreateReply();
rs.Code = 0x01;
rs.Error = true;
HelloMessage ext;
ext.ErrCode = 0xFF;
ext.Reply = true;
ext.WriteMessage(rs);
Control.Reply(rs);
@ -108,8 +108,8 @@ bool TokenSession::OnHello(TokenMessage& msg)
auto now = Sys.Ms();
auto crc = Crc::Hash(Buffer(&now, 8));
key = Buffer(&crc, 4);
debug_printf("creat key: ");
key.Show(true);
//通知其它内网,密码被修改了
}
ext2.Key = key;