Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(43)

Unified Diff: core/fpdfapi/fpdf_parser/cpdf_crypto_handler.cpp

Issue 2190123002: Fixup crypto key generation. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: core/fpdfapi/fpdf_parser/cpdf_crypto_handler.cpp
diff --git a/core/fpdfapi/fpdf_parser/cpdf_crypto_handler.cpp b/core/fpdfapi/fpdf_parser/cpdf_crypto_handler.cpp
index 3cd973c277b05ef964fd0fa927207a9d95cdf9be..8e62d0f3bf7f7f0646e3056bac8786147a65d2f1 100644
--- a/core/fpdfapi/fpdf_parser/cpdf_crypto_handler.cpp
+++ b/core/fpdfapi/fpdf_parser/cpdf_crypto_handler.cpp
@@ -34,8 +34,6 @@ void CPDF_CryptoHandler::CryptBlock(FX_BOOL bEncrypt,
key1[m_KeyLen + 2] = (uint8_t)(objnum >> 16);
key1[m_KeyLen + 3] = (uint8_t)gennum;
key1[m_KeyLen + 4] = (uint8_t)(gennum >> 8);
- FXSYS_memcpy(key1 + m_KeyLen, &objnum, 3);
- FXSYS_memcpy(key1 + m_KeyLen + 3, &gennum, 2);
if (m_Cipher == FXCIPHER_AES) {
FXSYS_memcpy(key1 + m_KeyLen + 5, "sAlT", 4);
}
@@ -108,8 +106,11 @@ void* CPDF_CryptoHandler::CryptStart(uint32_t objnum,
}
uint8_t key1[48];
FXSYS_memcpy(key1, m_EncryptKey, m_KeyLen);
- FXSYS_memcpy(key1 + m_KeyLen, &objnum, 3);
- FXSYS_memcpy(key1 + m_KeyLen + 3, &gennum, 2);
+ key1[m_KeyLen + 0] = (uint8_t)objnum;
+ key1[m_KeyLen + 1] = (uint8_t)(objnum >> 8);
+ key1[m_KeyLen + 2] = (uint8_t)(objnum >> 16);
+ key1[m_KeyLen + 3] = (uint8_t)gennum;
+ key1[m_KeyLen + 4] = (uint8_t)(gennum >> 8);
if (m_Cipher == FXCIPHER_AES) {
FXSYS_memcpy(key1 + m_KeyLen + 5, "sAlT", 4);
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698