svn commit: samba r2759 - branches/SAMBA_3_0/source branches/SAMBA_3_0/source/nsswitch trunk/source trunk/source/nsswitch

tpot at samba.org tpot at samba.org
Fri Oct 1 02:57:11 GMT 2004


Author: tpot
Date: 2004-10-01 02:57:10 +0000 (Fri, 01 Oct 2004)
New Revision: 2759

WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/&rev=2759&nolog=1

Log:
Fix for winbindd on AIX 5.1.  Apparently it doesn't have as many methods
in struct secmethod_table as AIX 5.2.  Patch from The Written Word.

Modified:
   branches/SAMBA_3_0/source/configure.in
   branches/SAMBA_3_0/source/nsswitch/winbind_nss_aix.c
   trunk/source/configure.in
   trunk/source/nsswitch/winbind_nss_aix.c


Changeset:
Modified: branches/SAMBA_3_0/source/configure.in
===================================================================
--- branches/SAMBA_3_0/source/configure.in	2004-09-30 16:08:09 UTC (rev 2758)
+++ branches/SAMBA_3_0/source/configure.in	2004-10-01 02:57:10 UTC (rev 2759)
@@ -4291,6 +4291,14 @@
 		AC_DEFINE(HAVE_PASSWD_PW_AGE, 1, [Defined if struct passwd has pw_age field]),,
 		[#include <pwd.h>])
 
+# 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 <usersec.h>])
+AC_CHECK_MEMBERS([struct secmethod_table.method_version], , ,
+       [#include <usersec.h>])
+
+
 #################################################
 # Check to see if we should use the included popt 
 

Modified: branches/SAMBA_3_0/source/nsswitch/winbind_nss_aix.c
===================================================================
--- branches/SAMBA_3_0/source/nsswitch/winbind_nss_aix.c	2004-09-30 16:08:09 UTC (rev 2758)
+++ branches/SAMBA_3_0/source/nsswitch/winbind_nss_aix.c	2004-10-01 02:57:10 UTC (rev 2759)
@@ -741,6 +741,7 @@
 	return;
 }
 
+#ifdef HAVE_STRUCT_SECMETHOD_TABLE_METHOD_ATTRLIST
 /* 
    return a list of additional attributes supported by the backend 
 */
@@ -764,6 +765,7 @@
 
 	return ret;
 }
+#endif
 
 
 /*
@@ -977,7 +979,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 +1001,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;

Modified: trunk/source/configure.in
===================================================================
--- trunk/source/configure.in	2004-09-30 16:08:09 UTC (rev 2758)
+++ trunk/source/configure.in	2004-10-01 02:57:10 UTC (rev 2759)
@@ -4297,6 +4297,14 @@
 		AC_DEFINE(HAVE_PASSWD_PW_AGE, 1, [Defined if struct passwd has pw_age field]),,
 		[#include <pwd.h>])
 
+# 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 <usersec.h>])
+AC_CHECK_MEMBERS([struct secmethod_table.method_version], , ,
+       [#include <usersec.h>])
+
+
 #################################################
 # Check to see if we should use the included popt 
 

Modified: trunk/source/nsswitch/winbind_nss_aix.c
===================================================================
--- trunk/source/nsswitch/winbind_nss_aix.c	2004-09-30 16:08:09 UTC (rev 2758)
+++ trunk/source/nsswitch/winbind_nss_aix.c	2004-10-01 02:57:10 UTC (rev 2759)
@@ -741,6 +741,7 @@
 	return;
 }
 
+#ifdef HAVE_STRUCT_SECMETHOD_TABLE_METHOD_ATTRLIST
 /* 
    return a list of additional attributes supported by the backend 
 */
@@ -764,6 +765,7 @@
 
 	return ret;
 }
+#endif
 
 
 /*
@@ -977,7 +979,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 +1001,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;



More information about the samba-cvs mailing list