mirror of
https://github.com/Atmosphere-NX/Atmosphere.git
synced 2024-11-15 03:27:49 +01:00
se: Fix compilation issues (#36)
* se: Correct excess argument errors with se_perform_aes_block_operation * se: Fix excess arguments with set_se_ctr * se: Correct variable identifiers in se_synchronous_exp_mod * se: Correct offset variable identifier in se_get_exp_mod_output
This commit is contained in:
parent
3596032869
commit
765ae2c06a
@ -313,8 +313,8 @@ void se_synchronous_exp_mod(unsigned int keyslot, void *dst, size_t dst_size, co
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Endian swap the input. */
|
/* Endian swap the input. */
|
||||||
for (size_t i = size; i > 0; i--) {
|
for (size_t i = src_size; i > 0; i--) {
|
||||||
stack_buf[i] = *((uint8_t *)buf + size - i);
|
stack_buf[i] = *((uint8_t *)src + src_size - i);
|
||||||
}
|
}
|
||||||
|
|
||||||
SECURITY_ENGINE->CONFIG_REG = (ALG_RSA | DST_RSAREG);
|
SECURITY_ENGINE->CONFIG_REG = (ALG_RSA | DST_RSAREG);
|
||||||
@ -335,7 +335,7 @@ void se_get_exp_mod_output(void *buf, size_t size) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
uint32_t *p_out = ((uint32_t *)buf) + num_dwords - 1;
|
uint32_t *p_out = ((uint32_t *)buf) + num_dwords - 1;
|
||||||
uint32_t out_ofs = 0;
|
uint32_t offset = 0;
|
||||||
|
|
||||||
/* Copy endian swapped output. */
|
/* Copy endian swapped output. */
|
||||||
while (num_dwords) {
|
while (num_dwords) {
|
||||||
@ -416,7 +416,7 @@ void se_aes_ctr_crypt(unsigned int keyslot, void *dst, size_t dst_size, const vo
|
|||||||
SECURITY_ENGINE->_0x80C = 1;
|
SECURITY_ENGINE->_0x80C = 1;
|
||||||
SECURITY_ENGINE->CONFIG_REG = (ALG_AES_ENC | DST_MEMORY);
|
SECURITY_ENGINE->CONFIG_REG = (ALG_AES_ENC | DST_MEMORY);
|
||||||
SECURITY_ENGINE->CRYPTO_REG = (keyslot << 24) | 0x91E;
|
SECURITY_ENGINE->CRYPTO_REG = (keyslot << 24) | 0x91E;
|
||||||
set_se_ctr(ctr, ctr_size);
|
set_se_ctr(ctr);
|
||||||
|
|
||||||
/* Handle any aligned blocks. */
|
/* Handle any aligned blocks. */
|
||||||
size_t aligned_size = (size_t)num_blocks << 4;
|
size_t aligned_size = (size_t)num_blocks << 4;
|
||||||
@ -443,7 +443,7 @@ void se_aes_ecb_encrypt_block(unsigned int keyslot, void *dst, size_t dst_size,
|
|||||||
/* Set configuration high (256-bit vs 128-bit) based on parameter. */
|
/* Set configuration high (256-bit vs 128-bit) based on parameter. */
|
||||||
SECURITY_ENGINE->CONFIG_REG = (ALG_AES_ENC | DST_MEMORY) | (config_high << 16);
|
SECURITY_ENGINE->CONFIG_REG = (ALG_AES_ENC | DST_MEMORY) | (config_high << 16);
|
||||||
SECURITY_ENGINE->CRYPTO_REG = keyslot << 24;
|
SECURITY_ENGINE->CRYPTO_REG = keyslot << 24;
|
||||||
se_perform_aes_block_operation(1, dst, 0x10, src, 0x10);
|
se_perform_aes_block_operation(dst, 0x10, src, 0x10);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -463,7 +463,7 @@ void se_aes_ecb_decrypt_block(unsigned int keyslot, void *dst, size_t dst_size,
|
|||||||
|
|
||||||
SECURITY_ENGINE->CONFIG_REG = (ALG_AES_DEC | DST_MEMORY);
|
SECURITY_ENGINE->CONFIG_REG = (ALG_AES_DEC | DST_MEMORY);
|
||||||
SECURITY_ENGINE->CRYPTO_REG = keyslot << 24;
|
SECURITY_ENGINE->CRYPTO_REG = keyslot << 24;
|
||||||
se_perform_aes_block_operation(1, dst, 0x10, src, 0x10);
|
se_perform_aes_block_operation(dst, 0x10, src, 0x10);
|
||||||
}
|
}
|
||||||
|
|
||||||
void shift_left_xor_rb(uint8_t *key) {
|
void shift_left_xor_rb(uint8_t *key) {
|
||||||
|
Loading…
Reference in New Issue
Block a user