<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:courier,monaco,monospace,sans-serif;font-size:12pt">if you want it to handle sip registrations the correct way is to connect to the directory interface with the xml hook (see mod_xml_curl)<br>This allows a module to request that it has the first chance to lookup any xml requests ahead of actually looking in the file.&nbsp; If your module was registered and binded to the "directory" section, then when the sip asked for the directory data from xml you can actually do the radius request and populate the reply with our xml api and return it in place of the actual contents of the real xml file.&nbsp; This already can be done with mod_xml_curl which is similar but uses a http connection instead of radius to do the proxy lookups.<br><br><div>&nbsp;</div><div>Anthony Minessale II<br><br><span>FreeSWITCH <a target="_blank"
 href="http://www.freeswitch.org/">http://www.freeswitch.org/</a></span><br><span>ClueCon <a target="_blank" href="http://www.cluecon.com/">http://www.cluecon.com/</a></span><br><br>AIM: anthm<br>MSN:anthony_minessale@hotmail.com<br>JABBER:anthony.minessale@gmail.com<br>IRC: irc.freenode.net #freeswitch</div><div><br>FreeSWITCH Developer Conference<br>sip:888@conference.freeswitch.org<br>iax:guest@conference.freeswitch.org/888<br>googletalk:conf+888@conference.freeswitch.org<br>pstn:213-799-1400</div><div style="font-family: courier,monaco,monospace,sans-serif; font-size: 12pt;"><br><br><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;">----- Original Message ----<br>From: Tuyan Özipek &lt;tuyanozipek@gmail.com&gt;<br>To: freeswitch-dev@lists.freeswitch.org<br>Sent: Friday, July 20, 2007 4:20:30 AM<br>Subject: [Freeswitch-dev] mod_radiusclient<br><br><div>Hi all,<br><br>Here is a small piece of log from the radius auth
 module that i wrote.<br>Just by curiosity, i patched mod_sofia to handle incoming registration<br>requests with radius.I used freeradius-client library like the<br>mod_radius_cdr module.Almost all the client configuration is in<br>radiusclient.conf.xml.<br><br>I hope i am not duplicating someone else's work.I am planning to<br>release it after adding a few more features..If someone has a better<br>idea, some thoughts about a cool feature or anything, i will be happy<br>to hear that..<br><br>Cheers<br>/tuyan<br><br><br>freeswitch@gitt&gt; 2007-07-20 04:46:32 [DEBUG] sofia_reg.c:430<br>sofia_reg_handle_register() Requesting Registration from:<br>[tuyan@10.0.0.1]<br>2007-07-20 04:46:32 [DEBUG] mod_fradiusclient.c:216<br>radius_accrequest_digest_function() Sending Digest Request<br>2007-07-20 04:46:32 [DEBUG] sofia_reg.c:465<br>sofia_reg_handle_register() Register:<br>From:&nbsp;&nbsp;&nbsp;&nbsp;[tuyan@10.0.0.1]<br>Contact: [tuyan
 &lt;sip:tuyan@10.0.0.2:5060&gt;]<br>Expires: [89]<br><br>and from freeradius<br><br>rad_recv: Access-Request packet from host 127.0.0.1 port 33676, id=81,<br>length=200<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User-Name = "tuyan"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Response = "dded20ab037e670932e15104cd91ec98"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Attributes = 0x010a31302e302e302e31<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Attributes =<br>0x022635636636643966652d333661312d313164632d626330652d393764356565303135626466<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Attributes = 0x030a5245474953544552<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Attributes = 0x040e7369703a31302e302e302e31<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Attributes = 0x06054d4435<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Attributes =
 0x0a07747579616e<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Attributes = 0x050661757468<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Attributes = 0x080962353632663666<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Attributes = 0x090a3030303030303031<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NAS-Port = 0<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NAS-IP-Address = 127.0.0.1<br><br>&nbsp;&nbsp;&nbsp;&nbsp;rlm_digest: Converting Digest-Attributes to something sane...<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Realm = "10.0.0.1"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Nonce = "5cf6d9fe-36a1-11dc-bc0e-97d5ee015bdf"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Method = "REGISTER"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-URI = "sip:10.0.0.1"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Algorithm =
 "MD5"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-User-Name = "tuyan"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-QOP = "auth"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-CNonce = "b562f6f"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Digest-Nonce-Count = "00000001"<br>A1 = tuyan:10.0.0.1:tuyan<br>A2 = REGISTER:sip:10.0.0.1<br>H(A1) = 7eeee22e4515abd8631075ce5f548eb9<br>H(A2) = bde0744e720053a66f505221cfc7202f<br>KD = 7eeee22e4515abd8631075ce5f548eb9:5cf6d9fe-36a1-11dc-bc0e-97d5ee015bdf:00000001:b562f6f:auth:bde0744e720053a66f505221cfc7202f<br>EXPECTED dded20ab037e670932e15104cd91ec98<br>RECEIVED dded20ab037e670932e15104cd91ec98<br>++[digest] returns ok<br>Sending Access-Accept of id 81 to 127.0.0.1 port 33676<br><br>And the configuration file<br>&lt;configuration name="radiusclient.conf" description="Radius Client<br>Configuration"&gt;<br>&nbsp;&nbsp;&lt;settings&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;param
 name="auth_order" value="radius"/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name="login_tries" value="3"/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name="dictionary" value="/opt/radiusclient/etc/dictionary.tuyan"/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name="seqfile" value="/var/run/radius.seq"/&gt;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name="authserver" value="127.0.0.1:1812:testing123"/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name="acctserver" value="localhost:1813:testing1234"/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--&lt;param name="servers"<br>value="/opt/radiusclient/etc/radiusclient/servers"/&gt;--&gt;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--&lt;param name="default_realm" value=""/&gt;--&gt;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name="radius_timeout" value="2"/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name="radius_retries" value="3"/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name="bindaddr"
 value="127.0.0.1"/&gt;<br><br><br>&nbsp;&nbsp;&lt;/settings&gt;<br>&lt;/configuration&gt;<br><br>_______________________________________________<br>Freeswitch-dev mailing list<br>Freeswitch-dev@lists.freeswitch.org<br><a target="_blank" href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev">http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev</a><br>UNSUBSCRIBE:<a target="_blank" href="http://lists.freeswitch.org/mailman/options/freeswitch-dev">http://lists.freeswitch.org/mailman/options/freeswitch-dev</a><br><a target="_blank" href="http://www.freeswitch.org">http://www.freeswitch.org</a><br></div></div><br></div></div><br>
      <hr size=1><a href="http://us.rd.yahoo.com/evt=48226/*http://new.toolbar.yahoo.com/toolbar/features/norton/index.php">Get the free Yahoo! toolbar</a> and rest assured with the added security of spyware protection.
 </body></html>