1 | /* $OpenBSD: ssh1.h,v 1.3 2001/05/30 12:55:13 markus 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 | /* |
---|
16 | * Definition of message types. New values can be added, but old values |
---|
17 | * should not be removed or without careful consideration of the consequences |
---|
18 | * for compatibility. The maximum value is 254; value 255 is reserved for |
---|
19 | * future extension. |
---|
20 | */ |
---|
21 | /* Message name */ /* msg code */ /* arguments */ |
---|
22 | #define SSH_MSG_NONE 0 /* no message */ |
---|
23 | #define SSH_MSG_DISCONNECT 1 /* cause (string) */ |
---|
24 | #define SSH_SMSG_PUBLIC_KEY 2 /* ck,msk,srvk,hostk */ |
---|
25 | #define SSH_CMSG_SESSION_KEY 3 /* key (BIGNUM) */ |
---|
26 | #define SSH_CMSG_USER 4 /* user (string) */ |
---|
27 | #define SSH_CMSG_AUTH_RHOSTS 5 /* user (string) */ |
---|
28 | #define SSH_CMSG_AUTH_RSA 6 /* modulus (BIGNUM) */ |
---|
29 | #define SSH_SMSG_AUTH_RSA_CHALLENGE 7 /* int (BIGNUM) */ |
---|
30 | #define SSH_CMSG_AUTH_RSA_RESPONSE 8 /* int (BIGNUM) */ |
---|
31 | #define SSH_CMSG_AUTH_PASSWORD 9 /* pass (string) */ |
---|
32 | #define SSH_CMSG_REQUEST_PTY 10 /* TERM, tty modes */ |
---|
33 | #define SSH_CMSG_WINDOW_SIZE 11 /* row,col,xpix,ypix */ |
---|
34 | #define SSH_CMSG_EXEC_SHELL 12 /* */ |
---|
35 | #define SSH_CMSG_EXEC_CMD 13 /* cmd (string) */ |
---|
36 | #define SSH_SMSG_SUCCESS 14 /* */ |
---|
37 | #define SSH_SMSG_FAILURE 15 /* */ |
---|
38 | #define SSH_CMSG_STDIN_DATA 16 /* data (string) */ |
---|
39 | #define SSH_SMSG_STDOUT_DATA 17 /* data (string) */ |
---|
40 | #define SSH_SMSG_STDERR_DATA 18 /* data (string) */ |
---|
41 | #define SSH_CMSG_EOF 19 /* */ |
---|
42 | #define SSH_SMSG_EXITSTATUS 20 /* status (int) */ |
---|
43 | #define SSH_MSG_CHANNEL_OPEN_CONFIRMATION 21 /* channel (int) */ |
---|
44 | #define SSH_MSG_CHANNEL_OPEN_FAILURE 22 /* channel (int) */ |
---|
45 | #define SSH_MSG_CHANNEL_DATA 23 /* ch,data (int,str) */ |
---|
46 | #define SSH_MSG_CHANNEL_CLOSE 24 /* channel (int) */ |
---|
47 | #define SSH_MSG_CHANNEL_CLOSE_CONFIRMATION 25 /* channel (int) */ |
---|
48 | /* SSH_CMSG_X11_REQUEST_FORWARDING 26 OBSOLETE */ |
---|
49 | #define SSH_SMSG_X11_OPEN 27 /* channel (int) */ |
---|
50 | #define SSH_CMSG_PORT_FORWARD_REQUEST 28 /* p,host,hp (i,s,i) */ |
---|
51 | #define SSH_MSG_PORT_OPEN 29 /* ch,h,p (i,s,i) */ |
---|
52 | #define SSH_CMSG_AGENT_REQUEST_FORWARDING 30 /* */ |
---|
53 | #define SSH_SMSG_AGENT_OPEN 31 /* port (int) */ |
---|
54 | #define SSH_MSG_IGNORE 32 /* string */ |
---|
55 | #define SSH_CMSG_EXIT_CONFIRMATION 33 /* */ |
---|
56 | #define SSH_CMSG_X11_REQUEST_FORWARDING 34 /* proto,data (s,s) */ |
---|
57 | #define SSH_CMSG_AUTH_RHOSTS_RSA 35 /* user,mod (s,mpi) */ |
---|
58 | #define SSH_MSG_DEBUG 36 /* string */ |
---|
59 | #define SSH_CMSG_REQUEST_COMPRESSION 37 /* level 1-9 (int) */ |
---|
60 | #define SSH_CMSG_MAX_PACKET_SIZE 38 /* size 4k-1024k (int) */ |
---|
61 | #define SSH_CMSG_AUTH_TIS 39 /* we use this for s/key */ |
---|
62 | #define SSH_SMSG_AUTH_TIS_CHALLENGE 40 /* challenge (string) */ |
---|
63 | #define SSH_CMSG_AUTH_TIS_RESPONSE 41 /* response (string) */ |
---|
64 | #define SSH_CMSG_AUTH_KERBEROS 42 /* (KTEXT) */ |
---|
65 | #define SSH_SMSG_AUTH_KERBEROS_RESPONSE 43 /* (KTEXT) */ |
---|
66 | #define SSH_CMSG_HAVE_KERBEROS_TGT 44 /* credentials (s) */ |
---|
67 | #define SSH_CMSG_HAVE_AFS_TOKEN 65 /* token (s) */ |
---|
68 | |
---|
69 | /* protocol version 1.5 overloads some version 1.3 message types */ |
---|
70 | #define SSH_MSG_CHANNEL_INPUT_EOF SSH_MSG_CHANNEL_CLOSE |
---|
71 | #define SSH_MSG_CHANNEL_OUTPUT_CLOSE SSH_MSG_CHANNEL_CLOSE_CONFIRMATION |
---|
72 | |
---|
73 | /* |
---|
74 | * Authentication methods. New types can be added, but old types should not |
---|
75 | * be removed for compatibility. The maximum allowed value is 31. |
---|
76 | */ |
---|
77 | #define SSH_AUTH_RHOSTS 1 |
---|
78 | #define SSH_AUTH_RSA 2 |
---|
79 | #define SSH_AUTH_PASSWORD 3 |
---|
80 | #define SSH_AUTH_RHOSTS_RSA 4 |
---|
81 | #define SSH_AUTH_TIS 5 |
---|
82 | #define SSH_AUTH_KERBEROS 6 |
---|
83 | #define SSH_PASS_KERBEROS_TGT 7 |
---|
84 | /* 8 to 15 are reserved */ |
---|
85 | #define SSH_PASS_AFS_TOKEN 21 |
---|
86 | |
---|
87 | /* Protocol flags. These are bit masks. */ |
---|
88 | #define SSH_PROTOFLAG_SCREEN_NUMBER 1 /* X11 forwarding includes screen */ |
---|
89 | #define SSH_PROTOFLAG_HOST_IN_FWD_OPEN 2 /* forwarding opens contain host */ |
---|