ssh2.h revision 65668
160573Skris/* 265668Skris * Copyright (c) 2000 Markus Friedl. All rights reserved. 365668Skris * 465668Skris * Redistribution and use in source and binary forms, with or without 565668Skris * modification, are permitted provided that the following conditions 665668Skris * are met: 765668Skris * 1. Redistributions of source code must retain the above copyright 865668Skris * notice, this list of conditions and the following disclaimer. 965668Skris * 2. Redistributions in binary form must reproduce the above copyright 1065668Skris * notice, this list of conditions and the following disclaimer in the 1165668Skris * documentation and/or other materials provided with the distribution. 1265668Skris * 1365668Skris * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 1465668Skris * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 1565668Skris * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 1665668Skris * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 1765668Skris * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 1865668Skris * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 1965668Skris * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 2065668Skris * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 2165668Skris * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 2265668Skris * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 2365668Skris */ 2465668Skris 2565668Skris/* 2661209Skris * draft-ietf-secsh-architecture-05.txt 2760573Skris * 2860573Skris * Transport layer protocol: 2960573Skris * 3060573Skris * 1-19 Transport layer generic (e.g. disconnect, ignore, debug, 3160573Skris * etc) 3260573Skris * 20-29 Algorithm negotiation 3360573Skris * 30-49 Key exchange method specific (numbers can be reused for 3460573Skris * different authentication methods) 3560573Skris * 3660573Skris * User authentication protocol: 3760573Skris * 3860573Skris * 50-59 User authentication generic 3960573Skris * 60-79 User authentication method specific (numbers can be reused 4060573Skris * for different authentication methods) 4160573Skris * 4260573Skris * Connection protocol: 4360573Skris * 4460573Skris * 80-89 Connection protocol generic 4560573Skris * 90-127 Channel related messages 4660573Skris * 4760573Skris * Reserved for client protocols: 4860573Skris * 4960573Skris * 128-191 Reserved 5060573Skris * 5160573Skris * Local extensions: 5260573Skris * 5360573Skris * 192-255 Local extensions 5460573Skris */ 5565668Skris/* RCSID("$OpenBSD: ssh2.h,v 1.4 2000/09/07 20:27:54 deraadt Exp $"); */ 5660573Skris 5760573Skris/* transport layer: generic */ 5860573Skris 5960573Skris#define SSH2_MSG_DISCONNECT 1 6060573Skris#define SSH2_MSG_IGNORE 2 6160573Skris#define SSH2_MSG_UNIMPLEMENTED 3 6260573Skris#define SSH2_MSG_DEBUG 4 6360573Skris#define SSH2_MSG_SERVICE_REQUEST 5 6460573Skris#define SSH2_MSG_SERVICE_ACCEPT 6 6560573Skris 6660573Skris/* transport layer: alg negotiation */ 6760573Skris 6860573Skris#define SSH2_MSG_KEXINIT 20 6960573Skris#define SSH2_MSG_NEWKEYS 21 7060573Skris 7160573Skris/* transport layer: kex specific messages, can be reused */ 7260573Skris 7360573Skris#define SSH2_MSG_KEXDH_INIT 30 7460573Skris#define SSH2_MSG_KEXDH_REPLY 31 7560573Skris 7660573Skris/* user authentication: generic */ 7760573Skris 7860573Skris#define SSH2_MSG_USERAUTH_REQUEST 50 7960573Skris#define SSH2_MSG_USERAUTH_FAILURE 51 8060573Skris#define SSH2_MSG_USERAUTH_SUCCESS 52 8160573Skris#define SSH2_MSG_USERAUTH_BANNER 53 8260573Skris 8360573Skris/* user authentication: method specific, can be reused */ 8460573Skris 8560573Skris#define SSH2_MSG_USERAUTH_PK_OK 60 8660573Skris#define SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ 60 8760573Skris#define SSH2_MSG_USERAUTH_INFO_REQUEST 60 8860573Skris#define SSH2_MSG_USERAUTH_INFO_RESPONSE 61 8960573Skris 9060573Skris/* connection protocol: generic */ 9160573Skris 9260573Skris#define SSH2_MSG_GLOBAL_REQUEST 80 9360573Skris#define SSH2_MSG_REQUEST_SUCCESS 81 9460573Skris#define SSH2_MSG_REQUEST_FAILURE 82 9560573Skris 9660573Skris/* channel related messages */ 9760573Skris 9860573Skris#define SSH2_MSG_CHANNEL_OPEN 90 9960573Skris#define SSH2_MSG_CHANNEL_OPEN_CONFIRMATION 91 10060573Skris#define SSH2_MSG_CHANNEL_OPEN_FAILURE 92 10160573Skris#define SSH2_MSG_CHANNEL_WINDOW_ADJUST 93 10260573Skris#define SSH2_MSG_CHANNEL_DATA 94 10360573Skris#define SSH2_MSG_CHANNEL_EXTENDED_DATA 95 10460573Skris#define SSH2_MSG_CHANNEL_EOF 96 10560573Skris#define SSH2_MSG_CHANNEL_CLOSE 97 10660573Skris#define SSH2_MSG_CHANNEL_REQUEST 98 10760573Skris#define SSH2_MSG_CHANNEL_SUCCESS 99 10860573Skris#define SSH2_MSG_CHANNEL_FAILURE 100 10960573Skris 11060573Skris/* disconnect reason code */ 11160573Skris 11260573Skris#define SSH2_DISCONNECT_HOST_NOT_ALLOWED_TO_CONNECT 1 11360573Skris#define SSH2_DISCONNECT_PROTOCOL_ERROR 2 11460573Skris#define SSH2_DISCONNECT_KEY_EXCHANGE_FAILED 3 11560573Skris#define SSH2_DISCONNECT_HOST_AUTHENTICATION_FAILED 4 11661209Skris#define SSH2_DISCONNECT_RESERVED 4 11760573Skris#define SSH2_DISCONNECT_MAC_ERROR 5 11860573Skris#define SSH2_DISCONNECT_COMPRESSION_ERROR 6 11960573Skris#define SSH2_DISCONNECT_SERVICE_NOT_AVAILABLE 7 12060573Skris#define SSH2_DISCONNECT_PROTOCOL_VERSION_NOT_SUPPORTED 8 12160573Skris#define SSH2_DISCONNECT_HOST_KEY_NOT_VERIFIABLE 9 12260573Skris#define SSH2_DISCONNECT_CONNECTION_LOST 10 12360573Skris#define SSH2_DISCONNECT_BY_APPLICATION 11 12461209Skris#define SSH2_DISCONNECT_TOO_MANY_CONNECTIONS 12 12561209Skris#define SSH2_DISCONNECT_AUTH_CANCELLED_BY_USER 13 12661209Skris#define SSH2_DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE 14 12761209Skris#define SSH2_DISCONNECT_ILLEGAL_USER_NAME 15 12860573Skris 12960573Skris/* misc */ 13060573Skris 13160573Skris#define SSH2_OPEN_ADMINISTRATIVELY_PROHIBITED 1 13260573Skris#define SSH2_OPEN_CONNECT_FAILED 2 13360573Skris#define SSH2_OPEN_UNKNOWN_CHANNEL_TYPE 3 13460573Skris#define SSH2_OPEN_RESOURCE_SHORTAGE 4 13560573Skris 13660573Skris#define SSH2_EXTENDED_DATA_STDERR 1 137