[BACK]Return to readconf.h CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Annotation of src/usr.bin/ssh/readconf.h, Revision 1.5

1.1       deraadt     1: /*
                      2:
                      3: readconf.h
                      4:
                      5: Author: Tatu Ylonen <ylo@cs.hut.fi>
                      6:
                      7: Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
                      8:                    All rights reserved
                      9:
                     10: Created: Sat Apr 22 00:25:29 1995 ylo
                     11:
                     12: Functions for reading the configuration file.
                     13:
                     14: */
                     15:
1.5     ! provos     16: /* RCSID("$Id: readconf.h,v 1.4 1999/09/30 05:03:05 deraadt Exp $"); */
1.1       deraadt    17:
                     18: #ifndef READCONF_H
                     19: #define READCONF_H
                     20:
                     21: /* Data structure for representing a forwarding request. */
                     22:
                     23: typedef struct
                     24: {
                     25:   int port;            /* Port to forward. */
                     26:   char *host;          /* Host to connect. */
                     27:   int host_port;       /* Port to connect on host. */
                     28: } Forward;
                     29:
                     30: /* Data structure for representing option data. */
                     31:
                     32: typedef struct
                     33: {
                     34:   int forward_agent;           /* Forward authentication agent. */
                     35:   int forward_x11;             /* Forward X11 display. */
1.2       deraadt    36:   int gateway_ports;           /* Allow remote connects to forwarded ports. */
1.1       deraadt    37:   int rhosts_authentication;   /* Try rhosts authentication. */
                     38:   int rhosts_rsa_authentication;/* Try rhosts with RSA authentication. */
                     39:   int rsa_authentication;      /* Try RSA authentication. */
                     40: #ifdef KRB4
                     41:   int kerberos_authentication; /* Try Kerberos authentication. */
                     42: #endif
1.3       dugsong    43: #ifdef AFS
1.1       deraadt    44:   int kerberos_tgt_passing;    /* Try Kerberos tgt passing. */
                     45:   int afs_token_passing;       /* Try AFS token passing. */
                     46: #endif
                     47:   int password_authentication; /* Try password authentication. */
                     48:   int fallback_to_rsh;         /* Use rsh if cannot connect with ssh. */
                     49:   int use_rsh;                 /* Always use rsh (don\'t try ssh). */
                     50:   int batch_mode;              /* Batch mode: do not ask for passwords. */
1.5     ! provos     51:   int check_host_ip;           /* Also keep track of keys for IP address */
1.1       deraadt    52:   int strict_host_key_checking;        /* Strict host key checking. */
                     53:   int compression;             /* Compress packets in both directions. */
                     54:   int compression_level;       /* Compression level 1 (fast) to 9 (best). */
                     55:   int keepalives;              /* Set SO_KEEPALIVE. */
                     56:
                     57:   int port;                    /* Port to connect. */
                     58:   int connection_attempts;     /* Max attempts (seconds) before giving up */
                     59:   int cipher;                  /* Cipher to use. */
                     60:   char *hostname;              /* Real host to connect. */
                     61:   char *proxy_command;         /* Proxy command for connecting the host. */
                     62:   char *user;                  /* User to log in as. */
                     63:   int escape_char;             /* Escape character; -2 = none */
                     64:
                     65:   char *system_hostfile;       /* Path for /etc/ssh_known_hosts. */
                     66:   char *user_hostfile;         /* Path for $HOME/.ssh/known_hosts. */
                     67:
                     68:   int num_identity_files;      /* Number of files for RSA identities. */
                     69:   char *identity_files[SSH_MAX_IDENTITY_FILES];
                     70:
                     71:   /* Local TCP/IP forward requests. */
                     72:   int num_local_forwards;
                     73:   Forward local_forwards[SSH_MAX_FORWARDS_PER_DIRECTION];
                     74:
                     75:   /* Remote TCP/IP forward requests. */
                     76:   int num_remote_forwards;
                     77:   Forward remote_forwards[SSH_MAX_FORWARDS_PER_DIRECTION];
                     78: } Options;
                     79:
                     80:
                     81: /* Initializes options to special values that indicate that they have not
                     82:    yet been set.  Read_config_file will only set options with this value.
                     83:    Options are processed in the following order: command line, user config
                     84:    file, system config file.  Last, fill_default_options is called. */
                     85: void initialize_options(Options *options);
                     86:
                     87: /* Called after processing other sources of option data, this fills those
                     88:    options for which no value has been specified with their default values. */
                     89: void fill_default_options(Options *options);
                     90:
                     91: /* Processes a single option line as used in the configuration files.
                     92:    This only sets those values that have not already been set. */
                     93: void process_config_line(Options *options, const char *host,
                     94:                         char *line, const char *filename, int linenum,
                     95:                         int *activep);
                     96:
                     97: /* Reads the config file and modifies the options accordingly.  Options should
                     98:    already be initialized before this call.  This never returns if there
                     99:    is an error.  If the file does not exist, this returns immediately. */
                    100: void read_config_file(const char *filename, const char *host,
                    101:                      Options *options);
                    102:
                    103: /* Adds a local TCP/IP port forward to options.  Never returns if there
                    104:    is an error. */
                    105: void add_local_forward(Options *options, int port, const char *host,
                    106:                       int host_port);
                    107:
                    108: /* Adds a remote TCP/IP port forward to options.  Never returns if there
                    109:    is an error. */
                    110: void add_remote_forward(Options *options, int port, const char *host,
                    111:                        int host_port);
                    112:
                    113:
                    114: #endif /* READCONF_H */