fix more Errors (not Failures) when run using BerkeleyDB <= 4.0
diff --git a/Lib/bsddb/test/test_associate.py b/Lib/bsddb/test/test_associate.py
index 541af51..b83b65f 100644
--- a/Lib/bsddb/test/test_associate.py
+++ b/Lib/bsddb/test/test_associate.py
@@ -127,7 +127,8 @@
         # dupDB has been configured to allow duplicates, it can't
         # associate with a secondary.  BerkeleyDB will return an error.
 	try:
-	    dupDB.associate(secDB, lambda a, b: a+b)
+	    def f(a,b): return a+b
+	    dupDB.associate(secDB, f)
 	except db.DBError:
 	    # good
 	    secDB.close()
@@ -181,8 +182,12 @@
 	self.secDB = None
         self.primary = db.DB(self.env)
         self.primary.set_get_returns_none(2)
-        self.primary.open(self.filename, "primary", self.dbtype,
+	if db.version() >= (4, 1):
+	    self.primary.open(self.filename, "primary", self.dbtype,
                           db.DB_CREATE | db.DB_THREAD | self.dbFlags, txn=txn)
+	else:
+	    self.primary.open(self.filename, "primary", self.dbtype,
+                          db.DB_CREATE | db.DB_THREAD | self.dbFlags)
 
     def closeDB(self):
 	if self.cur:
@@ -346,7 +351,10 @@
 	    self.secDB.set_get_returns_none(2)
 	    self.secDB.open(self.filename, "secondary", db.DB_BTREE,
 		       db.DB_CREATE | db.DB_THREAD, txn=txn)
-	    self.getDB().associate(self.secDB, self.getGenre, txn=txn)
+	    if db.version() >= (4,1):
+		self.getDB().associate(self.secDB, self.getGenre, txn=txn)
+	    else:
+		self.getDB().associate(self.secDB, self.getGenre)
 
 	    self.addDataToDB(self.getDB(), txn=txn)
 	except:
@@ -446,7 +454,8 @@
         suite.addTest(unittest.makeSuite(AssociateBTreeTestCase))
         suite.addTest(unittest.makeSuite(AssociateRecnoTestCase))
 
-	suite.addTest(unittest.makeSuite(AssociateBTreeTxnTestCase))
+	if db.version() >= (4, 1):
+	    suite.addTest(unittest.makeSuite(AssociateBTreeTxnTestCase))
 
         suite.addTest(unittest.makeSuite(ShelveAssociateHashTestCase))
         suite.addTest(unittest.makeSuite(ShelveAssociateBTreeTestCase))