comparison cli-session.c @ 1051:359fba4b1a49

merge tcp fastopen
author Matt Johnston <matt@ucc.asn.au>
date Sat, 28 Feb 2015 23:24:30 +0800
parents 01eea88963f3
children 2fa71c3b2827 8e0280986710 c45d65392c1a
comparison
equal deleted inserted replaced
1045:31727a8abd4b 1051:359fba4b1a49
35 #include "service.h" 35 #include "service.h"
36 #include "runopts.h" 36 #include "runopts.h"
37 #include "chansession.h" 37 #include "chansession.h"
38 #include "agentfwd.h" 38 #include "agentfwd.h"
39 #include "crypto_desc.h" 39 #include "crypto_desc.h"
40 #include "netio.h"
40 41
41 static void cli_remoteclosed() ATTRIB_NORETURN; 42 static void cli_remoteclosed() ATTRIB_NORETURN;
42 static void cli_sessionloop(); 43 static void cli_sessionloop();
43 static void cli_session_init(); 44 static void cli_session_init();
44 static void cli_finished() ATTRIB_NORETURN; 45 static void cli_finished() ATTRIB_NORETURN;
91 &cli_chan_agent, 92 &cli_chan_agent,
92 #endif 93 #endif
93 NULL /* Null termination */ 94 NULL /* Null termination */
94 }; 95 };
95 96
96 void cli_session(int sock_in, int sock_out) { 97 void cli_connected(int result, int sock, void* userdata, const char *errstring)
98 {
99 struct sshsession *myses = userdata;
100 if (result == DROPBEAR_FAILURE) {
101 dropbear_exit("Connect failed: %s", errstring);
102 }
103 myses->sock_in = myses->sock_out = sock;
104 update_channel_prio();
105 }
106
107 void cli_session(int sock_in, int sock_out, struct dropbear_progress_connection *progress) {
97 108
98 common_session_init(sock_in, sock_out); 109 common_session_init(sock_in, sock_out);
110
111 if (progress) {
112 connect_set_writequeue(progress, &ses.writequeue);
113 }
99 114
100 chaninitialise(cli_chantypes); 115 chaninitialise(cli_chantypes);
101 116
102 /* Set up cli_ses vars */ 117 /* Set up cli_ses vars */
103 cli_session_init(); 118 cli_session_init();
119
104 120
105 /* Ready to go */ 121 /* Ready to go */
106 sessinitdone = 1; 122 sessinitdone = 1;
107 123
108 /* Exchange identification */ 124 /* Exchange identification */