summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--auth.c5
-rw-r--r--servconf.c10
-rw-r--r--servconf.h4
-rw-r--r--sshd.c6
4 files changed, 11 insertions, 14 deletions
diff --git a/auth.c b/auth.c
index 94f43a6c..d82b4068 100644
--- a/auth.c
+++ b/auth.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: auth.c,v 1.136 2019/01/19 21:31:32 djm Exp $ */
+/* $OpenBSD: auth.c,v 1.137 2019/01/19 21:37:48 djm Exp $ */
/*
* Copyright (c) 2000 Markus Friedl. All rights reserved.
*
@@ -572,8 +572,9 @@ getpwnamallow(const char *user)
#endif
#endif
struct passwd *pw;
- struct connection_info *ci = get_connection_info(1, options.use_dns);
+ struct connection_info *ci;
+ ci = get_connection_info(ssh, 1, options.use_dns);
ci->user = user;
parse_server_match_config(&options, ci);
log_change_level(options.log_level);
diff --git a/servconf.c b/servconf.c
index 0ec095bd..86c631bb 100644
--- a/servconf.c
+++ b/servconf.c
@@ -1,5 +1,5 @@
-/* $OpenBSD: servconf.c,v 1.345 2019/01/19 21:31:32 djm Exp $ */
+/* $OpenBSD: servconf.c,v 1.346 2019/01/19 21:37:48 djm Exp $ */
/*
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
* All rights reserved
@@ -65,9 +65,6 @@
#include "myproposal.h"
#include "digest.h"
-#include "opacket.h" /* XXX */
-extern struct ssh *active_state; /* XXX */
-
static void add_listen_addr(ServerOptions *, const char *,
const char *, int);
static void add_one_listen_addr(ServerOptions *, const char *,
@@ -926,12 +923,11 @@ process_permitopen(struct ssh *ssh, ServerOptions *options)
}
struct connection_info *
-get_connection_info(int populate, int use_dns)
+get_connection_info(struct ssh *ssh, int populate, int use_dns)
{
- struct ssh *ssh = active_state; /* XXX */
static struct connection_info ci;
- if (!populate)
+ if (ssh == NULL || !populate)
return &ci;
ci.host = auth_get_canonical_hostname(ssh, use_dns);
ci.address = ssh_remote_ipaddr(ssh);
diff --git a/servconf.h b/servconf.h
index 548ad5a0..54e0a8d8 100644
--- a/servconf.h
+++ b/servconf.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: servconf.h,v 1.138 2018/11/19 04:12:32 djm Exp $ */
+/* $OpenBSD: servconf.h,v 1.139 2019/01/19 21:37:48 djm Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
@@ -258,7 +258,7 @@ struct connection_info {
M_CP_STRARRAYOPT(permitted_listens, num_permitted_listens); \
} while (0)
-struct connection_info *get_connection_info(int, int);
+struct connection_info *get_connection_info(struct ssh *, int, int);
void initialize_server_options(ServerOptions *);
void fill_default_server_options(ServerOptions *);
int process_server_config_line(ServerOptions *, char *, const char *, int,
diff --git a/sshd.c b/sshd.c
index ad8c152a..64f27a7b 100644
--- a/sshd.c
+++ b/sshd.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sshd.c,v 1.522 2019/01/19 21:31:32 djm Exp $ */
+/* $OpenBSD: sshd.c,v 1.523 2019/01/19 21:37:48 djm Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -1493,7 +1493,7 @@ main(int ac, char **av)
test_flag = 2;
break;
case 'C':
- connection_info = get_connection_info(0, 0);
+ connection_info = get_connection_info(ssh, 0, 0);
if (parse_server_match_testspec(connection_info,
optarg) == -1)
exit(1);
@@ -1776,7 +1776,7 @@ main(int ac, char **av)
* use a blank one that will cause no predicate to match.
*/
if (connection_info == NULL)
- connection_info = get_connection_info(0, 0);
+ connection_info = get_connection_info(ssh, 0, 0);
parse_server_match_config(&options, connection_info);
dump_config(&options);
}