summaryrefslogtreecommitdiff
path: root/utils/nwztools/upgtools/mg.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'utils/nwztools/upgtools/mg.cpp')
-rw-r--r--utils/nwztools/upgtools/mg.cpp26
1 files changed, 12 insertions, 14 deletions
diff --git a/utils/nwztools/upgtools/mg.cpp b/utils/nwztools/upgtools/mg.cpp
index f02b67375a..79039702db 100644
--- a/utils/nwztools/upgtools/mg.cpp
+++ b/utils/nwztools/upgtools/mg.cpp
@@ -28,43 +28,41 @@
28using namespace CryptoPP; 28using namespace CryptoPP;
29namespace 29namespace
30{ 30{
31 inline int dec_des_ecb(void *in, int size, void *out, uint8_t *key) 31 inline void dec_des_ecb(void *in, int size, void *out, uint8_t *key)
32 { 32 {
33 ECB_Mode< DES >::Decryption dec; 33 ECB_Mode< DES >::Decryption dec;
34 if(size % 8) 34 if(size % 8)
35 return 42; 35 abort(); /* size must be a multiple of 8 */
36 dec.SetKey(key, 8); 36 dec.SetKey(key, 8);
37 dec.ProcessData((byte*)out, (byte*)in, size); 37 dec.ProcessData((byte*)out, (byte*)in, size);
38 return 0;
39 } 38 }
40 39
41 inline int enc_des_ecb(void *in, int size, void *out, uint8_t *key) 40 inline void enc_des_ecb(void *in, int size, void *out, uint8_t *key)
42 { 41 {
43 ECB_Mode< DES >::Encryption enc; 42 ECB_Mode< DES >::Encryption enc;
44 if(size % 8) 43 if(size % 8)
45 return 42; 44 abort(); /* size must be a multiple of 8 */
46 enc.SetKey(key, 8); 45 enc.SetKey(key, 8);
47 enc.ProcessData((byte*)out, (byte*)in, size); 46 enc.ProcessData((byte*)out, (byte*)in, size);
48 return 0;
49 } 47 }
50} 48}
51 49
52int mg_decrypt_fw(void *in, int size, void *out, uint8_t *key) 50void mg_decrypt_fw(void *in, int size, void *out, uint8_t *key)
53{ 51{
54 return dec_des_ecb(in, size, out, key); 52 dec_des_ecb(in, size, out, key);
55} 53}
56 54
57int mg_encrypt_fw(void *in, int size, void *out, uint8_t *key) 55void mg_encrypt_fw(void *in, int size, void *out, uint8_t *key)
58{ 56{
59 return enc_des_ecb(in, size, out, key); 57 enc_des_ecb(in, size, out, key);
60} 58}
61 59
62int mg_decrypt_pass(void *in, int size, void *out, uint8_t *key) 60void mg_decrypt_pass(void *in, int size, void *out, uint8_t *key)
63{ 61{
64 return dec_des_ecb(in, size, out, key); 62 dec_des_ecb(in, size, out, key);
65} 63}
66 64
67int mg_encrypt_pass(void *in, int size, void *out, uint8_t *key) 65void mg_encrypt_pass(void *in, int size, void *out, uint8_t *key)
68{ 66{
69 return enc_des_ecb(in, size, out, key); 67 enc_des_ecb(in, size, out, key);
70} 68}