
Hi Andreas,
thanks for fixing this:
On 05/04/2016 23:13, Andreas Fenkart wrote:
Signed-off-by: Andreas Fenkart andreas.fenkart@digitalstrom.com
tools/env/fw_env.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c index 1420ac5..c362a41 100644 --- a/tools/env/fw_env.c +++ b/tools/env/fw_env.c @@ -106,7 +106,8 @@ static struct environment environment = { .flag_scheme = FLAG_NONE, };
-static int env_aes_cbc_crypt(char *data, const int enc); +static int env_aes_cbc_crypt(char *data, const int enc,
uint8_t key[AES_KEY_LENGTH]);
Formally, is it not simply as pointer ?
static int env_aes_cbc_crypt(char *data, const int enc, uint8_t *key);
static int HaveRedundEnv = 0;
@@ -304,7 +305,8 @@ int fw_env_close(void) { int ret; if (common_args.aes_flag) {
ret = env_aes_cbc_crypt(environment.data, 1);
ret = env_aes_cbc_crypt(environment.data, 1,
if (ret) { fprintf(stderr, "Error: can't encrypt env for flash\n");common_args.aes_key);
@@ -949,7 +951,8 @@ static int flash_flag_obsolete (int dev, int fd, off_t offset) }
/* Encrypt or decrypt the environment before writing or reading it. */ -static int env_aes_cbc_crypt(char *payload, const int enc) +static int env_aes_cbc_crypt(char *payload, const int enc,
uint8_t key[AES_KEY_LENGTH])
Ditto.
{ uint8_t *data = (uint8_t *)payload; const int len = getenvsize(); @@ -957,7 +960,7 @@ static int env_aes_cbc_crypt(char *payload, const int enc) uint32_t aes_blocks;
/* First we expand the key. */
- aes_expand_key(common_args.aes_key, key_exp);
aes_expand_key(key, key_exp);
/* Calculate the number of AES blocks to encrypt. */ aes_blocks = DIV_ROUND_UP(len, AES_KEY_LENGTH);
@@ -1186,7 +1189,8 @@ int fw_env_open(void) crc0 = crc32 (0, (uint8_t *) environment.data, ENV_SIZE);
if (common_args.aes_flag) {
ret = env_aes_cbc_crypt(environment.data, 0);
ret = env_aes_cbc_crypt(environment.data, 0,
if (ret) return ret; }common_args.aes_key);
@@ -1243,7 +1247,8 @@ int fw_env_open(void) crc1 = crc32 (0, (uint8_t *) redundant->data, ENV_SIZE);
if (common_args.aes_flag) {
ret = env_aes_cbc_crypt(redundant->data, 0);
ret = env_aes_cbc_crypt(redundant->data, 0,
}common_args.aes_key); if (ret) return ret;
Regards, Stefano