mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-08-08 09:09:46 +00:00
Merge pull request #130 from nohbdy/bugfix
Minor code and memory initialization fixes
This commit is contained in:
commit
98b4a35fb5
3 changed files with 8 additions and 4 deletions
|
@ -2,7 +2,7 @@
|
||||||
#include "unself.h"
|
#include "unself.h"
|
||||||
|
|
||||||
SELFDecrypter::SELFDecrypter(vfsStream& s)
|
SELFDecrypter::SELFDecrypter(vfsStream& s)
|
||||||
: self_f(s), key_v()
|
: self_f(s), key_v(), data_buf_length(0)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -92,9 +92,10 @@ bool SELFDecrypter::LoadHeaders(bool isElf32)
|
||||||
{
|
{
|
||||||
ControlInfo* cinfo = new ControlInfo();
|
ControlInfo* cinfo = new ControlInfo();
|
||||||
cinfo->Load(self_f);
|
cinfo->Load(self_f);
|
||||||
ctrlinfo_arr.Move(cinfo);
|
|
||||||
|
|
||||||
i += cinfo->size;
|
i += cinfo->size;
|
||||||
|
|
||||||
|
ctrlinfo_arr.Move(cinfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Read ELF section headers.
|
// Read ELF section headers.
|
||||||
|
@ -369,6 +370,9 @@ bool SELFDecrypter::DecryptData()
|
||||||
self_f.Seek(meta_shdr[i].data_offset);
|
self_f.Seek(meta_shdr[i].data_offset);
|
||||||
self_f.Read(buf, meta_shdr[i].data_size);
|
self_f.Read(buf, meta_shdr[i].data_size);
|
||||||
|
|
||||||
|
// Zero out our ctr nonce
|
||||||
|
memset(ctr_stream_block, 0, sizeof(ctr_stream_block));
|
||||||
|
|
||||||
// Perform AES-CTR encryption on the data blocks.
|
// Perform AES-CTR encryption on the data blocks.
|
||||||
aes_setkey_enc(&aes, data_key, 128);
|
aes_setkey_enc(&aes, data_key, 128);
|
||||||
aes_crypt_ctr(&aes, meta_shdr[i].data_size, &ctr_nc_off, data_iv, ctr_stream_block, buf, buf);
|
aes_crypt_ctr(&aes, meta_shdr[i].data_size, &ctr_nc_off, data_iv, ctr_stream_block, buf, buf);
|
||||||
|
|
|
@ -535,7 +535,7 @@ template<> __forceinline u64 MemoryBase::ReverseData<2>(u64 val) { return Revers
|
||||||
template<> __forceinline u64 MemoryBase::ReverseData<4>(u64 val) { return Reverse32(val); }
|
template<> __forceinline u64 MemoryBase::ReverseData<4>(u64 val) { return Reverse32(val); }
|
||||||
template<> __forceinline u64 MemoryBase::ReverseData<8>(u64 val) { return Reverse64(val); }
|
template<> __forceinline u64 MemoryBase::ReverseData<8>(u64 val) { return Reverse64(val); }
|
||||||
|
|
||||||
VirtualMemoryBlock::VirtualMemoryBlock() : MemoryBlock()
|
VirtualMemoryBlock::VirtualMemoryBlock() : MemoryBlock(), m_reserve_size(0)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ struct MemInfo
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
MemInfo()
|
MemInfo() : addr(0), size(0)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue