Windows Vista doing PEAP
Dourty, Brian R. (IATS)
DourtyB at missouri.edu
Mon Oct 23 21:47:50 CEST 2006
Got this patch to work with 1.1.3 without seg faulting... I've sent Alan
the debug output.
Can download it here:
http://bengal.missouri.edu/~dourtyb/freeradius/vista.patch
Index: src/modules/rlm_eap/rlm_eap.c
===================================================================
RCS file: /source/radiusd/src/modules/rlm_eap/rlm_eap.c,v
retrieving revision 1.26.2.1.2.1
diff -u -r1.26.2.1.2.1 rlm_eap.c
--- src/modules/rlm_eap/rlm_eap.c 6 Feb 2006 16:23:52 -0000
1.26.2.1.2.1
+++ src/modules/rlm_eap/rlm_eap.c 18 Oct 2006 21:15:45 -0000
@@ -338,6 +338,7 @@
* We are done, wrap the EAP-request in RADIUS to send
* with all other required radius attributes
*/
+ DEBUG2("VISTA[%s:%d]: here", __func__, __LINE__);
rcode = eap_compose(handler);
/*
@@ -515,6 +516,7 @@
* We are done, wrap the EAP-request in RADIUS to
send
* with all other required radius attributes
*/
+ DEBUG2("VISTA[%s:%d]: here", __func__, __LINE__);
rcode = eap_compose(handler);
/*
Index: src/modules/rlm_eap/eap.c
===================================================================
RCS file: /source/radiusd/src/modules/rlm_eap/eap.c,v
retrieving revision 1.52.4.1
diff -u -r1.52.4.1 eap.c
--- src/modules/rlm_eap/eap.c 6 Feb 2006 16:23:49 -0000 1.52.4.1
+++ src/modules/rlm_eap/eap.c 18 Oct 2006 21:15:45 -0000
@@ -1,4 +1,4 @@
-/*
+ /*
* eap.c rfc2284 & rfc2869 implementation
*
* Version: $Id: eap.c,v 1.52.4.1 2006/02/06 16:23:49 nbk Exp $
@@ -382,7 +382,10 @@
eap_packet_t *hdr;
uint16_t total_length = 0;
- if (reply == NULL) return EAP_INVALID;
+ if (reply == NULL) {
+ DEBUG2("VISTA[%s:%d]: eap_wireformat invalid", __func__,
__LINE__);
+ return EAP_INVALID;
+ }
total_length = EAP_HEADER_LEN;
if (reply->code < 3) {
@@ -469,6 +472,8 @@
* mentioned restriction.
*/
reply->id = handler->eap_ds->response->id;
+ DEBUG2("VISTA[%s:%d]: reply->id %d", __func__, __LINE__,
reply->id);
+ DEBUG2("VISTA[%s:%d]: reply->code %d", __func__,
__LINE__,reply->code);
switch (reply->code) {
/*
@@ -506,16 +511,20 @@
* that the TTLS and PEAP modules can call it to do most
* of their dirty work.
*/
+ DEBUG2("VISTA[%s:%d]: eap->request->code %d", __func__,
__LINE__, eap_ds->request->code);
+ DEBUG2("VISTA[%s:%d]: eap->request->type.type %d", __func__,
__LINE__, eap_ds->request->type.type);
+ DEBUG2("VISTA[%s:%d]: handler->eap_type %d", __func__,
__LINE__, handler->eap_type);
+
if (((eap_ds->request->code == PW_EAP_REQUEST) ||
(eap_ds->request->code == PW_EAP_RESPONSE)) &&
(eap_ds->request->type.type == 0)) {
rad_assert(handler->eap_type >= PW_EAP_MD5);
rad_assert(handler->eap_type <= PW_EAP_MAX_TYPES);
+ DEBUG2("VISTA[%s:%d]: Setting EAP type", __func__,
__LINE__);
eap_ds->request->type.type = handler->eap_type;
}
-
if (eap_wireformat(reply) == EAP_INVALID) {
return RLM_MODULE_INVALID;
}
@@ -598,6 +607,8 @@
break;
}
+ DEBUG2("VISTA[%s:%d]: rcode %d", __func__, __LINE__, rcode);
+
return rcode;
}
> -----Original Message-----
> From: freeradius-users-
> bounces+dourtyb=missouri.edu at lists.freeradius.org [mailto:freeradius-
> users-bounces+dourtyb=missouri.edu at lists.freeradius.org] On Behalf Of
> Phil Mayers
> Sent: Friday, October 20, 2006 6:42 PM
> To: FreeRadius users mailing list
> Subject: Re: Windows Vista doing PEAP
>
> Josh Howlett wrote:
> >> Again, I have no idea why it's core dumping. It shouldn't be. I
> >> don't have Vista, and I can't debug this issue myself. It's up to
> you.
> >
> > Sorry - I've come late to this thread. Do we have a general problem
> with
> > Vista failing to authenticate against FR, or is this just one
> instance
> > failing, and we know of other instances where it is working?
>
> It's a general problem.
>
> Sadly the "netsh ras set tracing * enable" thing seems not to be
> present
> or work under the vista RCs we've looked at and there was little of
> value in the event logs so the cause is somewhat hard to pin down.
It's
> definitely PEAP (as opposed to EAP-TLS) related.
>
> Knowing MS they've made a TLV that was previously optional, mandatory,
> or similar. Given the problems seems to be windows-centred, someone
> with
> more windows experience may need to get info from the client as to why
> *it* thinks things are going awry
> -
> List info/subscribe/unsubscribe? See
> http://www.freeradius.org/list/users.html
More information about the Freeradius-Users
mailing list