[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.6

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.6     ! dugsong    16: /* RCSID("$Id: readconf.h,v 1.5 1999/10/03 21:50:03 provos 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 */
1.6     ! dugsong    59:   int number_of_password_prompts; /* Max number of password prompts. */
1.1       deraadt    60:   int cipher;                  /* Cipher to use. */
                     61:   char *hostname;              /* Real host to connect. */
                     62:   char *proxy_command;         /* Proxy command for connecting the host. */
                     63:   char *user;                  /* User to log in as. */
                     64:   int escape_char;             /* Escape character; -2 = none */
                     65:
                     66:   char *system_hostfile;       /* Path for /etc/ssh_known_hosts. */
                     67:   char *user_hostfile;         /* Path for $HOME/.ssh/known_hosts. */
                     68:
                     69:   int num_identity_files;      /* Number of files for RSA identities. */
                     70:   char *identity_files[SSH_MAX_IDENTITY_FILES];
                     71:
                     72:   /* Local TCP/IP forward requests. */
                     73:   int num_local_forwards;
                     74:   Forward local_forwards[SSH_MAX_FORWARDS_PER_DIRECTION];
                     75:
                     76:   /* Remote TCP/IP forward requests. */
                     77:   int num_remote_forwards;
                     78:   Forward remote_forwards[SSH_MAX_FORWARDS_PER_DIRECTION];
                     79: } Options;
                     80:
                     81:
                     82: /* Initializes options to special values that indicate that they have not
                     83:    yet been set.  Read_config_file will only set options with this value.
                     84:    Options are processed in the following order: command line, user config
                     85:    file, system config file.  Last, fill_default_options is called. */
                     86: void initialize_options(Options *options);
                     87:
                     88: /* Called after processing other sources of option data, this fills those
                     89:    options for which no value has been specified with their default values. */
                     90: void fill_default_options(Options *options);
                     91:
                     92: /* Processes a single option line as used in the configuration files.
                     93:    This only sets those values that have not already been set. */
                     94: void process_config_line(Options *options, const char *host,
                     95:                         char *line, const char *filename, int linenum,
                     96:                         int *activep);
                     97:
                     98: /* Reads the config file and modifies the options accordingly.  Options should
                     99:    already be initialized before this call.  This never returns if there
                    100:    is an error.  If the file does not exist, this returns immediately. */
                    101: void read_config_file(const char *filename, const char *host,
                    102:                      Options *options);
                    103:
                    104: /* Adds a local TCP/IP port forward to options.  Never returns if there
                    105:    is an error. */
                    106: void add_local_forward(Options *options, int port, const char *host,
                    107:                       int host_port);
                    108:
                    109: /* Adds a remote TCP/IP port forward to options.  Never returns if there
                    110:    is an error. */
                    111: void add_remote_forward(Options *options, int port, const char *host,
                    112:                        int host_port);
                    113:
                    114:
                    115: #endif /* READCONF_H */