mirror of
https://github.com/openjdk/jdk.git
synced 2026-04-16 09:50:30 +00:00
8171533: Better email transfer
Reviewed-by: chegar, dfuchs
This commit is contained in:
parent
1ddd69b75e
commit
ead148cf2e
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1995, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1995, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -43,6 +43,7 @@ import sun.security.action.GetPropertyAction;
|
||||
|
||||
public class SmtpClient extends TransferProtocolClient {
|
||||
|
||||
private static int DEFAULT_SMTP_PORT = 25;
|
||||
String mailhost;
|
||||
SmtpPrintStream message;
|
||||
|
||||
@ -74,6 +75,10 @@ public class SmtpClient extends TransferProtocolClient {
|
||||
}
|
||||
|
||||
public void to(String s) throws IOException {
|
||||
if (s.indexOf('\n') != -1) {
|
||||
throw new IOException("Illegal SMTP command",
|
||||
new IllegalArgumentException("Illegal carriage return"));
|
||||
}
|
||||
int st = 0;
|
||||
int limit = s.length();
|
||||
int pos = 0;
|
||||
@ -116,16 +121,21 @@ public class SmtpClient extends TransferProtocolClient {
|
||||
}
|
||||
|
||||
public void from(String s) throws IOException {
|
||||
if (s.startsWith("<"))
|
||||
if (s.indexOf('\n') != -1) {
|
||||
throw new IOException("Illegal SMTP command",
|
||||
new IllegalArgumentException("Illegal carriage return"));
|
||||
}
|
||||
if (s.startsWith("<")) {
|
||||
issueCommand("mail from: " + s + "\r\n", 250);
|
||||
else
|
||||
} else {
|
||||
issueCommand("mail from: <" + s + ">\r\n", 250);
|
||||
}
|
||||
}
|
||||
|
||||
/** open a SMTP connection to host <i>host</i>. */
|
||||
private void openServer(String host) throws IOException {
|
||||
mailhost = host;
|
||||
openServer(mailhost, 25);
|
||||
openServer(mailhost, DEFAULT_SMTP_PORT);
|
||||
issueCommand("helo "+InetAddress.getLocalHost().getHostName()+"\r\n", 250);
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user