comparison app/src/main/java/ch/ethz/ssh2/transport/ServerTransportManager.java @ 438:d29cce60f393

migrate from Eclipse to Android Studio
author Carl Byington <carl@five-ten-sg.com>
date Thu, 03 Dec 2015 11:23:55 -0800
parents src/ch/ethz/ssh2/transport/ServerTransportManager.java@071eccdff8ea
children
comparison
equal deleted inserted replaced
437:208b31032318 438:d29cce60f393
1 package ch.ethz.ssh2.transport;
2
3 import java.io.IOException;
4 import java.net.Socket;
5
6 import ch.ethz.ssh2.server.ServerConnectionState;
7
8 /**
9 * @version $Id: ServerTransportManager.java 151 2014-04-28 10:03:39Z dkocher@sudo.ch $
10 */
11 public class ServerTransportManager extends TransportManager {
12
13 private final Socket sock;
14
15 public ServerTransportManager(final Socket socket) {
16 super(socket);
17 // TCP connection is already established
18 this.sock = socket;
19 }
20
21 public void connect(ServerConnectionState state) throws IOException {
22 /* Parse the client lin
23 e and say hello - important: this information is later needed for the
24 * key exchange (to stop man-in-the-middle attacks) - that is why we wrap it into an object
25 * for later use.
26 */
27 state.csh = ClientServerHello.serverHello(state.softwareversion, sock.getInputStream(), sock.getOutputStream());
28 TransportConnection tc = new TransportConnection(sock.getInputStream(), sock.getOutputStream(), state.generator);
29 KexManager km = new ServerKexManager(state);
30 super.init(tc, km);
31 km.initiateKEX(state.next_cryptoWishList, null, state.next_dsa_key, state.next_rsa_key, state.next_ec_key);
32 this.startReceiver();
33 }
34 }