* Based on draft-ietf-pppext-eap-srp-03.txt.
*/
-#define RCSID "$Id: eap.c,v 1.1 2002/11/02 19:48:12 carlsonj Exp $"
+#define RCSID "$Id: eap.c,v 1.4 2004/11/09 22:39:25 paulus Exp $"
/*
* TODO:
#include "pppd.h"
#include "pathnames.h"
#include "md5.h"
-/* For MD5_SIGNATURE_SIZE and MIN/MAX_CHALLENGE_LENGTH; should fix. */
-#include "chap.h"
#include "eap.h"
#ifdef USE_SRP
static const char rcsid[] = RCSID;
eap_state eap_states[NUM_PPP]; /* EAP state; one for each unit */
+#ifdef USE_SRP
static char *pn_secret = NULL; /* Pseudonym generating secret */
+#endif
/*
* Command-line options.
eap_send_nak(esp, id, EAPT_SRP);
break;
}
- MD5Init(&mdContext);
+ MD5_Init(&mdContext);
typenum = id;
- MD5Update(&mdContext, &typenum, 1);
- MD5Update(&mdContext, secret, secret_len);
+ MD5_Update(&mdContext, &typenum, 1);
+ MD5_Update(&mdContext, secret, secret_len);
BZERO(secret, sizeof (secret));
- MD5Update(&mdContext, inp, vallen);
- MD5Final(hash, &mdContext);
+ MD5_Update(&mdContext, inp, vallen);
+ MD5_Final(hash, &mdContext);
eap_chap_response(esp, id, hash, esp->es_client.ea_name,
esp->es_client.ea_namelen);
break;
eap_send_failure(esp);
break;
}
- MD5Init(&mdContext);
- MD5Update(&mdContext, &esp->es_server.ea_id, 1);
- MD5Update(&mdContext, secret, secret_len);
+ MD5_Init(&mdContext);
+ MD5_Update(&mdContext, &esp->es_server.ea_id, 1);
+ MD5_Update(&mdContext, secret, secret_len);
BZERO(secret, sizeof (secret));
- MD5Update(&mdContext, esp->es_challenge, esp->es_challen);
- MD5Final(hash, &mdContext);
+ MD5_Update(&mdContext, esp->es_challenge, esp->es_challen);
+ MD5_Final(hash, &mdContext);
if (BCMP(hash, inp, MD5_SIGNATURE_SIZE) != 0) {
eap_send_failure(esp);
break;