summaryrefslogtreecommitdiff
path: root/readconf.c
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@zip.com.au>2013-06-02 07:31:17 +1000
committerDarren Tucker <dtucker@zip.com.au>2013-06-02 07:31:17 +1000
commita627d42e51ffa71e014d7b2d2c07118122fd3ec3 (patch)
tree7bda769de81f509e28d800916fa20abd37906d79 /readconf.c
parentc7aad0058c957afeb26a3f703e8cb0eddeb62365 (diff)
- djm@cvs.openbsd.org 2013/05/17 00:13:13
[xmalloc.h cipher.c sftp-glob.c ssh-keyscan.c ssh.c sftp-common.c ssh-ecdsa.c auth2-chall.c compat.c readconf.c kexgexs.c monitor.c gss-genr.c cipher-3des1.c kex.c monitor_wrap.c ssh-pkcs11-client.c auth-options.c rsa.c auth2-pubkey.c sftp.c hostfile.c auth2.c servconf.c auth.c authfile.c xmalloc.c uuencode.c sftp-client.c auth2-gss.c sftp-server.c bufaux.c mac.c session.c jpake.c kexgexc.c sshconnect.c auth-chall.c auth2-passwd.c sshconnect1.c buffer.c kexecdhs.c kexdhs.c ssh-rsa.c auth1.c ssh-pkcs11.c auth2-kbdint.c kexdhc.c sshd.c umac.c ssh-dss.c auth2-jpake.c bufbn.c clientloop.c monitor_mm.c scp.c roaming_client.c serverloop.c key.c auth-rsa.c ssh-pkcs11-helper.c ssh-keysign.c ssh-keygen.c match.c channels.c sshconnect2.c addrmatch.c mux.c canohost.c kexecdhc.c schnorr.c ssh-add.c misc.c auth2-hostbased.c ssh-agent.c bufec.c groupaccess.c dns.c packet.c readpass.c authfd.c moduli.c] bye, bye xfree(); ok markus@
Diffstat (limited to 'readconf.c')
-rw-r--r--readconf.c30
1 files changed, 12 insertions, 18 deletions
diff --git a/readconf.c b/readconf.c
index 30c1e83bd..45cf910fe 100644
--- a/readconf.c
+++ b/readconf.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: readconf.c,v 1.201 2013/05/16 10:43:34 dtucker Exp $ */ 1/* $OpenBSD: readconf.c,v 1.202 2013/05/17 00:13:14 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
@@ -308,22 +308,20 @@ clear_forwardings(Options *options)
308 int i; 308 int i;
309 309
310 for (i = 0; i < options->num_local_forwards; i++) { 310 for (i = 0; i < options->num_local_forwards; i++) {
311 if (options->local_forwards[i].listen_host != NULL) 311 free(options->local_forwards[i].listen_host);
312 xfree(options->local_forwards[i].listen_host); 312 free(options->local_forwards[i].connect_host);
313 xfree(options->local_forwards[i].connect_host);
314 } 313 }
315 if (options->num_local_forwards > 0) { 314 if (options->num_local_forwards > 0) {
316 xfree(options->local_forwards); 315 free(options->local_forwards);
317 options->local_forwards = NULL; 316 options->local_forwards = NULL;
318 } 317 }
319 options->num_local_forwards = 0; 318 options->num_local_forwards = 0;
320 for (i = 0; i < options->num_remote_forwards; i++) { 319 for (i = 0; i < options->num_remote_forwards; i++) {
321 if (options->remote_forwards[i].listen_host != NULL) 320 free(options->remote_forwards[i].listen_host);
322 xfree(options->remote_forwards[i].listen_host); 321 free(options->remote_forwards[i].connect_host);
323 xfree(options->remote_forwards[i].connect_host);
324 } 322 }
325 if (options->num_remote_forwards > 0) { 323 if (options->num_remote_forwards > 0) {
326 xfree(options->remote_forwards); 324 free(options->remote_forwards);
327 options->remote_forwards = NULL; 325 options->remote_forwards = NULL;
328 } 326 }
329 options->num_remote_forwards = 0; 327 options->num_remote_forwards = 0;
@@ -1456,7 +1454,7 @@ parse_forward(Forward *fwd, const char *fwdspec, int dynamicfwd, int remotefwd)
1456 i = 0; /* failure */ 1454 i = 0; /* failure */
1457 } 1455 }
1458 1456
1459 xfree(p); 1457 free(p);
1460 1458
1461 if (dynamicfwd) { 1459 if (dynamicfwd) {
1462 if (!(i == 1 || i == 2)) 1460 if (!(i == 1 || i == 2))
@@ -1482,13 +1480,9 @@ parse_forward(Forward *fwd, const char *fwdspec, int dynamicfwd, int remotefwd)
1482 return (i); 1480 return (i);
1483 1481
1484 fail_free: 1482 fail_free:
1485 if (fwd->connect_host != NULL) { 1483 free(fwd->connect_host);
1486 xfree(fwd->connect_host); 1484 fwd->connect_host = NULL;
1487 fwd->connect_host = NULL; 1485 free(fwd->listen_host);
1488 } 1486 fwd->listen_host = NULL;
1489 if (fwd->listen_host != NULL) {
1490 xfree(fwd->listen_host);
1491 fwd->listen_host = NULL;
1492 }
1493 return (0); 1487 return (0);
1494} 1488}