Prohibit low level cipher APIs in FIPS mode.
[openssl.git] / crypto / cast / cast.h
index 6cc5e8aa8cf046c125032e38ef7a5c4b3647bbe3..203922ea2b4cde79fc739fc71828480cc57e621c 100644 (file)
 extern "C" {
 #endif
 
-#ifdef NO_CAST
+#include <openssl/opensslconf.h>
+
+#ifdef OPENSSL_NO_CAST
 #error CAST is disabled.
 #endif
 
 #define CAST_ENCRYPT   1
 #define CAST_DECRYPT   0
 
-#define CAST_LONG unsigned long
+#define CAST_LONG unsigned int
 
 #define CAST_BLOCK     8
 #define CAST_KEY_LENGTH        16
@@ -81,19 +83,21 @@ typedef struct cast_key_st
        int short_key;  /* Use reduced rounds for short key */
        } CAST_KEY;
 
-void CAST_set_key(CAST_KEY *key, int len, unsigned char *data);
-void CAST_ecb_encrypt(const unsigned char *in,unsigned char *out,CAST_KEY *key,
+#ifdef OPENSSL_FIPS 
+void private_CAST_set_key(CAST_KEY *key, int len, const unsigned char *data);
+#endif
+void CAST_set_key(CAST_KEY *key, int len, const unsigned char *data);
+void CAST_ecb_encrypt(const unsigned char *in, unsigned char *out, const CAST_KEY *key,
                      int enc);
-void CAST_encrypt(CAST_LONG *data,CAST_KEY *key);
-void CAST_decrypt(CAST_LONG *data,CAST_KEY *key);
+void CAST_encrypt(CAST_LONG *data, const CAST_KEY *key);
+void CAST_decrypt(CAST_LONG *data, const CAST_KEY *key);
 void CAST_cbc_encrypt(const unsigned char *in, unsigned char *out, long length,
-                     CAST_KEY *ks, unsigned char *iv, int enc);
+                     const CAST_KEY *ks, unsigned char *iv, int enc);
 void CAST_cfb64_encrypt(const unsigned char *in, unsigned char *out,
-                       long length, CAST_KEY *schedule, unsigned char *ivec,
+                       long length, const CAST_KEY *schedule, unsigned char *ivec,
                        int *num, int enc);
 void CAST_ofb64_encrypt(const unsigned char *in, unsigned char *out, 
-                       long length, CAST_KEY *schedule, unsigned char *ivec,
+                       long length, const CAST_KEY *schedule, unsigned char *ivec,
                        int *num);
 
 #ifdef  __cplusplus