Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
[fw/altos] / src / aes / ao_aes.c
index 71ffadb19e658cccb72826d49aeddc1b51d25601..0bc8188e3d2ae68c7eca2b78a214b473ce34b712 100644 (file)
@@ -310,6 +310,10 @@ void xrijndaelEncrypt(word32 block[], roundkey *rkk)
   xKeyAddition(block, block2, rp, BC);
 }
 
+#if NOTUSED
+/* We don't actually need this in AltOS, so don't bother including it */
+
+/* Decryption of one block. */
 static
 void xrijndaelDecrypt(word32 block[], roundkey *rkk)
 {
@@ -352,21 +356,23 @@ void xrijndaelDecrypt(word32 block[], roundkey *rkk)
 
   xKeyAddition(block, block, rp, BC);
 }
+#endif
 
 uint8_t ao_aes_mutex;
-static uint8_t key[16];
+static word32 key[16/4];
 static roundkey        rkk;
 
-static uint8_t iv[16];
+static word32 iv[16/4];
 
 void
 ao_aes_set_mode(enum ao_aes_mode mode)
 {
+       (void) mode;
        /* we only do CBC_MAC anyways... */
 }
 
 void
-ao_aes_set_key(__xdata uint8_t *in)
+ao_aes_set_key(uint8_t *in)
 {
        memcpy(key, in, 16);
        xrijndaelKeySched((word32 *) key, 128, 128, &rkk);
@@ -379,14 +385,15 @@ ao_aes_zero_iv(void)
 }
 
 void
-ao_aes_run(__xdata uint8_t *in,
-          __xdata uint8_t *out)
+ao_aes_run(uint8_t *in,
+          uint8_t *out)
 {
        uint8_t i;
+       uint8_t *_iv = (uint8_t *) iv;
 
        for (i = 0; i < 16; i++)
-               iv[i] ^= in[i];
-       xrijndaelEncrypt((word32 *) iv, &rkk);
+               _iv[i] ^= in[i];
+       xrijndaelEncrypt(iv, &rkk);
        if (out)
                memcpy(out, iv, 16);
 }