/* $Id: ssh_v2_messages.h,v 1.4 2001/02/11 03:35:20 tls Exp $ */ /* * Copyright (c) 2000 Eric Haszlakiewicz. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. The name of the author may not be used to endorse or promote products * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef _SSH_V2_MESSAGES_H #define _SSH_V2_MESSAGES_H #define SSH_V2_ALGORITHM_MIN 20 #define SSH_V2_MSG_MAX_TRANSPORT 49 #define SSH_V2_MAX_MAX_USERAUTH 79 #define SSH_V2_MAX_MAX_CONNECT 127 /* * -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- * Transport layer messages * -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */ /* Generic requests */ #define SSH_V2_MSG_DISCONNECT 1 #define SSH_V2_MSG_IGNORE 2 #define SSH_V2_MSG_UNIMPLEMENTED 3 #define SSH_V2_MSG_DEBUG 4 #define SSH_V2_MSG_SERVICE_REQUEST 5 #define SSH_V2_MSG_SERVICE_ACCEPT 6 /* Algorithm negotiation */ #define SSH_V2_MSG_KEXINIT 20 #define SSH_V2_MSG_NEWKEYS 21 /* kex key exchange */ #define SSH_V2_MSG_KEXDH_INIT 30 #define SSH_V2_MSG_KEXDH_REPLY 31 /* diffie hellman exchange */ #define SSH_V2_MSG_KEX_DH_GEX_REQUEST 30 #define SSH_V2_MSG_KEX_DH_GEX_GROUP 31 #define SSH_V2_MSG_KEX_DH_GEX_INIT 32 #define SSH_V2_MSG_KEX_DH_GEX_REPLY 33 /* reasons for disconnect */ #define SSH_V2_DISCONNECT_HOST_NOT_ALLOWED_TO_CONNECT 1 #define SSH_V2_DISCONNECT_PROTOCOL_ERROR 2 #define SSH_V2_DISCONNECT_KEY_EXCHANGE_FAILED 3 #define SSH_V2_DISCONNECT_RESERVED 4 #define SSH_V2_DISCONNECT_MAC_ERROR 5 #define SSH_V2_DISCONNECT_COMPRESSION_ERROR 6 #define SSH_V2_DISCONNECT_SERVICE_NOT_AVAILABLE 7 #define SSH_V2_DISCONNECT_PROTOCOL_VERSION_NOT_SUPPORTED 8 #define SSH_V2_DISCONNECT_HOST_KEY_NOT_VERIFIABLE 9 #define SSH_V2_DISCONNECT_CONNECTION_LOST 10 #define SSH_V2_DISCONNECT_BY_APPLICATION 11 #define SSH_V2_DISCONNECT_TOO_MANY_CONNECTIONS 12 #define SSH_V2_DISCONNECT_AUTH_CANCELLED_BY_USER 13 #define SSH_V2_DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE 14 #define SSH_V2_DISCONNECT_ILLEGAL_USER_NAME 15 /* * -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- * userauth layer messages * -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */ #define SSH_V2_MSG_USERAUTH_REQUEST 50 #define SSH_V2_MSG_USERAUTH_FAILURE 51 #define SSH_V2_MSG_USERAUTH_SUCCESS 52 #define SSH_V2_MSG_USERAUTH_BANNER 53 /* Key-based */ #define SSH_V2_MSG_USERAUTH_PK_OK 60 /* Password based */ #define SSH_V2_MSG_USERAUTH_PASSWD_CHANGEREQ 60 /* * -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- * connect layer messages * -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */ #define SSH_V2_MSG_GLOBAL_REQUEST 80 #define SSH_V2_MSG_REQUEST_SUCCESS 81 #define SSH_V2_MSG_REQUEST_FAILURE 82 #define SSH_V2_MSG_CHANNEL_OPEN 90 #define SSH_V2_MSG_CHANNEL_OPEN_CONFIRMATION 91 #define SSH_V2_MSG_CHANNEL_OPEN_FAILURE 92 #define SSH_V2_MSG_CHANNEL_WINDOW_ADJUST 93 #define SSH_V2_MSG_CHANNEL_DATA 94 #define SSH_V2_MSG_CHANNEL_EXTENDED_DATA 95 #define SSH_V2_MSG_CHANNEL_EOF 96 #define SSH_V2_MSG_CHANNEL_CLOSE 97 #define SSH_V2_MSG_CHANNEL_REQUEST 98 #define SSH_V2_MSG_CHANNEL_SUCCESS 99 #define SSH_V2_MSG_CHANNEL_FAILURE 100 /* Reasons for CHANNEL_OPEN_FAILURE */ #define SSH_V2_OPEN_ADMINISTRATIVELY_PROHIBITED 1 #define SSH_V2_OPEN_CONNECT_FAILED 2 #define SSH_V2_OPEN_UNKNOWN_CHANNEL_TYPE 3 #define SSH_V2_OPEN_RESOURCE_SHORTAGE 4 /* Types of data for CHANNEL_EXTENDED_DATA */ #define SSH_V2_EXTENDED_DATA_STDERR 1 #endif /* _SSH_V2_MESSAGES_H */