diff --git a/Doc/lib/libos.tex b/Doc/lib/libos.tex
index c92aa4d..6a1223f 100644
--- a/Doc/lib/libos.tex
+++ b/Doc/lib/libos.tex
@@ -1025,7 +1025,11 @@
 provided.
 \warning{Use of \function{tmpnam()} is vulnerable to symlink attacks;
 consider using \function{tmpfile()} instead.}
-Availability: \UNIX, Windows.
+Availability: \UNIX, Windows.  This function probably shouldn't be used
+on Windows, though:  Microsoft's implementation of \function{tmpnam()}
+always creates a name in the root directory of the current drive, and
+that's generally a poor location for a temp file (depending on
+privileges, you may not even be able to open a file using this name).
 \end{funcdesc}
 
 \begin{datadesc}{TMP_MAX}
diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py
index 94c0bfb..9ea1d06 100644
--- a/Lib/test/test_os.py
+++ b/Lib/test/test_os.py
@@ -54,11 +54,32 @@
         self.assert_(s == "foobar")
 
     def test_tmpnam(self):
+        import sys
         if not hasattr(os, "tmpnam"):
             return
         warnings.filterwarnings("ignore", "tmpnam", RuntimeWarning,
                                 r"test_os$")
-        self.check_tempfile(os.tmpnam())
+        name = os.tmpnam()
+        if sys.platform in ("win32",):
+            # The Windows tmpnam() seems useless.  From the MS docs:
+            #
+            #     The character string that tmpnam creates consists of
+            #     the path prefix, defined by the entry P_tmpdir in the
+            #     file STDIO.H, followed by a sequence consisting of the
+            #     digit characters '0' through '9'; the numerical value
+            #     of this string is in the range 1 - 65,535.  Changing the
+            #     definitions of L_tmpnam or P_tmpdir in STDIO.H does not
+            #     change the operation of tmpnam.
+            #
+            # The really bizarre part is that, at least under MSVC6,
+            # P_tmpdir is "\\".  That is, the path returned refers to
+            # the root of the current drive.  That's a terrible place to
+            # put temp files, and, depending on privileges, the user
+            # may not even be able to open a file in the root directory.
+            self.failIf(os.path.exists(name),
+                        "file already exists for temporary file")
+        else:
+            self.check_tempfile(name)
 
 # Test attributes on return values from os.*stat* family.
 class StatAttributeTests(unittest.TestCase):
