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- > [EMAIL PROTECTED] [mailto:freeradius- > [EMAIL PROTECTED] 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 - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html