diff --git a/Lib/http/client.py b/Lib/http/client.py
index 1fe010c..5e091b8 100644
--- a/Lib/http/client.py
+++ b/Lib/http/client.py
@@ -213,7 +213,6 @@
         occurrences are returned.  Case is not important in the header name.
 
         """
-        # XXX: copied from rfc822.Message for compatibility
         name = name.lower() + ':'
         n = len(name)
         lst = []
@@ -227,7 +226,7 @@
                 lst.append(line)
         return lst
 
-def parse_headers(fp):
+def parse_headers(fp, _class=HTTPMessage):
     """Parses only RFC2822 headers from a file pointer.
 
     email Parser wants to see strings rather than bytes.
@@ -245,7 +244,7 @@
             break
     hstring = b''.join(headers).decode('iso-8859-1')
 
-    return email.parser.Parser(_class=HTTPMessage).parsestr(hstring)
+    return email.parser.Parser(_class=_class).parsestr(hstring)
 
 class HTTPResponse(io.RawIOBase):
 
diff --git a/Lib/http/server.py b/Lib/http/server.py
index 897908e..31153f4 100644
--- a/Lib/http/server.py
+++ b/Lib/http/server.py
@@ -313,7 +313,8 @@
         self.command, self.path, self.request_version = command, path, version
 
         # Examine the headers and look for a Connection directive.
-        self.headers = http.client.parse_headers(self.rfile)
+        self.headers = http.client.parse_headers(self.rfile,
+                                                 _class=self.MessageClass)
 
         conntype = self.headers.get('Connection', "")
         if conntype.lower() == 'close':
