comparison session.h @ 1051:359fba4b1a49

merge tcp fastopen
author Matt Johnston <matt@ucc.asn.au>
date Sat, 28 Feb 2015 23:24:30 +0800
parents 01eea88963f3
children 4d7b4c5526c5
comparison
equal deleted inserted replaced
1045:31727a8abd4b 1051:359fba4b1a49
36 #include "listener.h" 36 #include "listener.h"
37 #include "packet.h" 37 #include "packet.h"
38 #include "tcpfwd.h" 38 #include "tcpfwd.h"
39 #include "chansession.h" 39 #include "chansession.h"
40 #include "dbutil.h" 40 #include "dbutil.h"
41 #include "netio.h"
41 42
42 extern int sessinitdone; /* Is set to 0 somewhere */ 43 extern int sessinitdone; /* Is set to 0 somewhere */
43 extern int exitflag; 44 extern int exitflag;
44 45
45 void common_session_init(int sock_in, int sock_out); 46 void common_session_init(int sock_in, int sock_out);
58 void svr_session(int sock, int childpipe) ATTRIB_NORETURN; 59 void svr_session(int sock, int childpipe) ATTRIB_NORETURN;
59 void svr_dropbear_exit(int exitcode, const char* format, va_list param) ATTRIB_NORETURN; 60 void svr_dropbear_exit(int exitcode, const char* format, va_list param) ATTRIB_NORETURN;
60 void svr_dropbear_log(int priority, const char* format, va_list param); 61 void svr_dropbear_log(int priority, const char* format, va_list param);
61 62
62 /* Client */ 63 /* Client */
63 void cli_session(int sock_in, int sock_out) ATTRIB_NORETURN; 64 void cli_session(int sock_in, int sock_out, struct dropbear_progress_connection *progress) ATTRIB_NORETURN;
65 void cli_connected(int result, int sock, void* userdata, const char *errstring);
64 void cleantext(unsigned char* dirtytext); 66 void cleantext(unsigned char* dirtytext);
65 67
66 /* crypto parameters that are stored individually for transmit and receive */ 68 /* crypto parameters that are stored individually for transmit and receive */
67 struct key_context_directional { 69 struct key_context_directional {
68 const struct dropbear_cipher *algo_crypt; 70 const struct dropbear_cipher *algo_crypt;
142 144
143 unsigned char lastpacket; /* What the last received packet type was */ 145 unsigned char lastpacket; /* What the last received packet type was */
144 146
145 int signal_pipe[2]; /* stores endpoints of a self-pipe used for 147 int signal_pipe[2]; /* stores endpoints of a self-pipe used for
146 race-free signal handling */ 148 race-free signal handling */
149
150 m_list conn_pending;
147 151
148 /* time of the last packet send/receive, for keepalive. Not real-world clock */ 152 /* time of the last packet send/receive, for keepalive. Not real-world clock */
149 time_t last_packet_time_keepalive_sent; 153 time_t last_packet_time_keepalive_sent;
150 time_t last_packet_time_keepalive_recv; 154 time_t last_packet_time_keepalive_recv;
151 time_t last_packet_time_any_sent; 155 time_t last_packet_time_any_sent;