Update of /cvsroot/netmail/netmail
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16569
Modified Files:
telnetd.java
Log Message:
Now listens for a new connection when one terminates.
Index: telnetd.java
===================================================================
RCS file: /cvsroot/netmail/netmail/telnetd.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- telnetd.java 21 Jun 2004 06:28:31 -0000 1.1
+++ telnetd.java 22 Jun 2004 23:32:15 -0000 1.2
@@ -9,29 +9,30 @@
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
-public class telnetd {
+public class telnetd implements Runnable {
+ static volatile PrintStream out;
public static void main(String[] args) throws Throwable {
ServerSocket ss = new ServerSocket(Integer.parseInt(args[0]));
- Socket s = ss.accept();
- System.out.println("Connection from: " + s.getInetAddress());
- (new send(s.getOutputStream())).start();
- BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
+ new Thread(new telnetd()).start();
while (true) {
- System.out.println(in.readLine());
+ Socket s = ss.accept();
+ System.out.println("Connection from: " + s.getInetAddress());
+ out = new PrintStream(s.getOutputStream());
+ BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
+ String t = in.readLine();
+ while (t != null) {
+ System.out.println(t);
+ t = in.readLine();
+ }
+ System.out.println("Connection closed.");
}
}
-}
-
-class send extends Thread {
- OutputStream s;
- send(OutputStream s) {
- this.s = s;
- }
public void run() {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
- PrintStream out = new PrintStream(s);
+ String x;
while (true) try {
- out.println(in.readLine());
+ x = in.readLine();
+ out.println(x);
} catch(Throwable t){}
}
}
|