Hi,

After analyzing the FreeRADIUS sources, I observed
that only 29 methods are supported. In other words, it
seems that the EAP-Type should be included in the
interval [1; 29]. This observation doesn't allow us to
use the Experimental EAP-Type whose value is 255
thanks to the RFC 2284bis.

A little modification of the sources allows FreeRADIUS
to manage the maximum number of EAP methods, e.g. 255.

The patch to apply is here below:

- In the eapcommon.c file, modify the
MAX_EAP_TYPE_NAME constant to 255 and the eap_types[]
array, which must have exactly 256 elements. Here is
an example of this array:

static const char *eap_types[] = {
  "",
  "identity",
  "notification",
  "nak",                        /* NAK */
  "md5",
  "otp",
  "gtc",
  "7",
  "8",
  "9",
  "10",
  "11",
  "12",
  "tls",                        /* 13 */
  "14",
  "15",
  "16",
  "leap",                       /* 17 */
  "sim",             /* 18 GSM-SIM authentication */
  "19",
  "20",
  "ttls",                       /* 21 */
  "22",
  "23",
  "24",
  "peap",                       /* 25 */
  "mschapv2",                   /* 26 */
  "27",
  "28",
  "cisco_mschapv2",             /* 29 */
  "30","31","32","33","34","35",
  "36","37","38","39",
  "40","41","42","43","44","45",
  "46","47","48","49",
  "50","51","52","53","54","55",
  "56","57","58","59",
  "60","61","62","63","64","65",
  "66","67","68","69",
  "70","71","72","73","74","75",
  "76","77","78","79",
  "80","81","82","83","84","85",
  "86","87","88","89",
  "90","91","92","93","94","95",
  "96","97","98","99",
  "100","101","102","103","104",
  "105","106","107","108","109",
  "110","111","112","113","114",
  "115","116","117","118","119",
  "120","121","122","123","124",
  "125","126","127","128","129",
  "130","131","132","133","134",
  "135","136","137","138","139",
  "140","141","142","143","144",
  "145","146","147","148","149",
  "150","151","152","153","154",
  "155","156","157","158","159",
  "160","161","162","163","164",
  "165","166","167","168","169",
  "170","171","172","173","174",
  "175","176","177","178","179",
  "180","181","182","183","184",
  "185","186","187","188","189",
  "190","191","192","193","194",
  "195","196","197","198","199",
  "200","201","202","203","204",
  "205","206","207","208","209",
  "210","211","212","213","214",
  "215","216","217","218","219",
  "220","221","222","223","224",
  "225","226","227","228","229",
  "230","231","232","233","234",
  "235","236","237","238","239",
  "240","241","242","243","244",
  "245","246","247","248","249",
  "250","251","252","253","254",
  "255"
 };

 
- In the eap_types.h file, modify the PW_EAP_MAX_TYPES
constant to 255.


I agree that this solution is not optimal, e.g. we
have to declare 255 EAP-Types in order to use only the
EAP-Type 255 :-( But it works :-)


Aurelien Magniez


        

        
                
Yahoo! Mail : votre e-mail personnel et gratuit qui vous suit partout ! 
Cr�ez votre Yahoo! Mail sur http://fr.benefits.yahoo.com/

Dialoguez en direct avec vos amis gr�ce � Yahoo! Messenger !T�l�chargez Yahoo! 
Messenger sur http://fr.messenger.yahoo.com

- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to