make EVP_dss() work for DSA signing
[oweals/openssl.git] / crypto / aes / aes_misc.c
index 6bec96f67d8c9ffbde19f195661e5ce0e168dd00..f083488ecb34aa842c7e8637945df1bf4fa72192 100644 (file)
@@ -1,6 +1,6 @@
 /* crypto/aes/aes_misc.c -*- mode:C; c-file-style: "eay" -*- */
 /* ====================================================================
- * Copyright (c) 1998-2001 The OpenSSL Project.  All rights reserved.
+ * Copyright (c) 1998-2002 The OpenSSL Project.  All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  */
 
 #include <openssl/opensslv.h>
+#include <openssl/crypto.h>
 #include <openssl/aes.h>
 #include "aes_locl.h"
 
-const char *AES_version="AES" OPENSSL_VERSION_PTEXT;
+const char AES_version[]="AES" OPENSSL_VERSION_PTEXT;
 
 const char *AES_options(void) {
 #ifdef FULL_UNROLL
@@ -62,3 +63,23 @@ const char *AES_options(void) {
         return "aes(partial)";
 #endif
 }
+
+/* FIPS wrapper functions to block low level AES calls in FIPS mode */
+
+int AES_set_encrypt_key(const unsigned char *userKey, const int bits,
+                       AES_KEY *key)
+       {
+#ifdef OPENSSL_FIPS
+       fips_cipher_abort(AES);
+#endif
+       return private_AES_set_encrypt_key(userKey, bits, key);
+       }
+
+int AES_set_decrypt_key(const unsigned char *userKey, const int bits,
+                       AES_KEY *key)
+       {
+#ifdef OPENSSL_FIPS
+       fips_cipher_abort(AES);
+#endif
+       return private_AES_set_decrypt_key(userKey, bits, key);
+       }