X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;ds=sidebyside;f=src%2Forg%2Fcacert%2Fgigi%2Femail%2FTestEmailProvider.java;h=009ecf930c134c508264dcd6ea8a503b6dfe7569;hb=e10fa0abc72abd9b4080ebd3c2986b101c7c35ea;hp=9f37be97f3966bcb7091c1fa328eae5446de830f;hpb=093f4797bc1e84c4963a67093f2b21393656edab;p=gigi.git diff --git a/src/org/cacert/gigi/email/TestEmailProvider.java b/src/org/cacert/gigi/email/TestEmailProvider.java index 9f37be97..009ecf93 100644 --- a/src/org/cacert/gigi/email/TestEmailProvider.java +++ b/src/org/cacert/gigi/email/TestEmailProvider.java @@ -28,11 +28,7 @@ class TestEmailProvider extends EmailProvider { String fromname, String errorsto, boolean extra) throws IOException { boolean sent = false; while (!sent) { - if (client == null || client.isClosed()) { - client = servs.accept(); - out = new DataOutputStream(client.getOutputStream()); - in = new DataInputStream(client.getInputStream()); - } + assureLocalConnection(); try { out.writeUTF("mail"); write(to); @@ -47,9 +43,17 @@ class TestEmailProvider extends EmailProvider { } } } + private void assureLocalConnection() throws IOException { + if (client == null || client.isClosed()) { + client = servs.accept(); + out = new DataOutputStream(client.getOutputStream()); + in = new DataInputStream(client.getInputStream()); + } + } @Override public String checkEmailServer(int forUid, String address) throws IOException { + assureLocalConnection(); out.writeUTF("challengeAddrBox"); out.writeUTF(address); return in.readUTF();