libssh 0.12.0
The SSH library
Loading...
Searching...
No Matches
config.h
1/*
2 * config.h - parse the ssh config file
3 *
4 * This file is part of the SSH Library
5 *
6 * Copyright (c) 2009-2018 by Andreas Schneider <asn@cryptomilk.org>
7 *
8 * The SSH Library is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU Lesser General Public License as published by
10 * the Free Software Foundation; either version 2.1 of the License, or (at your
11 * option) any later version.
12 *
13 * The SSH Library is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
16 * License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public License
19 * along with the SSH Library; see the file COPYING. If not, write to
20 * the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
21 * MA 02111-1307, USA.
22 */
23
24#ifndef LIBSSH_CONFIG_H_
25#define LIBSSH_CONFIG_H_
26
27#include "libssh/libssh.h"
28
29enum ssh_config_opcode_e {
30 /* Unknown opcode */
31 SOC_UNKNOWN = -3,
32 /* Known and not applicable to libssh */
33 SOC_NA = -2,
34 /* Known but not supported by current libssh version */
35 SOC_UNSUPPORTED = -1,
36 SOC_HOST,
37 SOC_MATCH,
38 SOC_HOSTNAME,
39 SOC_PORT,
40 SOC_USERNAME,
41 SOC_IDENTITY,
42 SOC_CIPHERS,
43 SOC_MACS,
44 SOC_COMPRESSION,
45 SOC_TIMEOUT,
46 SOC_STRICTHOSTKEYCHECK,
47 SOC_KNOWNHOSTS,
48 SOC_PROXYCOMMAND,
49 SOC_PROXYJUMP,
50 SOC_GSSAPISERVERIDENTITY,
51 SOC_GSSAPICLIENTIDENTITY,
52 SOC_GSSAPIDELEGATECREDENTIALS,
53 SOC_INCLUDE,
54 SOC_BINDADDRESS,
55 SOC_GLOBALKNOWNHOSTSFILE,
56 SOC_LOGLEVEL,
57 SOC_HOSTKEYALGORITHMS,
58 SOC_KEXALGORITHMS,
59 SOC_GSSAPIAUTHENTICATION,
60 SOC_KBDINTERACTIVEAUTHENTICATION,
61 SOC_PASSWORDAUTHENTICATION,
62 SOC_PUBKEYAUTHENTICATION,
63 SOC_PUBKEYACCEPTEDKEYTYPES,
64 SOC_REKEYLIMIT,
65 SOC_IDENTITYAGENT,
66 SOC_IDENTITIESONLY,
67 SOC_CONTROLMASTER,
68 SOC_CONTROLPATH,
69 SOC_CERTIFICATE,
70 SOC_REQUIRED_RSA_SIZE,
71 SOC_ADDRESSFAMILY,
72 SOC_GSSAPIKEYEXCHANGE,
73 SOC_GSSAPIKEXALGORITHMS,
74
75 SOC_MAX /* Keep this one last in the list */
76};
77enum ssh_config_opcode_e ssh_config_get_opcode(char *keyword);
78int ssh_config_parse_line_cli(ssh_session session, const char *line);
79
80#endif /* LIBSSH_CONFIG_H_ */