X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Forg%2Fibex%2Fmail%2FMessage.java;h=b1c8e0a7877ed1b18d50a388a03ab8457de1ae2c;hb=a0c52dd0afcc1aa5dac81b08087bea6ffcf35ef7;hp=73ab0f89e876684bfd915278828910c31f84894b;hpb=866504299bfc44999e6cbb6c518a431d59908e65;p=org.ibex.mail.git diff --git a/src/org/ibex/mail/Message.java b/src/org/ibex/mail/Message.java index 73ab0f8..b1c8e0a 100644 --- a/src/org/ibex/mail/Message.java +++ b/src/org/ibex/mail/Message.java @@ -176,5 +176,19 @@ public class Message extends MIME.Part { public final String summary() { return "[" + envelopeFrom + " -> " + envelopeTo + "] " + subject; } public static class Malformed extends MailException { public Malformed(String s) { super(s); } } + + /** reads an SMTP-style dot-escaped message */ + static Message readDotEncodedMessage(Stream conn) { + StringBuffer buf = new StringBuffer(); + while(true) { + String s = conn.readln(); + if (s == null) throw new RuntimeException("connection closed"); + if (s.equals(".")) break; + if (s.startsWith(".")) s = s.substring(1); + buf.append(s); + buf.append("\r\n"); + } + return Message.newMessage(new Fountain.StringFountain(buf.toString())); + } }