summaryrefslogtreecommitdiff
path: root/auth-options.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2008-03-27 11:03:05 +1100
committerDamien Miller <djm@mindrot.org>2008-03-27 11:03:05 +1100
commit95e80955f27d55c7a02724e72bdcb1a4ca619f25 (patch)
tree1fa829fa8a4d5aa4ae93ab18b3b2f7a141e04cb9 /auth-options.c
parent55360e1ceb62c341d5c380bf6d94050d17f59930 (diff)
- djm@cvs.openbsd.org 2008/03/26 21:28:14
[auth-options.c auth-options.h session.c sshd.8] add no-user-rc authorized_keys option to disable execution of ~/.ssh/rc
Diffstat (limited to 'auth-options.c')
-rw-r--r--auth-options.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/auth-options.c b/auth-options.c
index ca5e1c931..6e2256961 100644
--- a/auth-options.c
+++ b/auth-options.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: auth-options.c,v 1.40 2006/08/03 03:34:41 deraadt Exp $ */ 1/* $OpenBSD: auth-options.c,v 1.41 2008/03/26 21:28: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
@@ -42,6 +42,7 @@ int no_port_forwarding_flag = 0;
42int no_agent_forwarding_flag = 0; 42int no_agent_forwarding_flag = 0;
43int no_x11_forwarding_flag = 0; 43int no_x11_forwarding_flag = 0;
44int no_pty_flag = 0; 44int no_pty_flag = 0;
45int no_user_rc = 0;
45 46
46/* "command=" option. */ 47/* "command=" option. */
47char *forced_command = NULL; 48char *forced_command = NULL;
@@ -61,6 +62,7 @@ auth_clear_options(void)
61 no_port_forwarding_flag = 0; 62 no_port_forwarding_flag = 0;
62 no_pty_flag = 0; 63 no_pty_flag = 0;
63 no_x11_forwarding_flag = 0; 64 no_x11_forwarding_flag = 0;
65 no_user_rc = 0;
64 while (custom_environment) { 66 while (custom_environment) {
65 struct envstring *ce = custom_environment; 67 struct envstring *ce = custom_environment;
66 custom_environment = ce->next; 68 custom_environment = ce->next;
@@ -121,6 +123,13 @@ auth_parse_options(struct passwd *pw, char *opts, char *file, u_long linenum)
121 opts += strlen(cp); 123 opts += strlen(cp);
122 goto next_option; 124 goto next_option;
123 } 125 }
126 cp = "no-user-rc";
127 if (strncasecmp(opts, cp, strlen(cp)) == 0) {
128 auth_debug_add("User rc file execution disabled.");
129 no_user_rc = 1;
130 opts += strlen(cp);
131 goto next_option;
132 }
124 cp = "command=\""; 133 cp = "command=\"";
125 if (strncasecmp(opts, cp, strlen(cp)) == 0) { 134 if (strncasecmp(opts, cp, strlen(cp)) == 0) {
126 opts += strlen(cp); 135 opts += strlen(cp);