Skip to content

Commit c5299f3

Browse files
committed
1 parent a2a1aa0 commit c5299f3

5 files changed

Lines changed: 23 additions & 5 deletions

File tree

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
* ApiManager prints a lot of warning messages #466
66
* `ClassCastException` caused by `@CacheFor` #465
77
* Show entry URL on the console #463
8+
* It displays control characters in the Eclipse console #462
9+
* Limit the access to CLI service #464
810

911
**1.6.2 11/Jan/2018**
1012
* Add string resolver for `java.sql.Date` and `java.sql.Timestamp` #460

src/main/java/act/app/CliServer.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
import javax.enterprise.context.ApplicationScoped;
3333
import javax.inject.Inject;
3434
import java.io.IOException;
35+
import java.net.InetAddress;
3536
import java.net.ServerSocket;
3637
import java.net.Socket;
3738
import java.util.List;
@@ -82,6 +83,12 @@ public void run() {
8283
Socket socket;
8384
try {
8485
socket = serverSocket.accept();
86+
InetAddress addr = socket.getInetAddress();
87+
if (!addr.isLoopbackAddress()) {
88+
logger.warn("remote connection request rejected: " + addr.getHostAddress());
89+
socket.close();
90+
continue;
91+
}
8592
CliSession session = new CliSession(socket, this);
8693
sessions.put(session.id(), session);
8794
executor.submit(session);

src/main/java/act/conf/AppConfig.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -520,7 +520,7 @@ protected T cliEnable(boolean enable) {
520520

521521
public boolean cliEnabled() {
522522
if (null == cliEnabled) {
523-
cliEnabled = get(CLI_ENABLED, true);
523+
cliEnabled = get(CLI_ENABLED, Act.isDev());
524524
}
525525
return cliEnabled;
526526
}

src/main/java/act/conf/AppConfigKey.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ public enum AppConfigKey implements ConfigKey {
122122
*
123123
* Turn on/off CLI server support
124124
*
125-
* Default value: {@code true}
125+
* Default value: `true` on dev mode and `false` on prod mode
126126
*/
127127
CLI_ENABLED("cli.enabled"),
128128

src/main/java/act/util/Banner.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -218,9 +218,13 @@ private static String udfBanner() {
218218
}
219219

220220
private static String poweredBy(int width, String actVersion, boolean center) {
221-
String raw = S.concat("powered by @|bold ActFramework|@ ", actVersion);
222-
String poweredBy = Ansi.ansi().render(raw).toString();
223-
int pw = raw.length() - 9;
221+
String poweredBy = "powered by ActFramework ";
222+
int pw = poweredBy.length();
223+
if (supportAnsi()) {
224+
String raw = S.concat("powered by @|bold ActFramework|@ ", actVersion);
225+
poweredBy = Ansi.ansi().render(raw).toString();
226+
pw = raw.length() - 9;
227+
}
224228
int gap = width - pw;
225229
gap = Math.max(gap, 0);
226230
if (gap == 0) {
@@ -232,4 +236,9 @@ private static String poweredBy(int width, String actVersion, boolean center) {
232236
return S.concat(S.times(" ", gap), poweredBy);
233237
}
234238

239+
private static boolean supportAnsi() {
240+
// eclipse project does not support ansi
241+
return !new File(".project").exists();
242+
}
243+
235244
}

0 commit comments

Comments
 (0)