From 2d6b83353b3ec804e24bbb48ab5c7dd54b1690bf Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Fri, 21 Jun 2002 15:59:49 +1000 Subject: - djm@cvs.openbsd.org 2002/06/21 05:50:51 [monitor.c] Don't initialise compression buffers when compression=no in sshd_config; ok Niels@ --- monitor.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'monitor.c') diff --git a/monitor.c b/monitor.c index c769f12e7..39b6248d4 100644 --- a/monitor.c +++ b/monitor.c @@ -25,7 +25,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: monitor.c,v 1.15 2002/06/19 18:01:00 markus Exp $"); +RCSID("$OpenBSD: monitor.c,v 1.16 2002/06/21 05:50:51 djm Exp $"); #include @@ -327,8 +327,10 @@ monitor_child_postauth(struct monitor *pmonitor) void monitor_sync(struct monitor *pmonitor) { - /* The member allocation is not visible, so sync it */ - mm_share_sync(&pmonitor->m_zlib, &pmonitor->m_zback); + if (options.compression) { + /* The member allocation is not visible, so sync it */ + mm_share_sync(&pmonitor->m_zlib, &pmonitor->m_zback); + } } int @@ -1330,7 +1332,8 @@ monitor_apply_keystate(struct monitor *pmonitor) sizeof(outgoing_stream)); /* Update with new address */ - mm_init_compression(pmonitor->m_zlib); + if (options.compression) + mm_init_compression(pmonitor->m_zlib); /* Network I/O buffers */ /* XXX inefficient for large buffers, need: buffer_init_from_string */ @@ -1515,11 +1518,13 @@ monitor_init(void) mon->m_sendfd = pair[1]; /* Used to share zlib space across processes */ - mon->m_zback = mm_create(NULL, MM_MEMSIZE); - mon->m_zlib = mm_create(mon->m_zback, 20 * MM_MEMSIZE); + if (options.compression) { + mon->m_zback = mm_create(NULL, MM_MEMSIZE); + mon->m_zlib = mm_create(mon->m_zback, 20 * MM_MEMSIZE); - /* Compression needs to share state across borders */ - mm_init_compression(mon->m_zlib); + /* Compression needs to share state across borders */ + mm_init_compression(mon->m_zlib); + } return mon; } -- cgit v1.2.3