SF patch  [ 545523 ] patch for 514433 bsddb.dbopen (NULL)
closes SF #514433

can now pass 'None' as the filename for the bsddb.*open functions,
and you'll get an in-memory temporary store.

docs are ripped out of the bsddb dbopen man page. Fred may want to
clean them up.

Considering this for 2.2, but not 2.1.
diff --git a/Modules/bsddbmodule.c b/Modules/bsddbmodule.c
index 78f8576..74f9133 100644
--- a/Modules/bsddbmodule.c
+++ b/Modules/bsddbmodule.c
@@ -687,7 +687,7 @@
 	int hash = 0; /* XXX currently ignored */
 	int lorder = 0;
 
-	if (!PyArg_ParseTuple(args, "s|siiiiiii:hashopen",
+	if (!PyArg_ParseTuple(args, "z|siiiiiii:hashopen",
 			      &file, &flag, &mode,
 			      &bsize, &ffactor, &nelem, &cachesize,
 			      &hash, &lorder))
@@ -738,7 +738,7 @@
 	unsigned int psize = 0;
 	int lorder = 0;
 
-	if (!PyArg_ParseTuple(args, "s|siiiiiii:btopen",
+	if (!PyArg_ParseTuple(args, "z|siiiiiii:btopen",
 			      &file, &flag, &mode,
 			      &btflags, &cachesize, &maxkeypage, &minkeypage,
 			      &psize, &lorder))
@@ -791,7 +791,7 @@
 	char  *bval = "";
 	char *bfname = NULL;
 
-	if (!PyArg_ParseTuple(args, "s|siiiiiiss:rnopen",
+	if (!PyArg_ParseTuple(args, "z|siiiiiiss:rnopen",
 			      &file, &flag, &mode,
 			      &rnflags, &cachesize, &psize, &lorder,
 			      &reclen, &bval, &bfname))