Hello,
I´ve implemented a Radius Custom Auth extension, as depicted in the Admin Guide.
This is currently its (very simplified) source:
public class RadiusCustomAuth extends ZimbraCustomAuth {
Logger logger;
public void authenticate(Account account, String pass,
Map<String, Object> arg2, List<String> arg3) throws Exception {
logger.info("RadiusCustomAuth: authenticating...");
}
public RadiusCustomAuth() {
super();
Logger logger = Logger.getLogger(this.getClass().getName());
logger.info("RadiusCustomAuth created");
}
}
I've hooked it to the Zimbra server using the Zimbra extension framework.I've registered this custom auth mechanism under the name "Radius" and I've also enabled the example.com domain for using this handler (by using zmprov modifydomain example.com zimbraAuthMech custom:Radius).
When I restart the server I can see in the log that my RadiusCustomAuth handler is loaded because the line "RadiusCustomAuth created" is printed.
But when I try to authenticate a user, instead of "RadiusCustomAuth: authenticating..." this is the log I get:
2008-05-12 18:36:27,214 INFO [btpool0-0] [] AuthProvider - Adding auth provider: zimbra com.zimbra.cs.service.ZimbraAuthProvider
2008-05-12 18:36:27,322 INFO [btpool0-0] [ua=zclient/5.0.5_GA_2201.RHEL5;oip=10.8.13.18;] SoapEngine - handler exception: authentication failed for
user01@example.com,
The Radius handler is associated to this domain (I'm sure on this because if I associate an inexistent handler to this domain I get "handler anInexistentHandler for custom auth for domain example.com not found" when authenticating the user).
Any ideas why I'm getting this handler exception instead of my silly log?