diff options
author | Damien Miller <djm@mindrot.org> | 1999-10-27 05:42:43 +0200 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 1999-10-27 05:42:43 +0200 |
commit | d4a8b7e34dd619a4debf9a206c81db26d1402ea6 (patch) | |
tree | a47d770a2f790f40d18b0982d4e55fa7cfb1fa3b /channels.h | |
download | openssh-d4a8b7e34dd619a4debf9a206c81db26d1402ea6.tar.xz openssh-d4a8b7e34dd619a4debf9a206c81db26d1402ea6.zip |
Initial revision
Diffstat (limited to 'channels.h')
-rw-r--r-- | channels.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/channels.h b/channels.h new file mode 100644 index 000000000..9794ef50d --- /dev/null +++ b/channels.h @@ -0,0 +1,41 @@ +/* RCSID("$Id: channels.h,v 1.1 1999/10/27 03:42:44 damien Exp $"); */ + +#ifndef CHANNELS_H +#define CHANNELS_H + +/* Definitions for channel types. */ +#define SSH_CHANNEL_FREE 0 /* This channel is free (unused). */ +#define SSH_CHANNEL_X11_LISTENER 1 /* Listening for inet X11 conn. */ +#define SSH_CHANNEL_PORT_LISTENER 2 /* Listening on a port. */ +#define SSH_CHANNEL_OPENING 3 /* waiting for confirmation */ +#define SSH_CHANNEL_OPEN 4 /* normal open two-way channel */ +#define SSH_CHANNEL_CLOSED 5 /* waiting for close confirmation */ +/* SSH_CHANNEL_AUTH_FD 6 authentication fd */ +#define SSH_CHANNEL_AUTH_SOCKET 7 /* authentication socket */ +/* SSH_CHANNEL_AUTH_SOCKET_FD 8 connection to auth socket */ +#define SSH_CHANNEL_X11_OPEN 9 /* reading first X11 packet */ +#define SSH_CHANNEL_INPUT_DRAINING 10 /* sending remaining data to conn */ +#define SSH_CHANNEL_OUTPUT_DRAINING 11 /* sending remaining data to app */ + +/* Data structure for channel data. This is iniailized in channel_allocate + and cleared in channel_free. */ + +typedef struct Channel +{ + int type; /* channel type/state */ + int self; /* my own channel identifier */ + int remote_id; /* channel identifier for remote peer */ + /* peer can be reached over encrypted connection, via packet-sent */ + int istate; + int ostate; + int x11; + int sock; /* data socket, linked to this channel */ + Buffer input; /* data read from socket, to be sent over encrypted connection */ + Buffer output; /* data received over encrypted connection for send on socket */ + char path[200]; /* path for unix domain sockets, or host name for forwards */ + int listening_port; /* port being listened for forwards */ + int host_port; /* remote port to connect for forwards */ + char *remote_name; /* remote hostname */ +} Channel; + +#endif |