]> andersk Git - openssh.git/blobdiff - ssh.h
- (djm) Fix AIX limits from Alexandre Oliva <oliva@lsd.ic.unicamp.br>
[openssh.git] / ssh.h
diff --git a/ssh.h b/ssh.h
index 47299b6239553de4f622fc741e1bee988d79ff0a..f3f049fccfaeaf2606a1e8a8cd1410ac52e5b109 100644 (file)
--- a/ssh.h
+++ b/ssh.h
@@ -1,19 +1,19 @@
 /*
- * 
+ *
  * ssh.h
- * 
+ *
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
- * 
+ *
  * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
  *                    All rights reserved
- * 
+ *
  * Created: Fri Mar 17 17:09:37 1995 ylo
- * 
+ *
  * Generic header file for ssh.
- * 
+ *
  */
 
-/* RCSID("$Id$"); */
+/* RCSID("$OpenBSD: ssh.h,v 1.48 2000/07/13 22:53:21 provos Exp $"); */
 
 #ifndef SSH_H
 #define SSH_H
@@ -30,6 +30,7 @@
 #include "cipher.h"
 
 /*
+ * XXX
  * The default cipher used if IDEA is not supported by the remote host. It is
  * recommended that this be one of the mandatory ciphers (DES, 3DES), though
  * that is not required.
  */
 #define SSH_SERVICE_NAME       "ssh"
 
+#if defined(USE_PAM) && !defined(SSHD_PAM_SERVICE)
+# define SSHD_PAM_SERVICE       "sshd"
+#endif
+
 #ifndef ETCDIR
 #define ETCDIR                 "/etc"
 #endif /* ETCDIR */
@@ -84,6 +89,7 @@
  * world-readable.
  */
 #define SSH_SYSTEM_HOSTFILE    ETCDIR "/ssh_known_hosts"
+#define SSH_SYSTEM_HOSTFILE2   ETCDIR "/ssh_known_hosts2"
 
 /*
  * Of these, ssh_host_key must be readable only by root, whereas ssh_config
@@ -92,7 +98,7 @@
 #define HOST_KEY_FILE          ETCDIR "/ssh_host_key"
 #define SERVER_CONFIG_FILE     ETCDIR "/sshd_config"
 #define HOST_CONFIG_FILE       ETCDIR "/ssh_config"
-#define DSA_KEY_FILE           ETCDIR "/ssh_dsa_key"
+#define HOST_DSA_KEY_FILE      ETCDIR "/ssh_host_dsa_key"
 
 #ifndef SSH_PROGRAM
 #define SSH_PROGRAM                    "/usr/bin/ssh"
  */
 #define SSH_USER_DIR           ".ssh"
 
+/*
+ * Relevant only when using builtin PRNG.
+ */
+#ifndef SSH_PRNG_SEED_FILE
+# define SSH_PRNG_SEED_FILE      SSH_USER_DIR"/prng_seed"
+#endif /* SSH_PRNG_SEED_FILE */
+#ifndef SSH_PRNG_COMMAND_FILE
+# define SSH_PRNG_COMMAND_FILE   ETCDIR "/ssh_prng_cmds"
+#endif /* SSH_PRNG_COMMAND_FILE */
+
 /*
  * Per-user file containing host keys of known hosts.  This file need not be
  * readable by anyone except the user him/herself, though this does not
  * contain anything particularly secret.
  */
 #define SSH_USER_HOSTFILE      "~/.ssh/known_hosts"
+#define SSH_USER_HOSTFILE2     "~/.ssh/known_hosts2"
 
 /*
  * Name of the default file containing client-side authentication key. This
  * file should only be readable by the user him/herself.
  */
 #define SSH_CLIENT_IDENTITY    ".ssh/identity"
+#define SSH_CLIENT_ID_DSA      ".ssh/id_dsa"
 
 /*
  * Configuration file in user\'s home directory.  This file need not be
  * running as root.)
  */
 #define SSH_USER_PERMITTED_KEYS        ".ssh/authorized_keys"
+#define SSH_USER_PERMITTED_KEYS2       ".ssh/authorized_keys2"
 
 /*
  * Per-user and system-wide ssh "rc" files.  These files are executed with
  * information is not available.  This must be called before record_login.
  * The host from which the user logged in is stored in buf.
  */
-unsigned long 
+unsigned long
 get_last_login_time(uid_t uid, const char *logname,
     char *buf, unsigned int bufsize);
 
@@ -287,15 +306,15 @@ get_last_login_time(uid_t uid, const char *logname,
  * Records that the user has logged in.  This does many things normally done
  * by login(1).
  */
-void 
-record_login(int pid, const char *ttyname, const char *user, uid_t uid,
+void
+record_login(pid_t pid, const char *ttyname, const char *user, uid_t uid,
     const char *host, struct sockaddr *addr);
 
 /*
  * Records that the user has logged out.  This does many thigs normally done
  * by login(1) or init.
  */
-void    record_logout(int pid, const char *ttyname);
+void    record_logout(pid_t pid, const char *ttyname);
 
 /*------------ definitions for sshconnect.c ----------*/
 
@@ -308,7 +327,7 @@ void    record_logout(int pid, const char *ttyname);
  * and zero on failure.  If the connection is successful, this calls
  * packet_set_connection for the connection.
  */
-int 
+int
 ssh_connect(const char *host, struct sockaddr_storage * hostaddr,
     u_short port, int connection_attempts,
     int anonymous, uid_t original_real_uid,
@@ -323,7 +342,7 @@ ssh_connect(const char *host, struct sockaddr_storage * hostaddr,
  * references from the packet module).
  */
 
-void 
+void
 ssh_login(int host_key_valid, RSA * host_key, const char *host,
     struct sockaddr * hostaddr, uid_t original_real_uid);
 
@@ -340,7 +359,7 @@ int     auth_rhosts(struct passwd * pw, const char *client_user);
  * Tries to authenticate the user using the .rhosts file and the host using
  * its host key.  Returns true if authentication succeeds.
  */
-int 
+int
 auth_rhosts_rsa(struct passwd * pw, const char *client_user, RSA* client_host_key);
 
 /*
@@ -403,36 +422,6 @@ int     auth_rsa_challenge_dialog(RSA *pk);
  */
 char   *read_passphrase(const char *prompt, int from_stdin);
 
-/*
- * Saves the authentication (private) key in a file, encrypting it with
- * passphrase.  The identification of the file (lowest 64 bits of n) will
- * precede the key to provide identification of the key without needing a
- * passphrase.
- */
-int 
-save_private_key(const char *filename, const char *passphrase,
-    RSA * private_key, const char *comment);
-
-/*
- * Loads the public part of the key file (public key and comment). Returns 0
- * if an error occurred; zero if the public key was successfully read.  The
- * comment of the key is returned in comment_return if it is non-NULL; the
- * caller must free the value with xfree.
- */
-int 
-load_public_key(const char *filename, RSA * pub,
-    char **comment_return);
-
-/*
- * Loads the private key from the file.  Returns 0 if an error is encountered
- * (file does not exist or is not readable, or passphrase is bad). This
- * initializes the private key.  The comment of the key is returned in
- * comment_return if it is non-NULL; the caller must free the value with
- * xfree.
- */
-int 
-load_private_key(const char *filename, const char *passphrase,
-    RSA * private_key, char **comment_return);
 
 /*------------ Definitions for logging. -----------------------*/
 
@@ -497,6 +486,15 @@ void    fatal_remove_cleanup(void (*proc) (void *context), void *context);
  */
 char   *tilde_expand_filename(const char *filename, uid_t my_uid);
 
+/* remove newline at end of string */
+char   *chop(char *s);
+
+/* return next token in configuration line */
+char   *strdelim(char **s);
+
+/* set filedescriptor to non-blocking */
+void   set_nonblock(int fd);
+
 /*
  * Performs the interactive session.  This handles data transmission between
  * the client and the program.  Note that the notion of stdin, stdout, and
@@ -504,7 +502,7 @@ char   *tilde_expand_filename(const char *filename, uid_t my_uid);
  * (of the child program), and reads from stdout and stderr (of the child
  * program).
  */
-void    server_loop(int pid, int fdin, int fdout, int fderr);
+void    server_loop(pid_t pid, int fdin, int fdout, int fderr);
 void    server_loop2(void);
 
 /* Client side main loop for the interactive session. */
@@ -540,7 +538,7 @@ int auth_krb4_password(struct passwd * pw, const char *password);
 int     auth_kerberos_tgt(struct passwd * pw, const char *string);
 int     auth_afs_token(struct passwd * pw, const char *token_string);
 
-int     creds_to_radix(CREDENTIALS * creds, unsigned char *buf);
+int     creds_to_radix(CREDENTIALS * creds, unsigned char *buf, size_t buflen);
 int     radix_to_creds(const char *buf, CREDENTIALS * creds);
 #endif                         /* AFS */
 
This page took 0.040808 seconds and 4 git commands to generate.