#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-#include "des.h"
-#include "mdc2.h"
+#include <openssl/des.h>
+#include <openssl/mdc2.h>
#undef c2l
#define c2l(c,l) (l =((DES_LONG)(*((c)++))) , \
*((c)++)=(unsigned char)(((l)>>16L)&0xff), \
*((c)++)=(unsigned char)(((l)>>24L)&0xff))
-#ifndef NOPROTO
-static void mdc2_body(MDC2_CTX *c, unsigned char *in, unsigned int len);
-#else
-static void mdc2_body();
-#endif
-
-void MDC2_Init(c)
-MDC2_CTX *c;
+static void mdc2_body(MDC2_CTX *c, const unsigned char *in, unsigned int len);
+void MDC2_Init(MDC2_CTX *c)
{
c->num=0;
c->pad_type=1;
memset(&(c->hh[0]),0x25,MDC2_BLOCK);
}
-void MDC2_Update(c,in,len)
-MDC2_CTX *c;
-register unsigned char *in;
-unsigned long len;
+void MDC2_Update(MDC2_CTX *c, const unsigned char *in, unsigned long len)
{
int i,j;
}
}
-static void mdc2_body(c,in,len)
-MDC2_CTX *c;
-unsigned char *in;
-unsigned int len;
+static void mdc2_body(MDC2_CTX *c, const unsigned char *in, unsigned int len)
{
register DES_LONG tin0,tin1;
register DES_LONG ttin0,ttin1;
c->h[0]=(c->h[0]&0x9f)|0x40;
c->hh[0]=(c->hh[0]&0x9f)|0x20;
- des_set_odd_parity(c->h);
- des_set_key(c->h,k);
+ des_set_odd_parity(&c->h);
+ des_set_key_unchecked(&c->h,k);
des_encrypt(d,k,1);
- des_set_odd_parity(c->hh);
- des_set_key(c->hh,k);
+ des_set_odd_parity(&c->hh);
+ des_set_key_unchecked(&c->hh,k);
des_encrypt(dd,k,1);
ttin0=tin0^dd[0];
}
}
-void MDC2_Final(md,c)
-unsigned char *md;
-MDC2_CTX *c;
+void MDC2_Final(unsigned char *md, MDC2_CTX *c)
{
int i,j;