diff options
author | jfhumann <j.f.humann@gmail.com> | 2014-04-18 21:09:44 +0200 |
---|---|---|
committer | jfhumann <j.f.humann@gmail.com> | 2014-04-18 21:09:44 +0200 |
commit | 013da806ec20b62a742aded9a9d2b8131193f30d (patch) | |
tree | bfe1f833f93cd4a57619fa149f5f9075a28862e2 /src/Protocol/Protocol132.cpp | |
parent | ProtoProxy: Added 1.7.9 compatibility. (diff) | |
download | cuberite-013da806ec20b62a742aded9a9d2b8131193f30d.tar cuberite-013da806ec20b62a742aded9a9d2b8131193f30d.tar.gz cuberite-013da806ec20b62a742aded9a9d2b8131193f30d.tar.bz2 cuberite-013da806ec20b62a742aded9a9d2b8131193f30d.tar.lz cuberite-013da806ec20b62a742aded9a9d2b8131193f30d.tar.xz cuberite-013da806ec20b62a742aded9a9d2b8131193f30d.tar.zst cuberite-013da806ec20b62a742aded9a9d2b8131193f30d.zip |
Diffstat (limited to 'src/Protocol/Protocol132.cpp')
-rw-r--r-- | src/Protocol/Protocol132.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/Protocol/Protocol132.cpp b/src/Protocol/Protocol132.cpp index ce5942a5c..1ef92b8f0 100644 --- a/src/Protocol/Protocol132.cpp +++ b/src/Protocol/Protocol132.cpp @@ -408,7 +408,8 @@ void cProtocol132::SendWholeInventory(const cWindow & a_Window) super::SendWholeInventory(a_Window); // Send the player inventory and hotbar: - const cInventory & Inventory = m_Client->GetPlayer()->GetInventory(); + cPlayer * Player = m_Client->GetPlayer(); + const cInventory & Inventory = Player->GetInventory(); int BaseOffset = a_Window.GetNumSlots() - (cInventory::invNumSlots - cInventory::invInventoryOffset); // Number of non-inventory slots char WindowID = a_Window.GetWindowID(); for (short i = 0; i < cInventory::invInventoryCount; i++) @@ -422,7 +423,7 @@ void cProtocol132::SendWholeInventory(const cWindow & a_Window) } // for i - Hotbar[] // Send even the item being dragged: - SendInventorySlot(-1, -1, m_Client->GetPlayer()->GetDraggingItem()); + SendInventorySlot(-1, -1, Player->GetDraggingItem()); } @@ -800,10 +801,12 @@ void cProtocol132::SendCompass(const cWorld & a_World) void cProtocol132::SendEncryptionKeyRequest(void) { cCSLock Lock(m_CSPacket); + cServer * Server = cRoot::Get()->GetServer(); WriteByte(0xfd); - WriteString(cRoot::Get()->GetServer()->GetServerID()); - WriteShort((short)(cRoot::Get()->GetServer()->GetPublicKeyDER().size())); - SendData(cRoot::Get()->GetServer()->GetPublicKeyDER().data(), cRoot::Get()->GetServer()->GetPublicKeyDER().size()); + WriteString(Server->GetServerID()); + const AString & PublicKeyDER = Server->GetPublicKeyDER(); + WriteShort((short) (PublicKeyDER.size())); + SendData(PublicKeyDER.data(), PublicKeyDER.size()); WriteShort(4); WriteInt((int)(intptr_t)this); // Using 'this' as the cryptographic nonce, so that we don't have to generate one each time :) Flush(); @@ -874,10 +877,11 @@ void cProtocol132::StartEncryption(const Byte * a_Key) // Prepare the m_AuthServerID: cSHA1Checksum Checksum; - AString ServerID = cRoot::Get()->GetServer()->GetServerID(); + cServer * Server = cRoot::Get()->GetServer(); + AString ServerID = Server->GetServerID(); Checksum.Update((const Byte *)ServerID.c_str(), ServerID.length()); Checksum.Update(a_Key, 16); - Checksum.Update((const Byte *)cRoot::Get()->GetServer()->GetPublicKeyDER().data(), cRoot::Get()->GetServer()->GetPublicKeyDER().size()); + Checksum.Update((const Byte *) Server->GetPublicKeyDER().data(), Server->GetPublicKeyDER().size()); Byte Digest[20]; Checksum.Finalize(Digest); cSHA1Checksum::DigestToJava(Digest, m_AuthServerID); |