summaryrefslogtreecommitdiff
path: root/channels.c
diff options
context:
space:
mode:
authordjm@openbsd.org <djm@openbsd.org>2017-09-24 09:50:01 +0000
committerDamien Miller <djm@mindrot.org>2017-09-24 19:51:01 +1000
commitc704f641f7b8777497dc82e81f2ac89afec7e401 (patch)
tree2c68d38501a8ddf6880f12373dada6b114029ee0 /channels.c
parent55486f5cef117354f0c64f991895835077b7c7f7 (diff)
upstream commit
write the correct buffer when tunnel forwarding; doesn't matter on OpenBSD (they are the same) but does matter on portable where we use an output filter to translate os-specific tun/tap headers Upstream-ID: f1ca94eff48404827b12e1d12f6139ee99a72284
Diffstat (limited to 'channels.c')
-rw-r--r--channels.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/channels.c b/channels.c
index b3c490eb4..6a55d3bf3 100644
--- a/channels.c
+++ b/channels.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: channels.c,v 1.373 2017/09/23 22:04:07 djm Exp $ */ 1/* $OpenBSD: channels.c,v 1.374 2017/09/24 09:50:01 djm Exp $ */
2/* 2/*
3 * Author: Tatu Ylonen <ylo@cs.hut.fi> 3 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -1941,7 +1941,7 @@ channel_handle_wfd(struct ssh *ssh, Channel *c,
1941 1941
1942 if (c->datagram) { 1942 if (c->datagram) {
1943 /* ignore truncated writes, datagrams might get lost */ 1943 /* ignore truncated writes, datagrams might get lost */
1944 len = write(c->wfd, data, dlen); 1944 len = write(c->wfd, buf, dlen);
1945 free(data); 1945 free(data);
1946 if (len < 0 && (errno == EINTR || errno == EAGAIN || 1946 if (len < 0 && (errno == EINTR || errno == EAGAIN ||
1947 errno == EWOULDBLOCK)) 1947 errno == EWOULDBLOCK))