diff options
Diffstat (limited to 'Source/CTest/Curl/arpa_telnet.h')
-rw-r--r-- | Source/CTest/Curl/arpa_telnet.h | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/Source/CTest/Curl/arpa_telnet.h b/Source/CTest/Curl/arpa_telnet.h new file mode 100644 index 0000000..52ac66b --- /dev/null +++ b/Source/CTest/Curl/arpa_telnet.h @@ -0,0 +1,101 @@ +#ifndef __ARPA_TELNET_H +#define __ARPA_TELNET_H +/***************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 2001, Daniel Stenberg, <daniel@haxx.se>, et al. + * + * In order to be useful for every potential user, curl and libcurl are + * dual-licensed under the MPL and the MIT/X-derivate licenses. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the MPL or the MIT/X-derivate + * licenses. You may pick one of these licenses. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * $Id$ + *****************************************************************************/ + +/* + * Telnet option defines. Add more here if in need. + */ +#define TELOPT_BINARY 0 /* binary 8bit data */ +#define TELOPT_SGA 3 /* Supress Go Ahead */ +#define TELOPT_EXOPL 255 /* EXtended OPtions List */ +#define TELOPT_TTYPE 24 /* Terminal TYPE */ +#define TELOPT_XDISPLOC 35 /* X DISPlay LOCation */ + +#define TELOPT_NEW_ENVIRON 39 /* NEW ENVIRONment variables */ +#define NEW_ENV_VAR 0 +#define NEW_ENV_VALUE 1 + +/* + * The telnet options represented as strings + */ +static const char *telnetoptions[]= +{ + "BINARY", "ECHO", "RCP", "SUPPRESS GO AHEAD", + "NAME", "STATUS", "TIMING MARK", "RCTE", + "NAOL", "NAOP", "NAOCRD", "NAOHTS", + "NAOHTD", "NAOFFD", "NAOVTS", "NAOVTD", + "NAOLFD", "EXTEND ASCII", "LOGOUT", "BYTE MACRO", + "DE TERMINAL", "SUPDUP", "SUPDUP OUTPUT", "SEND LOCATION", + "TERM TYPE", "END OF RECORD", "TACACS UID", "OUTPUT MARKING", + "TTYLOC", "3270 REGIME", "X3 PAD", "NAWS", + "TERM SPEED", "LFLOW", "LINEMODE", "XDISPLOC", + "OLD-ENVIRON", "AUTHENTICATION", "ENCRYPT", "NEW-ENVIRON" +}; + +#define TELOPT_MAXIMUM TELOPT_NEW_ENVIRON + +#define TELOPT_OK(x) ((x) <= TELOPT_MAXIMUM) +#define TELOPT(x) telnetoptions[x] + +#define NTELOPTS 40 + +/* + * First some defines + */ +#define xEOF 236 /* End Of File */ +#define SE 240 /* Sub negotiation End */ +#define NOP 241 /* No OPeration */ +#define DM 242 /* Data Mark */ +#define GA 249 /* Go Ahead, reverse the line */ +#define SB 250 /* SuBnegotiation */ +#define WILL 251 /* Our side WILL use this option */ +#define WONT 252 /* Our side WON'T use this option */ +#define DO 253 /* DO use this option! */ +#define DONT 254 /* DON'T use this option! */ +#define IAC 255 /* Interpret As Command */ + +/* + * Then those numbers represented as strings: + */ +static const char *telnetcmds[]= +{ + "EOF", "SUSP", "ABORT", "EOR", "SE", + "NOP", "DMARK", "BRK", "IP", "AO", + "AYT", "EC", "EL", "GA", "SB", + "WILL", "WONT", "DO", "DONT", "IAC" +}; + +#define TELCMD_MINIMUM xEOF /* the first one */ +#define TELCMD_MAXIMUM IAC /* surprise, 255 is the last one! ;-) */ + +#define TELQUAL_IS 0 +#define TELQUAL_SEND 1 +#define TELQUAL_INFO 2 +#define TELQUAL_NAME 3 + +#define TELCMD_OK(x) ( ((unsigned int)(x) >= TELCMD_MINIMUM) && \ + ((unsigned int)(x) <= TELCMD_MAXIMUM) ) +#define TELCMD(x) telnetcmds[(x)-TELCMD_MINIMUM] + +#endif |