Malcolm Caldwell <[EMAIL PROTECTED]> wrote: > What I am trying to achieve with this is that regardless of what the > users logs in > as (uid or cn) put the uid in the database. To do this I try to: > > ldap query serverX and find uid. > If it is not defined query serverY and find uid. > If both fail fall back to inserting the User-Name as > supplied by the user
The problem is that right now, the ':-' piece in xlat only works if the *xlat* isn't found. You're trying to use it where the xlat function IS found, but where it doesn't return anything. That won't work. Hmm... there is a bug in the CVS head of xlat.c, where if it does an xlat call, it doesn't mark it as found. I'll fix that. Try the CVS snapshot tomorrow, and see if the result is any better. (It should be different, at least). The other thing is that if the xlat function exists, but returns a zero-length string, then it should be the same as NOT finding the xlat function. That code needs to be added. That also means the xlat functions need to be double-checked, that they return '0' on any error. That work will probably be after 0.8. Alan DeKok. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html