From: adam Date: Mon, 15 Jan 2007 08:13:58 +0000 (+0000) Subject: allow seeding of Message-ID generator X-Git-Url: http://git.megacz.com/?p=org.ibex.mail.git;a=commitdiff_plain;h=b1e6307684e612ff245cef7f29f866bf530d6727 allow seeding of Message-ID generator darcs-hash:20070115081358-5007d-d2b4ce63ce824391e71b22c7460edf90cb42f9d0.gz --- diff --git a/src/org/ibex/mail/Message.java b/src/org/ibex/mail/Message.java index b4db07e..c3d3ad2 100644 --- a/src/org/ibex/mail/Message.java +++ b/src/org/ibex/mail/Message.java @@ -90,6 +90,7 @@ public class Message extends MIME.Part { private Message(Fountain in) throws Malformed { super(in); + this.envelopeTo = headers.get("Envelope-To") != null ? Address.parse(headers.get("Envelope-To")) : null; this.envelopeFrom = headers.get("Return-Path") != null ? Address.parse(headers.get("Return-Path")) : null; this.to = headers.get("To") != null ? Address.parse(headers.get("To")) : this.envelopeTo; @@ -136,12 +137,14 @@ public class Message extends MIME.Part { // http://www.jwz.org/doc/mid.html private static final Random random = new Random(); public static String generateFreshMessageId() { + return generateFreshMessageId(Base36.encode(System.currentTimeMillis())+'.'+ + Base36.encode(random.nextLong())); + } + public static String generateFreshMessageId(String seed) { StringBuffer ret = new StringBuffer(); ret.append('<'); - ret.append(Base36.encode(System.currentTimeMillis())); - ret.append('.'); - ret.append(Base36.encode(random.nextLong())); - ret.append('.'); + ret.append(seed); + ret.append('@'); try { ret.append(InetAddress.getLocalHost().getHostName()); } catch (UnknownHostException e) { /* DELIBERATE */ } ret.append('>'); return ret.toString();