xref: /openbsd/usr.bin/ssh/ssh.h (revision e5757882)
1 /* $OpenBSD: ssh.h,v 1.91 2024/09/25 23:01:39 jsg Exp $ */
2 
3 /*
4  * Author: Tatu Ylonen <ylo@cs.hut.fi>
5  * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
6  *                    All rights reserved
7  *
8  * As far as I am concerned, the code I have written for this software
9  * can be used freely for any purpose.  Any derived versions of this
10  * software must be clearly marked as such, and if the derived work is
11  * incompatible with the protocol description in the RFC file, it must be
12  * called by a name other than "ssh" or "Secure Shell".
13  */
14 
15 /* Default port number. */
16 #define SSH_DEFAULT_PORT	22
17 
18 /*
19  * Maximum number of certificate files that can be specified
20  * in configuration files or on the command line.
21  */
22 #define SSH_MAX_CERTIFICATE_FILES	100
23 
24 /*
25  * Maximum number of RSA authentication identity files that can be specified
26  * in configuration files or on the command line.
27  */
28 #define SSH_MAX_IDENTITY_FILES		100
29 
30 /*
31  * Major protocol version.  Different version indicates major incompatibility
32  * that prevents communication.
33  *
34  * Minor protocol version.  Different version indicates minor incompatibility
35  * that does not prevent interoperation.
36  *
37  * We support only SSH2
38  */
39 #define PROTOCOL_MAJOR_2	2
40 #define PROTOCOL_MINOR_2	0
41 
42 /*
43  * Name for the service.  The port named by this service overrides the
44  * default port if present.
45  */
46 #define SSH_SERVICE_NAME	"ssh"
47 
48 /*
49  * Name of the environment variable containing the process ID of the
50  * authentication agent.
51  */
52 #define SSH_AGENTPID_ENV_NAME	"SSH_AGENT_PID"
53 
54 /*
55  * Name of the environment variable containing the pathname of the
56  * authentication socket.
57  */
58 #define SSH_AUTHSOCKET_ENV_NAME "SSH_AUTH_SOCK"
59 
60 /*
61  * Environment variable for overwriting the default location of askpass
62  */
63 #define SSH_ASKPASS_ENV		"SSH_ASKPASS"
64 
65 /*
66  * Environment variable to control whether or not askpass is used.
67  */
68 #define SSH_ASKPASS_REQUIRE_ENV		"SSH_ASKPASS_REQUIRE"
69 
70 /*
71  * Length of the session key in bytes.  (Specified as 256 bits in the
72  * protocol.)
73  */
74 #define SSH_SESSION_KEY_LENGTH		32
75 
76 /* Used to identify ``EscapeChar none'' */
77 #define SSH_ESCAPECHAR_NONE		-2
78 
79 /*
80  * unprivileged user when UsePrivilegeSeparation=yes;
81  * sshd will change its privileges to this user and its
82  * primary group.
83  */
84 #define SSH_PRIVSEP_USER		"sshd"
85 
86 /* Listen backlog for sshd, ssh-agent and forwarding sockets */
87 #define SSH_LISTEN_BACKLOG		128
88 
89 /* Limits for banner exchange */
90 #define SSH_MAX_BANNER_LEN		8192
91 #define SSH_MAX_PRE_BANNER_LINES	1024
92