Issue #10980: encode headers with latin1 instead of ASCII in the HTTP server.
This makes the implementation of PEP 3333 compliant servers on top of
BaseHTTPServer possible.
diff --git a/Lib/http/server.py b/Lib/http/server.py
index 515572f..543abe0 100644
--- a/Lib/http/server.py
+++ b/Lib/http/server.py
@@ -448,7 +448,7 @@
                 message = ''
         if self.request_version != 'HTTP/0.9':
             self.wfile.write(("%s %d %s\r\n" %
-                              (self.protocol_version, code, message)).encode('ASCII', 'strict'))
+                              (self.protocol_version, code, message)).encode('latin1', 'strict'))
 
     def send_header(self, keyword, value):
         """Send a MIME header."""
@@ -456,7 +456,7 @@
             if not hasattr(self, '_headers_buffer'):
                 self._headers_buffer = []
             self._headers_buffer.append(
-                ("%s: %s\r\n" % (keyword, value)).encode('ASCII', 'strict'))
+                ("%s: %s\r\n" % (keyword, value)).encode('latin1', 'strict'))
 
         if keyword.lower() == 'connection':
             if value.lower() == 'close':