diff --git a/Lib/ftplib.py b/Lib/ftplib.py
index 8a097c0..ef69ca6 100644
--- a/Lib/ftplib.py
+++ b/Lib/ftplib.py
@@ -565,7 +565,11 @@
 
     def mkd(self, dirname):
         '''Make a directory, return its full pathname.'''
-        resp = self.sendcmd('MKD ' + dirname)
+        resp = self.voidcmd('MKD ' + dirname)
+        # fix around non-compliant implementations such as IIS shipped
+        # with Windows server 2003
+        if not resp.startswith('257'):
+            return ''
         return parse257(resp)
 
     def rmd(self, dirname):
@@ -574,7 +578,11 @@
 
     def pwd(self):
         '''Return current working directory.'''
-        resp = self.sendcmd('PWD')
+        resp = self.voidcmd('PWD')
+        # fix around non-compliant implementations such as IIS shipped
+        # with Windows server 2003
+        if not resp.startswith('257'):
+            return ''
         return parse257(resp)
 
     def quit(self):
diff --git a/Lib/test/test_ftplib.py b/Lib/test/test_ftplib.py
index c8d0d88..8164ede 100644
--- a/Lib/test/test_ftplib.py
+++ b/Lib/test/test_ftplib.py
@@ -606,6 +606,18 @@
         self.assertEqual(self.server.handler_instance.last_received_cmd, 'quit')
         self.assertFalse(is_client_connected())
 
+    def test_parse257(self):
+        self.assertEqual(ftplib.parse257('257 "/foo/bar"'), '/foo/bar')
+        self.assertEqual(ftplib.parse257('257 "/foo/bar" created'), '/foo/bar')
+        self.assertEqual(ftplib.parse257('257 ""'), '')
+        self.assertEqual(ftplib.parse257('257 "" created'), '')
+        self.assertRaises(ftplib.error_reply, ftplib.parse257, '250 "/foo/bar"')
+        # The 257 response is supposed to include the directory
+        # name and in case it contains embedded double-quotes
+        # they must be doubled (see RFC-959, chapter 7, appendix 2).
+        self.assertEqual(ftplib.parse257('257 "/foo/b""ar"'), '/foo/b"ar')
+        self.assertEqual(ftplib.parse257('257 "/foo/b""ar" created'), '/foo/b"ar')
+
 
 class TestIPv6Environment(TestCase):
 
diff --git a/Misc/NEWS b/Misc/NEWS
index dbfdae5..e8dcca2 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -123,8 +123,12 @@
 Library
 -------
 
+- Issue #9601: ftplib now provides a workaround for non-compliant 
+  implementations such as IIS shipped with Windows server 2003 returning invalid 
+  response codes for MKD and PWD commands.
+
 - Issue #658749: asyncore's connect() method now correctly interprets winsock
-  errors;
+  errors.
 
 - Issue #9501: Fixed logging regressions in cleanup code.
 
@@ -291,6 +295,8 @@
 Tests
 -----
 
+- Issue #9601: Provide a test case for ftplib.parse257.
+
 - Issue #8857: Provide a test case for socket.getaddrinfo.
 
 - Issue #7564: Skip test_ioctl if another process is attached to /dev/tty.
