diff options
Diffstat (limited to 'auth-options.c')
-rw-r--r-- | auth-options.c | 11 |
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; | |||
42 | int no_agent_forwarding_flag = 0; | 42 | int no_agent_forwarding_flag = 0; |
43 | int no_x11_forwarding_flag = 0; | 43 | int no_x11_forwarding_flag = 0; |
44 | int no_pty_flag = 0; | 44 | int no_pty_flag = 0; |
45 | int no_user_rc = 0; | ||
45 | 46 | ||
46 | /* "command=" option. */ | 47 | /* "command=" option. */ |
47 | char *forced_command = NULL; | 48 | char *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); |