diff --git a/Misc/NEWS b/Misc/NEWS
index bfcddd9..fdc3730 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -32,6 +32,9 @@
 
 - fcntl now exposes the strops.h I_* constants.
 
+- Fix a crash on Solaris that occurred when calling close() on
+  an mmap'ed file which was already closed.  (SF patch #665913)
+
 - datetime changes:
 
   The datetime and datetimetz classes have been collapsed into a single
@@ -103,9 +106,6 @@
   possible to have timestamps that differ by a second, yet where
   datetimes constructed from them are equal.
 
-- Fix a crash on Solaris that occurred when calling close() on
-  an mmap'ed file which was already closed.  (SF patch #665913)
-
 Library
 -------
 
@@ -181,6 +181,9 @@
 Windows
 -------
 
+- The bsddb module now ships with Sleepycat's 4.1.25.NC, the latest
+  release without strong cryptography.
+
 - sys.path[0], if it contains a directory name, is now always an
   absolute pathname.
 
diff --git a/PCbuild/_bsddb.dsp b/PCbuild/_bsddb.dsp
index e1857c5..2bee39d 100644
--- a/PCbuild/_bsddb.dsp
+++ b/PCbuild/_bsddb.dsp
@@ -44,7 +44,7 @@
 # PROP Target_Dir ""
 F90=df.exe
 # ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD CPP /nologo /MD /W3 /GX /Zi /O2 /I "..\Include" /I "..\PC" /I "..\..\db-4.0.14\build_win32" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /YX /FD /c
+# ADD CPP /nologo /MD /W3 /GX /Zi /O2 /I "..\Include" /I "..\PC" /I "..\..\db-4.1.25\build_win32" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /YX /FD /c
 # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
 # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
 # ADD BASE RSC /l 0x409 /d "NDEBUG"
@@ -54,7 +54,7 @@
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
-# ADD LINK32 user32.lib kernel32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\..\db-4.0.14\build_win32\Release_static\libdb40s.lib /nologo /base:"0x1e180000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"msvcrt" /out:"./_bsddb.pyd"
+# ADD LINK32 user32.lib kernel32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\..\db-4.1.25\build_win32\Release_static\libdb41s.lib /nologo /base:"0x1e180000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"msvcrt" /out:"./_bsddb.pyd"
 # SUBTRACT LINK32 /pdb:none
 
 !ELSEIF  "$(CFG)" == "_bsddb - Win32 Debug"
@@ -72,7 +72,7 @@
 # PROP Target_Dir ""
 F90=df.exe
 # ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\Include" /I "..\PC" /I "..\..\db-4.0.14\build_win32" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /YX /FD /c
+# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\Include" /I "..\PC" /I "..\..\db-4.1.25\build_win32" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /YX /FD /c
 # ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
 # ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
 # ADD BASE RSC /l 0x409 /d "_DEBUG"
@@ -82,7 +82,7 @@
 # ADD BSC32 /nologo
 LINK32=link.exe
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 user32.lib kernel32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\..\db-4.0.14\build_win32\Release_static\libdb40s.lib /nologo /base:"0x1e180000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"msvcrtd" /out:"./_bsddb_d.pyd" /pdbtype:sept
+# ADD LINK32 user32.lib kernel32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\..\db-4.1.25\build_win32\Release_static\libdb41s.lib /nologo /base:"0x1e180000" /subsystem:windows /dll /debug /machine:I386 /nodefaultlib:"msvcrtd" /out:"./_bsddb_d.pyd" /pdbtype:sept
 # SUBTRACT LINK32 /pdb:none
 
 !ENDIF 
diff --git a/PCbuild/bsddb_patch.txt b/PCbuild/bsddb_patch.txt
deleted file mode 100644
index d4c51bc..0000000
--- a/PCbuild/bsddb_patch.txt
+++ /dev/null
@@ -1,36 +0,0 @@
-This patch is against Sleepycat's db-4.0.14 release.  It's not on the
-Sleepycat site.  It fixes cases of database corruption Barry (Warsaw)
-was seeing, and Barry got it from Sleepycat.
-
-*** db/db_reclaim.c.orig	2002/04/05 16:16:17	11.22
---- db/db_reclaim.c	2002/04/10 18:53:13	11.23
-***************
-*** 195,202 ****
-  				    dbp->log_fileid, p->pgno, &LSN(meta),
-  				    PGNO_BASE_MD, &ldbt, meta->free)) != 0)
-  					goto err;
-- 
-  				LSN(p) = LSN(meta);
-  				if ((ret =
-  				    __db_pg_alloc_log(dbp->dbenv,
-  				    param->dbc->txn, &LSN(meta), 0,
---- 195,202 ----
-  				    dbp->log_fileid, p->pgno, &LSN(meta),
-  				    PGNO_BASE_MD, &ldbt, meta->free)) != 0)
-  					goto err;
-  				LSN(p) = LSN(meta);
-+ 
-  				if ((ret =
-  				    __db_pg_alloc_log(dbp->dbenv,
-  				    param->dbc->txn, &LSN(meta), 0,
-***************
-*** 206,211 ****
---- 206,213 ----
-  					(void)__TLPUT(param->dbc, metalock);
-  					return (ret);
-  				}
-+ 				LSN(p) = LSN(meta);
-+ 
-  				if ((ret = mpf->put(mpf,
-  				     (PAGE *)meta, DB_MPOOL_DIRTY)) != 0) {
-  					(void)__TLPUT(param->dbc, metalock);
diff --git a/PCbuild/readme.txt b/PCbuild/readme.txt
index b6cd15c..0d7dc39 100644
--- a/PCbuild/readme.txt
+++ b/PCbuild/readme.txt
@@ -163,30 +163,27 @@
 
 
 _bsddb
-    XXX The Sleepycat release we use will probably change before
-    XXX 2.3a1.
-    Go to Sleepycat's patches page:
-        http://www.sleepycat.com/update/index.html
-    and download
-        4.0.14.zip
-    from the download page.  The file name is db-4.0.14.zip.  Unpack into
-        dist\db-4.0.14
+    Go to Sleepycat's download page:
+        http://www.sleepycat.com/download/
 
-    Apply the patch file bsddb_patch.txt in this (PCbuild) directory
-    against the file
-        dist\db-4.0.14\db\db_reclaim.c
+    and download version 4.1.25.  The file name is db-4.1.25.NC.zip.
+    XXX with or without strong cryptography?  I picked "without".
 
-    Go to
-        http://www.sleepycat.com/docs/ref/build_win/intro.html
-    and follow the instructions for building the Sleepycat software.
-    Build the Release version.
-    NOTE:  The instructions are for a later release of the software,
-    so use your imagination.  Berkeley_DB.dsw in this release was
-    also pre-MSVC6, so you'll be prompted to upgrade the format (say
-    yes, of course).  Choose configuration "db_buildall - Win32 Release",
-    and build db_buildall.exe.
+    Unpack into
+        dist\db-4.1.25
 
-    XXX We're actually linking against Release_static\libdb40s.lib.
+    [If using WinZip to unpack the db-4.1.25.NC distro, that requires
+     renaming the directory (to remove ".NC") after unpacking.
+    ]
+
+    Open
+        dist\db-4.1.25\docs\index.html
+
+    and follow the Windows instructions for building the Sleepycat
+    software.  Note that Berkeley_DB.dsw is in the build_win32 subdirectory.
+    Build the Release version ("build_all -- Win32 Release").
+
+    XXX We're actually linking against Release_static\libdb41s.lib.
     XXX This yields the following warnings:
 """
 Compiling...
@@ -201,6 +198,31 @@
 """
     XXX This isn't encouraging, but I don't know what to do about it.
 
+    To run extensive tests, pass "-u bsddb" to regrtest.py.  test_bsddb3.py
+    is then enabled.  Running in verbose mode may be helpful.
+
+    XXX The test_bsddb3 tests don't always pass, on Windows (according to
+    XXX me) or on Linux (according to Barry).  I had much better luck
+    XXX on Win2K than on Win98SE.  The common failure mode across platforms
+    XXX is
+    XXX     DBAgainError: (11, 'Resource temporarily unavailable -- unable
+    XXX                         to join the environment')
+    XXX
+    XXX and it appears timing-dependent.  On Win2K I also saw this once:
+    XXX
+    XXX test02_SimpleLocks (bsddb.test.test_thread.HashSimpleThreaded) ...
+    XXX Exception in thread reader 1:
+    XXX Traceback (most recent call last):
+    XXX File "C:\Code\python\lib\threading.py", line 411, in __bootstrap
+    XXX    self.run()
+    XXX File "C:\Code\python\lib\threading.py", line 399, in run
+    XXX    apply(self.__target, self.__args, self.__kwargs)
+    XXX File "C:\Code\python\lib\bsddb\test\test_thread.py", line 268, in
+    XXX                  readerThread
+    XXX    rec = c.next()
+    XXX DBLockDeadlockError: (-30996, 'DB_LOCK_DEADLOCK: Locker killed
+    XXX                                to resolve a deadlock')
+
 
 _ssl
     Python wrapper for the secure sockets library.
