<div dir="ltr">To answer my own question, I found that using the return code <span style="font-family:arial,sans-serif;font-size:13px">RLM_MODULE_OK triggers the server to respond back with Access-Accept. If I used RLM_MODULE_HANDLED instead, the response packet type was set to what I expected it to be. This makes sense since I expect the client to exchange several messages with me before I finally trigger the Access-Accept message.</span></div>
<div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Feb 18, 2013 at 9:00 AM, Walter Goulet <span dir="ltr"><<a href="mailto:wgoulet@gmail.com" target="_blank">wgoulet@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">Hi,<div><br></div><div>Looking through archives for this exact question, I see a post from 2008 (<a href="http://www.mail-archive.com/freeradius-users@lists.freeradius.org/msg47423.html" target="_blank">http://www.mail-archive.com/freeradius-users@lists.freeradius.org/msg47423.html</a>) where this exact question was previously asked.</div>

<div><br></div><div>Here is my server version info:</div><div>radiusd: FreeRADIUS Version 2.2.0, for host x86_64-unknown-linux-gnu, built on Feb 17 2013 at 03:34:41<br></div><div><br></div><div>Here's my code:</div>
<div><br></div><div><div>  # Construct HTTP request</div><div><br></div><div>        my $authresult = &authamis($RAD_REQUEST{'User-Name'},$RAD_REQUEST{'User-Password'});</div><div>        &radiusd::radlog(L_DBG, "Result after authamis call -> $authresult");</div>

<div><br></div><div>        if($authresult eq "true") {</div><div>                $RAD_CHECK{'Response-Packet-Type'} = "Access-Challenge";</div><div>                $RAD_REPLY{'Reply-Message'} = "authentication successful";</div>

<div>                for (keys %RAD_REPLY) {</div><div>                        &radiusd::radlog(L_DBG, "RAD_REPLY: $_ = $RAD_REPLY{$_}");</div><div>                }</div><div>                for (keys %RAD_CHECK) {</div>

<div>                        &radiusd::radlog(L_DBG, "RAD_CHECK: $_ = $RAD_CHECK{$_}");</div><div>                }</div><div>                for (keys %RAD_CONFIG) {</div><div>                        &radiusd::radlog(L_DBG, "RAD_CONFIG: $_ = $RAD_CONFIG{$_}");</div>

<div>                }</div><div>                return RLM_MODULE_OK</div><div>        }</div><div>        else {</div><div>                $RAD_REPLY{'Reply-Message'} = "authentication failure";</div>
<div>
                return RLM_MODULE_REJECT;</div><div>        }</div><div><br></div><div>Here is the relevant debug output:</div></div><div><br></div><div><div>Found Auth-Type = perl</div><div># Executing group from file /opt/app/freeradius/etc/raddb/sites-enabled/default</div>

<div>+- entering group perl {...}</div><div>rlm_perl: RAD_REQUEST: User-Name = test</div><div>rlm_perl: RAD_REQUEST: User-Password = 42594190</div><div>rlm_perl: RAD_REQUEST: NAS-IP-Address = 192.168.65.1</div><div>rlm_perl: AMIS request: <a href="http://amis.jdt.com:8080/auth/authenticate/test/42594190" target="_blank">http://amis.jdt.com:8080/auth/authenticate/test/42594190</a></div>

<div>rlm_perl: Result after authamis call -> true</div><div>rlm_perl: RAD_REPLY: Reply-Message = authentication successful</div><div>rlm_perl: RAD_CHECK: Response-Packet-Type = Access-Challenge</div><div>rlm_perl: RAD_CHECK: Auth-Type = perl</div>

<div>rlm_perl: RAD_CONFIG: Auth-Type = perl</div><div>rlm_perl: Added pair User-Name = test</div><div>rlm_perl: Added pair User-Password = 42594190</div><div>rlm_perl: Added pair NAS-IP-Address = 192.168.65.1</div><div>rlm_perl: Added pair Reply-Message = authentication successful</div>

<div>rlm_perl: Added pair Response-Packet-Type = Access-Challenge</div><div>rlm_perl: Added pair Auth-Type = perl</div><div>++[perl] returns ok</div><div># Executing section post-auth from file /opt/app/freeradius/etc/raddb/sites-enabled/default</div>

<div>+- entering group post-auth {...}</div><div>++[exec] returns noop</div><div>Sending Access-Accept of id 81 to 192.168.65.1 port 53504</div><div>        Reply-Message = "authentication successful"</div><div>

Finished request 0.</div><div>Going to the next request</div><div><br></div><div>Clearly the Access-Challenge setting is not being honored by the server. Is there another attribute that must be set to configure the response type?</div>

<div><br></div><div>Thanks,</div><div>Walter</div></div></div>
</blockquote></div><br></div>