[Bug 985149] Re: Permalink-Hash: header specification

Barry Warsaw 985149 at bugs.launchpad.net
Fri Apr 20 19:33:28 CEST 2012

** Description changed:

  Currently, we define the X-Message-ID-Hash as the base32 encoding of the
  sha1 hash of the Message-ID content (sans angle brackets as defined in
  RFC 5322).  The suggestion is made that List-ID value should be added to
  this hash so as to be able to distinguish cross-posted messages.
  This should be fine, and pretty easy.  My only concern is that the
- header name is now a misnomer.
+ header name is now a misnomer.  I'm suggesting we change this to
+ Permalink-Hash.
- I wonder, is it worth coming up with a better header?  Now's the time to
- do it since it's likely that there are almost no consumers of this
- standard.
+ Here is the proposed algorithm for calculating the Permalink-Hash
- What about `Permalink-Hash` ?
+ >>> bare_msgid = msg['Message-ID'][1:-1]  # remove the angle brackets
+ >>> h = sha1(bare_msgid)
+ >>> list_id = msg['List-ID'][1:-1] # remove angle brackets
+ >>> h.update(list_id)
+ >>> permalink_hash = b32encode(h.digest())
+ >>> msg.add_header('Permalink-Hash', permalink_hash, version='1')
+ Notes:
+  - If the Message-ID or List-ID values do not both start and end with angle brackets, the entire header value should be used (i.e. only strip off bytes 0 and -1 if they are angle brackets)
+  - The Permalink-Hash header gets a "version=1" parameter to indicate the version of this spec the header conforms to.
+  - RFC 5064 defines the Archived-At header, which mm3 already supports.  It is suggested that this header would use the permalink hash as the URI directly to this message in the specified archive.
+  - Some people suggest that the List-ID be explicit in the Permalink-Hash value.  I would reject this on the grounds that the value should be opaque.  If this information is needed, it should be added to the Archived-At header.

You received this bug notification because you are a member of Mailman
Coders, which is subscribed to GNU Mailman.

  Permalink-Hash: header specification

To manage notifications about this bug go to:

More information about the Mailman-coders mailing list