[packet.c]
     Move some more statics into session_state
     ok markus@ djm@
This commit is contained in:
Darren Tucker 2009-06-21 18:59:36 +10:00
parent b422afa41f
commit 7b935c79f4
2 changed files with 21 additions and 13 deletions

View File

@ -93,6 +93,10 @@
Fix warnings found by chl@ and djm@ and change roaming_atomicio's
return type to match atomicio's
Diff from djm@, ok markus@
- andreas@cvs.openbsd.org 2009/06/12 20:58:32
[packet.c]
Move some more statics into session_state
ok markus@ djm@
20090616
- (dtucker) [configure.ac defines.h] Bug #1607: handle the case where fsid_t

View File

@ -1,4 +1,4 @@
/* $OpenBSD: packet.c,v 1.164 2009/06/12 20:43:22 andreas Exp $ */
/* $OpenBSD: packet.c,v 1.165 2009/06/12 20:58:32 andreas Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@ -182,6 +182,15 @@ struct session_state {
/* Used in packet_read_poll2() */
u_int packlen;
/* Used in packet_send2 */
int rekeying;
/* Used in packet_set_interactive */
int set_interactive_called;
/* Used in packet_set_maxsize */
int set_maxsize_called;
TAILQ_HEAD(, packet) outgoing;
};
@ -950,7 +959,6 @@ packet_send2_wrapped(void)
static void
packet_send2(void)
{
static int rekeying = 0;
struct packet *p;
u_char type, *cp;
@ -958,7 +966,7 @@ packet_send2(void)
type = cp[5];
/* during rekeying we can only send key exchange messages */
if (rekeying) {
if (active_state->rekeying) {
if (!((type >= SSH2_MSG_TRANSPORT_MIN) &&
(type <= SSH2_MSG_TRANSPORT_MAX))) {
debug("enqueue packet: %u", type);
@ -974,13 +982,13 @@ packet_send2(void)
/* rekeying starts with sending KEXINIT */
if (type == SSH2_MSG_KEXINIT)
rekeying = 1;
active_state->rekeying = 1;
packet_send2_wrapped();
/* after a NEWKEYS message we can send the complete queue */
if (type == SSH2_MSG_NEWKEYS) {
rekeying = 0;
active_state->rekeying = 0;
while ((p = TAILQ_FIRST(&active_state->outgoing))) {
type = p->type;
debug("dequeue packet: %u", type);
@ -1737,11 +1745,9 @@ packet_set_tos(int interactive)
void
packet_set_interactive(int interactive)
{
static int called = 0;
if (called)
if (active_state->set_interactive_called)
return;
called = 1;
active_state->set_interactive_called = 1;
/* Record that we are in interactive mode. */
active_state->interactive_mode = interactive;
@ -1764,9 +1770,7 @@ packet_is_interactive(void)
int
packet_set_maxsize(u_int s)
{
static int called = 0;
if (called) {
if (active_state->set_maxsize_called) {
logit("packet_set_maxsize: called twice: old %d new %d",
active_state->max_packet_size, s);
return -1;
@ -1775,7 +1779,7 @@ packet_set_maxsize(u_int s)
logit("packet_set_maxsize: bad size %d", s);
return -1;
}
called = 1;
active_state->set_maxsize_called = 1;
debug("packet_set_maxsize: setting to %d", s);
active_state->max_packet_size = s;
return s;