evp: prevent underflow in base64 decoding
[openssl.git] / crypto / rc4 / rc4.h
index a77898c1c8b482db17ac9b65348bd5c29ab59854..88ceb46bc54d11fbc613c049c24c938d6bcfada5 100644 (file)
 #ifndef HEADER_RC4_H
 #define HEADER_RC4_H
 
+#include <openssl/opensslconf.h> /* OPENSSL_NO_RC4, RC4_INT */
+#ifdef OPENSSL_NO_RC4
+#error RC4 is disabled.
+#endif
+
+#include <stddef.h>
+
 #ifdef  __cplusplus
 extern "C" {
 #endif
 
-#include "opensslconf.h" /* RC4_INT */
-
 typedef struct rc4_key_st
        {
        RC4_INT x,y;
        RC4_INT data[256];
        } RC4_KEY;
 
-#ifndef NOPROTO
  
 const char *RC4_options(void);
-void RC4_set_key(RC4_KEY *key, int len, unsigned char *data);
-void RC4(RC4_KEY *key, unsigned long len, unsigned char *indata,
+void RC4_set_key(RC4_KEY *key, int len, const unsigned char *data);
+void private_RC4_set_key(RC4_KEY *key, int len, const unsigned char *data);
+void RC4(RC4_KEY *key, size_t len, const unsigned char *indata,
                unsigned char *outdata);
 
-#else
-
-const char *RC4_options();
-void RC4_set_key();
-void RC4();
-
-#endif
-
 #ifdef  __cplusplus
 }
 #endif