> The fill_pwent function is static in winbind_nss.c You are probably > trying to call it directly from your winbind_aix.c which won't work. > > Can winbind_aix.c be modelled like winbind_solaris.c? That is, wrapper > functions abstract out the vendor specific nss stuff which then call the > _nss_winbind_* functions. > > > Tim.
I am by no means an expert. I don't understand the nss api at all, and I only understand the AIX API from studying it over the past two weeks. Nss and AIX loadable auth modules seem very different. In AIX the module is responsible for allocating the memory for the result structures. The return value is a pointer to the result struct and failure is communicated by returning NULL. I'm not sure if it's possible to differentiate between failure because an object wasn't found and some other kind of failure. It appears to be less work to go from AIX->winbind rather than AIX->nss->winbind. I can probably make it cleaner/more efficient if I rewrite what fill_pwent/fill_grent do for AIX, because winbind_aix has to allocate the memory itself anyway. -Steve