summaryrefslogtreecommitdiff
path: root/channels.h
diff options
context:
space:
mode:
authorBen Lindstrom <mouring@eviladmin.org>2002-03-26 03:26:24 +0000
committerBen Lindstrom <mouring@eviladmin.org>2002-03-26 03:26:24 +0000
commitcf15944c2355f61116d7fb5e793c097dd347284f (patch)
tree15203eed8ed647b7f11f7e5347e8a9bc0f18f2b5 /channels.h
parent4f054607f05f18a705579a2475f490ed47e31028 (diff)
- markus@cvs.openbsd.org 2002/03/25 21:13:51
[channels.c channels.h compat.c compat.h nchan.c] don't send stderr data after EOF, accept this from older known (broken) sshd servers only, fixes http://bugzilla.mindrot.org/show_bug.cgi?id=179
Diffstat (limited to 'channels.h')
-rw-r--r--channels.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/channels.h b/channels.h
index 707d9a925..0da2d4e5e 100644
--- a/channels.h
+++ b/channels.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: channels.h,v 1.65 2002/03/04 17:27:39 stevesk Exp $ */ 1/* $OpenBSD: channels.h,v 1.66 2002/03/25 21:13:51 markus Exp $ */
2 2
3/* 3/*
4 * Author: Tatu Ylonen <ylo@cs.hut.fi> 4 * Author: Tatu Ylonen <ylo@cs.hut.fi>
@@ -135,6 +135,18 @@ struct Channel {
135 135
136#define CHAN_CLOSE_SENT 0x01 136#define CHAN_CLOSE_SENT 0x01
137#define CHAN_CLOSE_RCVD 0x02 137#define CHAN_CLOSE_RCVD 0x02
138#define CHAN_EOF_SENT 0x04
139#define CHAN_EOF_RCVD 0x08
140
141/* check whether 'efd' is still in use */
142#define CHANNEL_EFD_INPUT_ACTIVE(c) \
143 (compat20 && c->extended_usage == CHAN_EXTENDED_READ && \
144 (c->efd != -1 || \
145 buffer_len(&c->extended) > 0))
146#define CHANNEL_EFD_OUTPUT_ACTIVE(c) \
147 (compat20 && c->extended_usage == CHAN_EXTENDED_WRITE && \
148 ((c->efd != -1 && !(c->flags & CHAN_EOF_RCVD)) || \
149 buffer_len(&c->extended) > 0))
138 150
139/* channel management */ 151/* channel management */
140 152