using hook for client_check_cb

David K. Sayre dks at lanl.gov
Wed Feb 22 10:24:42 EST 2006


That worked perfectly. I was thinking about doing that, but I was  
trying to call verify_access directly, and then I was thinking about  
redoing a lot of that code in my module, this works perfectly and is  
much easier.

Thank you very much,
David Sayre
Los Alamos National Labs

On Feb 22, 2006, at 3:10 AM, Piotr Niżyński wrote:

> David K. Sayre napisał(a):
>> void *pam_auth(va_list args)
>> {
>>         struct Client *source_p = va_arg(args, struct Client *);
>>         const char *username = va_arg(args, const char *);
>>     return source_p;
>> }
>
> Most likely the problem is you are not attaching an I-line to the  
> client. The easiest way to solve this would be:
>
> return pass_callback(hook, source_p, username);
>
> instead of return source_p.
>
> As you can see, s_user.c does the following in register_local_user,  
> just after calling client_check_cb:
>
>   ptr   = source_p->localClient->confs.head;
>   aconf = map_to_conf(ptr->data);
>
>   if (!IsGotId(source_p))
> [...]
>
> so it assumes there IS a conf attached to source_p->localClient- 
> >confs.head. Besides, it can be assumed in various ircd places, and  
> also it is required to have the ping freq/sendq size/limits working.
>
> Regards.





More information about the hybrid mailing list