Support new key size interface.
authormdw <mdw>
Sat, 17 Jun 2000 10:52:32 +0000 (10:52 +0000)
committermdw <mdw>
Sat, 17 Jun 2000 10:52:32 +0000 (10:52 +0000)
blowfish.h
des.c
des.h
des3.c
des3.h

index f2f8b64..c8c0444 100644 (file)
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
- * $Id: blowfish.h,v 1.2 1999/12/10 23:29:48 mdw Exp $
+ * $Id: blowfish.h,v 1.3 2000/06/17 10:48:13 mdw Exp $
  *
  * The Blowfish block cipher
  *
@@ -30,6 +30,9 @@
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: blowfish.h,v $
+ * Revision 1.3  2000/06/17 10:48:13  mdw
+ * Support new key size interface.
+ *
  * Revision 1.2  1999/12/10 23:29:48  mdw
  * Change header file guard names.
  *
 /*----- Magical numbers ---------------------------------------------------*/
 
 #define BLOWFISH_BLKSZ 8
-#define BLOWFISH_KEYSZ 0
+#define BLOWFISH_KEYSZ 32
 #define BLOWFISH_CLASS (N, B, 64)
 
+extern const octet blowfish_keysz[];
+
 /*----- Data structures ---------------------------------------------------*/
 
 typedef struct blowfish_ctx {
diff --git a/des.c b/des.c
index cb73a8e..d48637b 100644 (file)
--- a/des.c
+++ b/des.c
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
- * $Id: des.c,v 1.1 1999/09/03 08:41:11 mdw Exp $
+ * $Id: des.c,v 1.2 2000/06/17 10:52:32 mdw Exp $
  *
  * The Data Encryption Standard
  *
@@ -30,6 +30,9 @@
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: des.c,v $
+ * Revision 1.2  2000/06/17 10:52:32  mdw
+ * Support new key size interface.
+ *
  * Revision 1.1  1999/09/03 08:41:11  mdw
  * Initial import.
  *
 #include "blkc.h"
 #include "des-base.h"
 #include "des.h"
+#include "gcipher.h"
+
+/*----- Global variables --------------------------------------------------*/
+
+const octet des_keysz[] = { KSZ_SET, 7, 8, 0 };
 
 /*----- Main code ---------------------------------------------------------*/
 
@@ -189,7 +197,7 @@ void des_init(des_ctx *k, const void *buf, size_t sz)
    * table.
    */
 
-  assert(((void)"DES key must be 56 or 64 bits", sz == 7 || sz == 8));
+  KSZ_ASSERT(des, sz);
 
   if (sz == 8) {
     const octet *p = buf;
diff --git a/des.h b/des.h
index ac1461a..d62d72c 100644 (file)
--- a/des.h
+++ b/des.h
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
- * $Id: des.h,v 1.2 1999/12/10 23:29:48 mdw Exp $
+ * $Id: des.h,v 1.3 2000/06/17 10:52:32 mdw Exp $
  *
  * The Data Encryption Standard
  *
@@ -30,6 +30,9 @@
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: des.h,v $
+ * Revision 1.3  2000/06/17 10:52:32  mdw
+ * Support new key size interface.
+ *
  * Revision 1.2  1999/12/10 23:29:48  mdw
  * Change header file guard names.
  *
@@ -69,6 +72,8 @@
 #define DES_KEYSZ 7
 #define DES_CLASS (N, B, 64)
 
+extern const octet des_keysz[];
+
 /*----- Data structures ---------------------------------------------------*/
 
 typedef struct des_ctx {
diff --git a/des3.c b/des3.c
index 281d8ea..61d96c3 100644 (file)
--- a/des3.c
+++ b/des3.c
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
- * $Id: des3.c,v 1.1 1999/09/03 08:41:11 mdw Exp $
+ * $Id: des3.c,v 1.2 2000/06/17 10:52:32 mdw Exp $
  *
  * Implementation of double- and triple-DES
  *
@@ -30,6 +30,9 @@
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: des3.c,v $
+ * Revision 1.2  2000/06/17 10:52:32  mdw
+ * Support new key size interface.
+ *
  * Revision 1.1  1999/09/03 08:41:11  mdw
  * Initial import.
  *
 #include "des-base.h"
 #include "des.h"
 #include "des3.h"
+#include "gcipher.h"
+
+/*----- Global variables --------------------------------------------------*/
+
+const octet des3_keysz[] = { KSZ_SET, 21, 7, 8, 14, 16, 24, 0 };
 
 /*----- Main code ---------------------------------------------------------*/
 
@@ -70,8 +78,7 @@ void des3_init(des3_ctx *k, const void *buf, size_t sz)
   size_t step;
   const octet *p = buf;
 
-  assert(((void)("des3 key length must be one of 7, 8, 14, 16, 21 or 24"),
-               (sz % 7 == 0 || sz % 8 == 0) && sz < 25));
+  KSZ_ASSERT(des3, sz);
 
   if (sz % 7 == 0)
     step = 7;
diff --git a/des3.h b/des3.h
index d3bf294..0a276f3 100644 (file)
--- a/des3.h
+++ b/des3.h
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
- * $Id: des3.h,v 1.2 1999/12/10 23:29:48 mdw Exp $
+ * $Id: des3.h,v 1.3 2000/06/17 10:52:32 mdw Exp $
  *
  * Implementation of double- and triple-DES
  *
@@ -30,6 +30,9 @@
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: des3.h,v $
+ * Revision 1.3  2000/06/17 10:52:32  mdw
+ * Support new key size interface.
+ *
  * Revision 1.2  1999/12/10 23:29:48  mdw
  * Change header file guard names.
  *
@@ -70,6 +73,8 @@
 #define DES3_KEYSZ 21
 #define DES3_CLASS (N, B, 64)
 
+extern const octet des3_keysz[];
+
 /*----- Data structures ---------------------------------------------------*/
 
 typedef struct des3_ctx {