]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
upstream: convert servconf.c to new packet API
authordjm@openbsd.org <djm@openbsd.org>
Sat, 19 Jan 2019 21:37:48 +0000 (21:37 +0000)
committerDamien Miller <djm@mindrot.org>
Sat, 19 Jan 2019 22:02:44 +0000 (09:02 +1100)
with & ok markus@

OpenBSD-Commit-ID: 126553aecca302c9e02fd77e333b9cb217e623b4

auth.c
servconf.c
servconf.h
sshd.c

diff --git a/auth.c b/auth.c
index 94f43a6c2a66ee0d92074701c09b14a693b00c7b..d82b406832e037439a521e23f2cf82761458e39d 100644 (file)
--- 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);
index 0ec095bd0ffd288cd1cfb8168093474b335004d6..86c631bb05aa9a9027c37060793c18905ac8fc4e 100644 (file)
@@ -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);
index 548ad5a0c10710e6561903645ffadf9ce842ea37..54e0a8d8d9b95721f0be9780db4e60920c8a27fe 100644 (file)
@@ -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 ad8c152a5f12dd10c58c02f364b827353526d7e6..64f27a7bb5207f8e6cc2f6a8e14e7650b6dd8970 100644 (file)
--- 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);
        }