- markus@cvs.openbsd.org 2003/09/19 11:31:33
[channels.c]
do not call channel_free_all on fatal; ok deraadt
+ - markus@cvs.openbsd.org 2003/09/19 11:33:09
+ [packet.c sshd.c]
+ do not call packet_close on fatal; ok deraadt
20030919
- (djm) Bug #683: Remove reference to --with-ipv4-default from INSTALL;
*/
#include "includes.h"
-RCSID("$OpenBSD: packet.c,v 1.110 2003/09/19 09:02:02 markus Exp $");
+RCSID("$OpenBSD: packet.c,v 1.111 2003/09/19 11:33:09 markus Exp $");
#include "openbsd-compat/sys-queue.h"
buffer_init(&incoming_packet);
TAILQ_INIT(&outgoing);
}
- /* Kludge: arrange the close function to be called from fatal(). */
- fatal_add_cleanup((void (*) (void *)) packet_close, NULL);
}
/* Returns 1 if remote host is connected via socket, 0 if not. */
/* Close the connection. */
packet_close();
-
fatal_cleanup();
}
*/
#include "includes.h"
-RCSID("$OpenBSD: sshd.c,v 1.276 2003/08/28 12:54:34 markus Exp $");
+RCSID("$OpenBSD: sshd.c,v 1.277 2003/09/19 11:33:09 markus Exp $");
#include <openssl/dh.h>
#include <openssl/bn.h>
if (pid == -1) {
fatal("fork of unprivileged child failed");
} else if (pid != 0) {
- fatal_remove_cleanup((void (*) (void *)) packet_close, NULL);
-
debug2("Network child is on pid %ld", (long)pid);
close(pmonitor->m_recvfd);
while (waitpid(pid, &status, 0) < 0)
if (errno != EINTR)
break;
-
- /* Reinstall, since the child has finished */
- fatal_add_cleanup((void (*) (void *)) packet_close, NULL);
-
return (authctxt);
} else {
/* child */
if (pmonitor->m_pid == -1)
fatal("fork of unprivileged child failed");
else if (pmonitor->m_pid != 0) {
- fatal_remove_cleanup((void (*) (void *)) packet_close, NULL);
-
debug2("User child is on pid %ld", (long)pmonitor->m_pid);
close(pmonitor->m_recvfd);
monitor_child_postauth(pmonitor);