<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br>On 15 Nov 2013, at 14:48, Alan DeKok <<a href="mailto:aland@deployingradius.com">aland@deployingradius.com</a>> wrote:<br><br><blockquote type="cite">Alex Sharaz wrote:<br><blockquote type="cite">Well I thought I’d got FR3 working on OS X but seem to have an issue with <br><br>Error: /usr/local/etc/freeradius/mods-enabled/eap[17]: Unknown EAP<br>method <pick a module><br></blockquote><br> Well, that's broken. However, I do all my development on Mac OSX, and<br>Arran does his on Lion. So it *does* work.<br></blockquote><div><br></div>Arran does his on OSX 10.9 Mavericks on a shiny new Mid 2012 MBP,<div>but anyway, it shouldn't really matter...<div><br><blockquote type="cite"><br><blockquote type="cite">If I go into mods-enabled/eap and comment out md5 then The message<br>apears for the next method defined and so on. Looking in /usr/local/lib/<br>however I can see,<br></blockquote><br> I suspect there's another issue. What does the *rest* of the debug<br>output say?<br></blockquote><div><br></div><div>Well that message is not related to dlopen or any library loading, it seems</div><div>like maybe it hasn't picked up the dictionaries, or is using an old version</div><div>of them... Check your freeradius.internal file for EAP-Type and that it has</div><div>an enum value for tls.</div><div><br></div><div>Here's the relevant code:</div><div><br></div><div>method = eap_name2type(name);<br>if (method == PW_EAP_INVALID) {<br><span class="Apple-tab-span" style="white-space:pre"> </span>cf_log_err_cs(cs, "Unknown EAP method %s", name);<br><span class="Apple-tab-span" style="white-space:pre"> </span>return -1;<br>}</div><div><br></div></div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"></blockquote>eap_type_t eap_name2type(char const *name)<br><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"></blockquote>{<br><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"></blockquote><span class="Apple-tab-span" style="white-space: pre;"> </span>DICT_VALUE<span class="Apple-tab-span" style="white-space: pre;"> </span>*dv;<br><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"></blockquote><span class="Apple-tab-span" style="white-space: pre;"> </span>dv = dict_valbyname(PW_EAP_TYPE, 0, name);<br><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"></blockquote><span class="Apple-tab-span" style="white-space: pre;"> </span>if (dv) {<br><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"></blockquote><span class="Apple-tab-span" style="white-space: pre;"> </span>return dv->value;<br><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"></blockquote><span class="Apple-tab-span" style="white-space: pre;"> </span>}<br><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"></blockquote><span class="Apple-tab-span" style="white-space: pre;"> </span>return PW_EAP_INVALID;<br><div><div><div>}</div></div></div><div><br></div><div>We know name is correct because it's printed in the debug message, so it</div><div>suggests that the dictionaries aren't being read in.</div><div><br></div><div>-Arran</div><div><br></div><div><div>Arran Cudbard-Bell <<a href="mailto:a.cudbardb@freeradius.org">a.cudbardb@freeradius.org</a>><br>FreeRADIUS Development Team<br></div><br></div></body></html>