static octet s[256], si[256];
static uint32 t[4][256], ti[4][256];
static uint32 u[4][256];
-static octet rc[32];
+static octet rc[120];
/*----- Main code ---------------------------------------------------------*/
* Rijndael tables [generated]\n\
*/\n\
\n\
-#ifndef CATACOMB_RIJNDAEL_TAB_H\n\
-#define CATACOMB_RIJNDAEL_TAB_H\n\
+#include \"rijndael-base.h\"\n\
");
/* --- Write out the S-box --- */
fputs("\
/* --- The byte substitution and its inverse --- */\n\
\n\
-#define RIJNDAEL_S { \\\n\
+const octet rijndael_s[256] = {\n\
", stdout);
for (i = 0; i < 256; i++) {
printf("0x%02x", s[i]);
if (i == 255)
- fputs(" \\\n}\n\n", stdout);
+ fputs("\n};\n\n", stdout);
else if (i % 8 == 7)
- fputs(", \\\n ", stdout);
+ fputs(",\n ", stdout);
else
fputs(", ", stdout);
}
fputs("\
-#define RIJNDAEL_SI { \\\n\
+const octet rijndael_si[256] = {\n\
", stdout);
for (i = 0; i < 256; i++) {
printf("0x%02x", si[i]);
if (i == 255)
- fputs(" \\\n}\n\n", stdout);
+ fputs("\n};\n\n", stdout);
else if (i % 8 == 7)
- fputs(", \\\n ", stdout);
+ fputs(",\n ", stdout);
else
fputs(", ", stdout);
}
fputs("\
/* --- The big round tables --- */\n\
\n\
-#define RIJNDAEL_T { \\\n\
+const uint32 rijndael_t[4][256] = {\n\
{ ", stdout);
for (j = 0; j < 4; j++) {
for (i = 0; i < 256; i++) {
printf("0x%08lx", (unsigned long)t[j][i]);
if (i == 255) {
if (j == 3)
- fputs(" } \\\n}\n\n", stdout);
+ fputs(" }\n};\n\n", stdout);
else
- fputs(" }, \\\n\
- \\\n\
- { ", stdout);
+ fputs(" },\n\n { ", stdout);
} else if (i % 4 == 3)
- fputs(", \\\n ", stdout);
+ fputs(",\n ", stdout);
else
fputs(", ", stdout);
}
}
fputs("\
-#define RIJNDAEL_TI { \\\n\
+const uint32 rijndael_ti[4][256] = {\n\
{ ", stdout);
for (j = 0; j < 4; j++) {
for (i = 0; i < 256; i++) {
printf("0x%08lx", (unsigned long)ti[j][i]);
if (i == 255) {
if (j == 3)
- fputs(" } \\\n}\n\n", stdout);
+ fputs(" }\n};\n\n", stdout);
else
- fputs(" }, \\\n\
- \\\n\
- { ", stdout);
+ fputs(" },\n\n { ", stdout);
} else if (i % 4 == 3)
- fputs(", \\\n ", stdout);
+ fputs(",\n ", stdout);
else
fputs(", ", stdout);
}
fputs("\
/* --- The decryption key schedule tables --- */\n\
\n\
-#define RIJNDAEL_U { \\\n\
+const uint32 rijndael_u[4][256] = {\n\
{ ", stdout);
for (j = 0; j < 4; j++) {
for (i = 0; i < 256; i++) {
printf("0x%08lx", (unsigned long)u[j][i]);
if (i == 255) {
if (j == 3)
- fputs(" } \\\n}\n\n", stdout);
+ fputs(" }\n};\n\n", stdout);
else
- fputs(" }, \\\n\
- \\\n\
- { ", stdout);
+ fputs(" },\n\n { ", stdout);
} else if (i % 4 == 3)
- fputs(", \\\n ", stdout);
+ fputs(",\n ", stdout);
else
fputs(", ", stdout);
}
/* --- Round constants --- */
rcon();
- fputs("\
+ printf("\
/* --- The round constants --- */\n\
\n\
-#define RIJNDAEL_RCON { \\\n\
- ", stdout);
+const octet rijndael_rcon[%u] = {\n\
+ ", (unsigned)sizeof(rc));
for (i = 0; i < sizeof(rc); i++) {
printf("0x%02x", rc[i]);
if (i == sizeof(rc) - 1)
- fputs(" \\\n}\n\n", stdout);
+ fputs("\n};\n", stdout);
else if (i % 8 == 7)
- fputs(", \\\n ", stdout);
+ fputs(",\n ", stdout);
else
fputs(", ", stdout);
}
/* --- Done --- */
- puts("#endif");
-
if (fclose(stdout)) {
fprintf(stderr, "error writing data\n");
exit(EXIT_FAILURE);