# HG changeset patch # User oc # Date 1402054139 -32400 # Node ID 0cf1541f69bb23e3c8669484bbd9a91072ffc139 # Parent cc1fcdc7657c0b62f414bf1a3d4d90dd88393763 find root reply is accepted. diff -r cc1fcdc7657c -r 0cf1541f69bb src/main/java/jp/ac/u_ryukyu/treevnc/CreateConnectionParam.java --- a/src/main/java/jp/ac/u_ryukyu/treevnc/CreateConnectionParam.java Fri Jun 06 19:49:47 2014 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/treevnc/CreateConnectionParam.java Fri Jun 06 20:28:59 2014 +0900 @@ -2,7 +2,6 @@ import java.util.logging.Logger; import com.glavsoft.viewer.ViewerImpl; -import com.glavsoft.viewer.swing.ConnectionParams; import jp.ac.u_ryukyu.treevnc.client.TreeVncProtocol; import jp.ac.u_ryukyu.treevnc.client.GetHostClient; @@ -10,7 +9,7 @@ public class CreateConnectionParam { private String hostName; - private int portNumber; + private int portNumber = 5999; private MyRfbProto rfb; private final Logger logger; @@ -43,11 +42,9 @@ rfb.setProxyAddr(hostName); echo.getParentName(); v.setConnectionParam(echo.getParentsAddress(), portNumber); - runAcceptThread(); } - - private void runAcceptThread() { + public void runAcceptThread() { Thread accThread = new Thread(new AcceptThread(rfb, portNumber)); accThread.start(); } diff -r cc1fcdc7657c -r 0cf1541f69bb src/main/java/jp/ac/u_ryukyu/treevnc/MyRfbProto.java --- a/src/main/java/jp/ac/u_ryukyu/treevnc/MyRfbProto.java Fri Jun 06 19:49:47 2014 +0900 +++ b/src/main/java/jp/ac/u_ryukyu/treevnc/MyRfbProto.java Fri Jun 06 20:28:59 2014 +0900 @@ -84,10 +84,11 @@ private void treeVncCommand(byte[] b, Reader is, Writer os) { ByteBuffer buf = ByteBuffer.wrap(b); - int command = buf.get(); + int command = buf.get()&0xff; switch (command) { case ProtocolContext.FIND_ROOT : + case ProtocolContext.FIND_ROOT_REPLY : case ProtocolContext.WHERE_TO_CONNECT : case ProtocolContext.LOST_PARENT : System.out.println("get treeVNC command" + command); @@ -284,7 +285,7 @@ reader.readBytes(b); - if (b[0]>=220) return b; // TreeVNC extention command. + if ((b[0]&0xff)>=220) return b; // TreeVNC extention command. if ((b[0] != 'R') || (b[1] != 'F') || (b[2] != 'B') || (b[3] != ' ') || (b[4] < '0') || (b[4] > '9') || (b[5] < '0') || (b[5] > '9') || (b[6] < '0') || (b[6] > '9') || (b[7] != '.') diff -r cc1fcdc7657c -r 0cf1541f69bb src/viewer_swing/java/com/glavsoft/viewer/CuiViewer.java --- a/src/viewer_swing/java/com/glavsoft/viewer/CuiViewer.java Fri Jun 06 19:49:47 2014 +0900 +++ b/src/viewer_swing/java/com/glavsoft/viewer/CuiViewer.java Fri Jun 06 20:28:59 2014 +0900 @@ -214,6 +214,7 @@ CuiViewer viewer = new CuiViewer(); MyRfbProtoClient rfb = new MyRfbProtoClient(); CreateConnectionParam cp = new CreateConnectionParam(rfb); + cp.runAcceptThread(); cp.findTreeVncRoot(); cp.createConnectionParam(viewer); rfb.setViewer(viewer); @@ -227,6 +228,7 @@ MyRfbProtoClient rfb = new MyRfbProtoClient(); CreateConnectionParam cp = new CreateConnectionParam(rfb); cp.setHostName(hostName); + cp.runAcceptThread(); cp.createConnectionParam(viewer); rfb.setViewer(viewer); rfb.setCuiVersion(true); diff -r cc1fcdc7657c -r 0cf1541f69bb src/viewer_swing/java/com/glavsoft/viewer/Viewer.java --- a/src/viewer_swing/java/com/glavsoft/viewer/Viewer.java Fri Jun 06 19:49:47 2014 +0900 +++ b/src/viewer_swing/java/com/glavsoft/viewer/Viewer.java Fri Jun 06 20:28:59 2014 +0900 @@ -291,6 +291,7 @@ public void startViewer() { MyRfbProtoClient rfb = new MyRfbProtoClient(); CreateConnectionParam cp = new CreateConnectionParam(rfb); + cp.runAcceptThread(); cp.findTreeVncRoot(); cp.createConnectionParam(this); isTreeVNC = true; @@ -305,6 +306,7 @@ rfb.setCuiVersion(cui); CreateConnectionParam cp = new CreateConnectionParam(rfb); cp.setHostName(hostName); + cp.runAcceptThread(); cp.createConnectionParam(this); isTreeVNC = true; rfb.setViewer(this);