listen on 127.0.0.1 by default; add --ip to specify listen address. FELIX-2767
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1057521 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/gogo/shell/src/main/java/org/apache/felix/gogo/shell/Telnet.java b/gogo/shell/src/main/java/org/apache/felix/gogo/shell/Telnet.java
index c3acf6d..f38d1b1 100644
--- a/gogo/shell/src/main/java/org/apache/felix/gogo/shell/Telnet.java
+++ b/gogo/shell/src/main/java/org/apache/felix/gogo/shell/Telnet.java
@@ -22,6 +22,7 @@
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
+import java.net.InetAddress;
import java.util.List;
import org.apache.felix.gogo.options.Option;
@@ -43,6 +44,7 @@
private Thread thread;
private boolean quit;
private int port;
+ private String ip;
public Telnet(CommandProcessor procesor)
{
@@ -52,7 +54,8 @@
public void telnetd(String[] argv) throws IOException
{
final String[] usage = { "telnetd - start simple telnet server",
- "Usage: telnetd [-p port] start | stop | status",
+ "Usage: telnetd [-i ip] [-p port] start | stop | status",
+ " -i --ip=INTERFACE listen interface (default=127.0.0.1)",
" -p --port=PORT listen port (default=" + defaultPort + ")",
" -? --help show help" };
@@ -74,6 +77,7 @@
throw new IllegalStateException("telnetd is already running on port "
+ port);
}
+ ip = opt.get("ip");
port = opt.getNumber("port");
start();
status();
@@ -100,7 +104,7 @@
{
if (server != null)
{
- System.out.println("telnetd is running on port " + port);
+ System.out.println("telnetd is running on " + ip + ":" + port);
}
else
{
@@ -111,7 +115,7 @@
private void start() throws IOException
{
quit = false;
- server = new ServerSocket(port);
+ server = new ServerSocket(port, 0, InetAddress.getByName(ip));
thread = new Thread(this, "gogo telnet");
thread.start();
}