[BACK]Return to channels.h CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Annotation of src/usr.bin/ssh/channels.h, Revision 1.3

1.3     ! markus      1: /* RCSID("$Id: channels.h,v 1.2 1999/10/16 22:29:00 markus Exp $"); */
1.2       markus      2:
1.1       markus      3: #ifndef CHANNELS_H
                      4: #define CHANNELS_H
                      5:
                      6: /* Definitions for channel types. */
                      7: #define SSH_CHANNEL_FREE               0 /* This channel is free (unused). */
                      8: #define SSH_CHANNEL_X11_LISTENER       1 /* Listening for inet X11 conn. */
                      9: #define SSH_CHANNEL_PORT_LISTENER      2 /* Listening on a port. */
                     10: #define SSH_CHANNEL_OPENING            3 /* waiting for confirmation */
                     11: #define SSH_CHANNEL_OPEN               4 /* normal open two-way channel */
                     12: #define SSH_CHANNEL_CLOSED             5 /* waiting for close confirmation */
                     13: /*     SSH_CHANNEL_AUTH_FD             6    authentication fd */
                     14: #define SSH_CHANNEL_AUTH_SOCKET                7 /* authentication socket */
                     15: /*     SSH_CHANNEL_AUTH_SOCKET_FD      8    connection to auth socket */
                     16: #define SSH_CHANNEL_X11_OPEN           9 /* reading first X11 packet */
                     17: #define SSH_CHANNEL_INPUT_DRAINING     10 /* sending remaining data to conn */
                     18: #define SSH_CHANNEL_OUTPUT_DRAINING    11 /* sending remaining data to app */
                     19:
                     20: /* Data structure for channel data.  This is iniailized in channel_allocate
                     21:    and cleared in channel_free. */
                     22:
1.3     ! markus     23: typedef struct Channel
1.1       markus     24: {
                     25:   int type;            /* channel type/state */
                     26:   int self;            /* my own channel identifier */
                     27:   int remote_id;       /* channel identifier for remote peer */
                     28:                        /* peer can be reached over encrypted connection, via packet-sent */
1.3     ! markus     29:   int istate;
        !            30:   int ostate;
        !            31:   int x11;
1.1       markus     32:   int sock;            /* data socket, linked to this channel */
                     33:   Buffer input;                /* data read from socket, to be sent over encrypted connection */
                     34:   Buffer output;       /* data received over encrypted connection for send on socket */
                     35:   char path[200];      /* path for unix domain sockets, or host name for forwards */
                     36:   int listening_port;  /* port being listened for forwards */
                     37:   int host_port;       /* remote port to connect for forwards */
                     38:   char *remote_name;   /* remote hostname */
                     39: } Channel;
                     40:
                     41: #endif