From ddf22c4243c38e819a07cbad53b8711c08e5563f Mon Sep 17 00:00:00 2001
From: Fred Drake <fdrake@acm.org>
Date: Wed, 28 Apr 1999 21:17:38 +0000
Subject: Message.getheader():  Fixed grammatical error in docstring.

Message.getheaders():  Method to get list of all values for each
		       instance of a named header.  See docstring for more.
---
 Lib/rfc822.py | 27 ++++++++++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)

diff --git a/Lib/rfc822.py b/Lib/rfc822.py
index 292b3c9..fbab3c8 100644
--- a/Lib/rfc822.py
+++ b/Lib/rfc822.py
@@ -272,7 +272,7 @@ class Message:
     def getheader(self, name, default=None):
         """Get the header value for a name.
         
-        This is the normal interface: it return a stripped
+        This is the normal interface: it returns a stripped
         version of the header value for a given header name,
         or None if it doesn't exist.  This uses the dictionary
         version which finds the *last* such header.
@@ -282,6 +282,31 @@ class Message:
         except KeyError:
             return default
     get = getheader
+
+    def getheaders(self, name):
+        """Get all values for a header.
+
+        This returns a list of values for headers given more than once;
+        each value in the result list is stripped in the same way as the
+        result of getheader().  If the header is not given, return None.
+        """
+        result = []
+        current = ''
+        have_header = 0
+        for s in self.getallmatchingheaders(name):
+            if s[0] in string.whitespace:
+                if current:
+                    current = "%s\n %s" % (current, string.strip(s))
+                else:
+                    current = string.strip(s)
+            else:
+                if have_header:
+                    result.append(current)
+                current = string.strip(s[string.find(s, ":") + 1:])
+                have_header = 1
+        if have_header:
+            result.append(current)
+        return result or None
     
     def getaddr(self, name):
         """Get a single address from a header, as a tuple.
-- 
cgit v0.12

