--- source/nsswitch/winbind_nss_aix.c.orig 2004-09-14 15:55:02.000000000 -0500 +++ source/nsswitch/winbind_nss_aix.c 2004-09-14 15:56:06.000000000 -0500 @@ -741,6 +742,7 @@ return; } +#ifdef HAVE_STRUCT_SECMETHOD_TABLE_METHOD_ATTRLIST /* return a list of additional attributes supported by the backend */ @@ -764,6 +766,7 @@ return ret; } +#endif /* @@ -977,7 +980,9 @@ { ZERO_STRUCTP(methods); +#ifdef HAVE_STRUCT_SECMETHOD_TABLE_METHOD_VERSION methods->method_version = SECMETHOD_VERSION_520; +#endif methods->method_getgrgid = wb_aix_getgrgid; methods->method_getgrnam = wb_aix_getgrnam; @@ -997,7 +1002,9 @@ methods->method_passwdrestrictions = wb_aix_passwdrestrictions; methods->method_getgracct = wb_aix_getgracct; methods->method_getgrusers = wb_aix_getgrusers; +#ifdef HAVE_STRUCT_SECMETHOD_TABLE_METHOD_ATTRLIST methods->method_attrlist = wb_aix_attrlist; +#endif #if LOG_UNIMPLEMENTED_CALLS methods->method_delgroup = method_delgroup; --- source/configure.in.orig 2004-09-14 15:58:26.000000000 -0500 +++ source/configure.in 2004-09-14 15:59:07.000000000 -0500 @@ -4290,6 +4290,14 @@ AC_DEFINE(HAVE_PASSWD_PW_AGE, 1, [Defined if struct passwd has pw_age field]),, [#include ]) +# AIX 4.3.x and 5.1 do not have as many members in +# struct secmethod_table as AIX 5.2 +AC_CHECK_MEMBERS([struct secmethod_table.method_attrlist], , , + [#include ]) +AC_CHECK_MEMBERS([struct secmethod_table.method_version], , , + [#include ]) + + ################################################# # Check to see if we should use the included popt