summaryrefslogtreecommitdiff
path: root/session.c
diff options
context:
space:
mode:
authorColin Watson <cjwatson@debian.org>2020-02-21 11:57:14 +0000
committerColin Watson <cjwatson@debian.org>2020-02-21 11:57:14 +0000
commitf0de78bd4f29fa688c5df116f3f9cd43543a76d0 (patch)
tree856b0dee3f2764c13a32dad5ffe2424fab7fef41 /session.c
parent4213eec74e74de6310c27a40c3e9759a08a73996 (diff)
parent8aa3455b16fddea4c0144a7c4a1edb10ec67dcc8 (diff)
Import openssh_8.2p1.orig.tar.gz
Diffstat (limited to 'session.c')
-rw-r--r--session.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/session.c b/session.c
index 8f5d7e0a4..8c0e54f79 100644
--- a/session.c
+++ b/session.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: session.c,v 1.316 2019/06/28 13:35:04 deraadt Exp $ */ 1/* $OpenBSD: session.c,v 1.318 2020/01/23 07:10:22 dtucker Exp $ */
2/* 2/*
3 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 3 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
4 * All rights reserved 4 * All rights reserved
@@ -56,10 +56,10 @@
56#endif 56#endif
57#include <pwd.h> 57#include <pwd.h>
58#include <signal.h> 58#include <signal.h>
59#include <stdarg.h>
60#include <stdio.h> 59#include <stdio.h>
61#include <stdlib.h> 60#include <stdlib.h>
62#include <string.h> 61#include <string.h>
62#include <stdarg.h>
63#include <unistd.h> 63#include <unistd.h>
64#include <limits.h> 64#include <limits.h>
65 65
@@ -946,6 +946,7 @@ read_etc_default_login(char ***env, u_int *envsize, uid_t uid)
946} 946}
947#endif /* HAVE_ETC_DEFAULT_LOGIN */ 947#endif /* HAVE_ETC_DEFAULT_LOGIN */
948 948
949#if defined(USE_PAM) || defined(HAVE_CYGWIN)
949static void 950static void
950copy_environment_blacklist(char **source, char ***env, u_int *envsize, 951copy_environment_blacklist(char **source, char ***env, u_int *envsize,
951 const char *blacklist) 952 const char *blacklist)
@@ -973,12 +974,15 @@ copy_environment_blacklist(char **source, char ***env, u_int *envsize,
973 free(var_name); 974 free(var_name);
974 } 975 }
975} 976}
977#endif /* defined(USE_PAM) || defined(HAVE_CYGWIN) */
976 978
977void 979#ifdef HAVE_CYGWIN
980static void
978copy_environment(char **source, char ***env, u_int *envsize) 981copy_environment(char **source, char ***env, u_int *envsize)
979{ 982{
980 copy_environment_blacklist(source, env, envsize, NULL); 983 copy_environment_blacklist(source, env, envsize, NULL);
981} 984}
985#endif
982 986
983static char ** 987static char **
984do_setup_env(struct ssh *ssh, Session *s, const char *shell) 988do_setup_env(struct ssh *ssh, Session *s, const char *shell)
@@ -1638,7 +1642,7 @@ do_child(struct ssh *ssh, Session *s, const char *command)
1638 do_rc_files(ssh, s, shell); 1642 do_rc_files(ssh, s, shell);
1639 1643
1640 /* restore SIGPIPE for child */ 1644 /* restore SIGPIPE for child */
1641 signal(SIGPIPE, SIG_DFL); 1645 ssh_signal(SIGPIPE, SIG_DFL);
1642 1646
1643 if (s->is_subsystem == SUBSYSTEM_INT_SFTP_ERROR) { 1647 if (s->is_subsystem == SUBSYSTEM_INT_SFTP_ERROR) {
1644 error("Connection from %s: refusing non-sftp session", 1648 error("Connection from %s: refusing non-sftp session",