summaryrefslogtreecommitdiff
path: root/readconf.h
diff options
context:
space:
mode:
authordjm@openbsd.org <djm@openbsd.org>2014-10-08 22:20:25 +0000
committerDamien Miller <djm@mindrot.org>2014-10-13 11:41:48 +1100
commit957fbceb0f3166e41b76fdb54075ab3b9cc84cba (patch)
tree7c8bc1f0090201400383e51d84a7fda79995e513 /readconf.h
parent5c0dafd38bf66feeeb45fa0741a5baf5ad8039ba (diff)
upstream commit
Tweak config reparsing with host canonicalisation Make the second pass through the config files always run when hostname canonicalisation is enabled. Add a "Match canonical" criteria that allows ssh_config Match blocks to trigger only in the second config pass. Add a -G option to ssh that causes it to parse its configuration and dump the result to stdout, similar to "sshd -T" Allow ssh_config Port options set in the second config parse phase to be applied (they were being ignored). bz#2267 bz#2286; ok markus
Diffstat (limited to 'readconf.h')
-rw-r--r--readconf.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/readconf.h b/readconf.h
index 0b9cb777a..7b58d01f3 100644
--- a/readconf.h
+++ b/readconf.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: readconf.h,v 1.102 2014/07/15 15:54:14 millert Exp $ */ 1/* $OpenBSD: readconf.h,v 1.103 2014/10/08 22:20:25 djm Exp $ */
2 2
3/* 3/*
4 * Author: Tatu Ylonen <ylo@cs.hut.fi> 4 * Author: Tatu Ylonen <ylo@cs.hut.fi>
@@ -164,17 +164,19 @@ typedef struct {
164 164
165#define SSHCONF_CHECKPERM 1 /* check permissions on config file */ 165#define SSHCONF_CHECKPERM 1 /* check permissions on config file */
166#define SSHCONF_USERCONF 2 /* user provided config file not system */ 166#define SSHCONF_USERCONF 2 /* user provided config file not system */
167#define SSHCONF_POSTCANON 4 /* After hostname canonicalisation */
167 168
168void initialize_options(Options *); 169void initialize_options(Options *);
169void fill_default_options(Options *); 170void fill_default_options(Options *);
170void fill_default_options_for_canonicalization(Options *); 171void fill_default_options_for_canonicalization(Options *);
171int process_config_line(Options *, struct passwd *, const char *, char *, 172int process_config_line(Options *, struct passwd *, const char *,
172 const char *, int, int *, int); 173 const char *, char *, const char *, int, int *, int);
173int read_config_file(const char *, struct passwd *, const char *, 174int read_config_file(const char *, struct passwd *, const char *,
174 Options *, int); 175 const char *, Options *, int);
175int parse_forward(struct Forward *, const char *, int, int); 176int parse_forward(struct Forward *, const char *, int, int);
176int default_ssh_port(void); 177int default_ssh_port(void);
177int option_clear_or_none(const char *); 178int option_clear_or_none(const char *);
179void dump_client_config(Options *o, const char *host);
178 180
179void add_local_forward(Options *, const struct Forward *); 181void add_local_forward(Options *, const struct Forward *);
180void add_remote_forward(Options *, const struct Forward *); 182void add_remote_forward(Options *, const struct Forward *);