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

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:
        !            16: /* RCSID("$Id: readconf.h,v 1.6 1999/05/04 11:59:02 bg Exp $"); */
        !            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. */
        !            36:   int rhosts_authentication;   /* Try rhosts authentication. */
        !            37:   int rhosts_rsa_authentication;/* Try rhosts with RSA authentication. */
        !            38:   int rsa_authentication;      /* Try RSA authentication. */
        !            39: #ifdef KRB4
        !            40:   int kerberos_authentication; /* Try Kerberos authentication. */
        !            41: #endif
        !            42: #ifdef KERBEROS_TGT_PASSING
        !            43:   int kerberos_tgt_passing;    /* Try Kerberos tgt passing. */
        !            44: #endif
        !            45: #ifdef AFS
        !            46:   int afs_token_passing;       /* Try AFS token passing. */
        !            47: #endif
        !            48:   int password_authentication; /* Try password authentication. */
        !            49:   int fallback_to_rsh;         /* Use rsh if cannot connect with ssh. */
        !            50:   int use_rsh;                 /* Always use rsh (don\'t try ssh). */
        !            51:   int batch_mode;              /* Batch mode: do not ask for passwords. */
        !            52:   int strict_host_key_checking;        /* Strict host key checking. */
        !            53: #ifdef WITH_ZLIB
        !            54:   int compression;             /* Compress packets in both directions. */
        !            55:   int compression_level;       /* Compression level 1 (fast) to 9 (best). */
        !            56: #endif /* WITH_ZLIB */
        !            57:   int keepalives;              /* Set SO_KEEPALIVE. */
        !            58:
        !            59:   int port;                    /* Port to connect. */
        !            60:   int connection_attempts;     /* Max attempts (seconds) before giving up */
        !            61:   int cipher;                  /* Cipher to use. */
        !            62:   char *hostname;              /* Real host to connect. */
        !            63:   char *proxy_command;         /* Proxy command for connecting the host. */
        !            64:   char *user;                  /* User to log in as. */
        !            65:   int escape_char;             /* Escape character; -2 = none */
        !            66:
        !            67:   char *system_hostfile;       /* Path for /etc/ssh_known_hosts. */
        !            68:   char *user_hostfile;         /* Path for $HOME/.ssh/known_hosts. */
        !            69:
        !            70:   int num_identity_files;      /* Number of files for RSA identities. */
        !            71:   char *identity_files[SSH_MAX_IDENTITY_FILES];
        !            72:
        !            73:   /* Local TCP/IP forward requests. */
        !            74:   int num_local_forwards;
        !            75:   Forward local_forwards[SSH_MAX_FORWARDS_PER_DIRECTION];
        !            76:
        !            77:   /* Remote TCP/IP forward requests. */
        !            78:   int num_remote_forwards;
        !            79:   Forward remote_forwards[SSH_MAX_FORWARDS_PER_DIRECTION];
        !            80: } Options;
        !            81:
        !            82:
        !            83: /* Initializes options to special values that indicate that they have not
        !            84:    yet been set.  Read_config_file will only set options with this value.
        !            85:    Options are processed in the following order: command line, user config
        !            86:    file, system config file.  Last, fill_default_options is called. */
        !            87: void initialize_options(Options *options);
        !            88:
        !            89: /* Called after processing other sources of option data, this fills those
        !            90:    options for which no value has been specified with their default values. */
        !            91: void fill_default_options(Options *options);
        !            92:
        !            93: /* Processes a single option line as used in the configuration files.
        !            94:    This only sets those values that have not already been set. */
        !            95: void process_config_line(Options *options, const char *host,
        !            96:                         char *line, const char *filename, int linenum,
        !            97:                         int *activep);
        !            98:
        !            99: /* Reads the config file and modifies the options accordingly.  Options should
        !           100:    already be initialized before this call.  This never returns if there
        !           101:    is an error.  If the file does not exist, this returns immediately. */
        !           102: void read_config_file(const char *filename, const char *host,
        !           103:                      Options *options);
        !           104:
        !           105: /* Adds a local TCP/IP port forward to options.  Never returns if there
        !           106:    is an error. */
        !           107: void add_local_forward(Options *options, int port, const char *host,
        !           108:                       int host_port);
        !           109:
        !           110: /* Adds a remote TCP/IP port forward to options.  Never returns if there
        !           111:    is an error. */
        !           112: void add_remote_forward(Options *options, int port, const char *host,
        !           113:                        int host_port);
        !           114:
        !           115:
        !           116: #endif /* READCONF_H */