1*cda5da8dSAndroid Build Coastguard Worker #ifndef _ARPA_TELNET_H 2*cda5da8dSAndroid Build Coastguard Worker #define _ARPA_TELNET_H 3*cda5da8dSAndroid Build Coastguard Worker 4*cda5da8dSAndroid Build Coastguard Worker #define IAC 255 5*cda5da8dSAndroid Build Coastguard Worker #define DONT 254 6*cda5da8dSAndroid Build Coastguard Worker #define DO 253 7*cda5da8dSAndroid Build Coastguard Worker #define WONT 252 8*cda5da8dSAndroid Build Coastguard Worker #define WILL 251 9*cda5da8dSAndroid Build Coastguard Worker #define SB 250 10*cda5da8dSAndroid Build Coastguard Worker #define GA 249 11*cda5da8dSAndroid Build Coastguard Worker #define EL 248 12*cda5da8dSAndroid Build Coastguard Worker #define EC 247 13*cda5da8dSAndroid Build Coastguard Worker #define AYT 246 14*cda5da8dSAndroid Build Coastguard Worker #define AO 245 15*cda5da8dSAndroid Build Coastguard Worker #define IP 244 16*cda5da8dSAndroid Build Coastguard Worker #define BREAK 243 17*cda5da8dSAndroid Build Coastguard Worker #define DM 242 18*cda5da8dSAndroid Build Coastguard Worker #define NOP 241 19*cda5da8dSAndroid Build Coastguard Worker #define SE 240 20*cda5da8dSAndroid Build Coastguard Worker #define EOR 239 21*cda5da8dSAndroid Build Coastguard Worker #define ABORT 238 22*cda5da8dSAndroid Build Coastguard Worker #define SUSP 237 23*cda5da8dSAndroid Build Coastguard Worker #define xEOF 236 24*cda5da8dSAndroid Build Coastguard Worker 25*cda5da8dSAndroid Build Coastguard Worker #define SYNCH 242 26*cda5da8dSAndroid Build Coastguard Worker 27*cda5da8dSAndroid Build Coastguard Worker #define telcmds ((char [][6]){ "EOF", "SUSP", "ABORT", "EOR", "SE", "NOP", "DMARK", "BRK", "IP", "AO", "AYT", "EC", "EL", "GA", "SB", "WILL", "WONT", "DO", "DONT", "IAC", 0 }) 28*cda5da8dSAndroid Build Coastguard Worker 29*cda5da8dSAndroid Build Coastguard Worker #define TELCMD_FIRST xEOF 30*cda5da8dSAndroid Build Coastguard Worker #define TELCMD_LAST IAC 31*cda5da8dSAndroid Build Coastguard Worker #define TELCMD_OK(x) ((unsigned int)(x) <= TELCMD_LAST && \ 32*cda5da8dSAndroid Build Coastguard Worker (unsigned int)(x) >= TELCMD_FIRST) 33*cda5da8dSAndroid Build Coastguard Worker #define TELCMD(x) telcmds[(x)-TELCMD_FIRST] 34*cda5da8dSAndroid Build Coastguard Worker 35*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_BINARY 0 36*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_ECHO 1 37*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_RCP 2 38*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_SGA 3 39*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NAMS 4 40*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_STATUS 5 41*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_TM 6 42*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_RCTE 7 43*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NAOL 8 44*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NAOP 9 45*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NAOCRD 10 46*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NAOHTS 11 47*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NAOHTD 12 48*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NAOFFD 13 49*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NAOVTS 14 50*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NAOVTD 15 51*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NAOLFD 16 52*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_XASCII 17 53*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_LOGOUT 18 54*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_BM 19 55*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_DET 20 56*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_SUPDUP 21 57*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_SUPDUPOUTPUT 22 58*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_SNDLOC 23 59*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_TTYPE 24 60*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_EOR 25 61*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_TUID 26 62*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_OUTMRK 27 63*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_TTYLOC 28 64*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_3270REGIME 29 65*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_X3PAD 30 66*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NAWS 31 67*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_TSPEED 32 68*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_LFLOW 33 69*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_LINEMODE 34 70*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_XDISPLOC 35 71*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_OLD_ENVIRON 36 72*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_AUTHENTICATION 37/* Authenticate */ 73*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_ENCRYPT 38 74*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_NEW_ENVIRON 39 75*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_EXOPL 255 76*cda5da8dSAndroid Build Coastguard Worker 77*cda5da8dSAndroid Build Coastguard Worker 78*cda5da8dSAndroid Build Coastguard Worker #define NTELOPTS (1+TELOPT_NEW_ENVIRON) 79*cda5da8dSAndroid Build Coastguard Worker #ifdef TELOPTS 80*cda5da8dSAndroid Build Coastguard Worker char *telopts[NTELOPTS+1] = { 81*cda5da8dSAndroid Build Coastguard Worker "BINARY", "ECHO", "RCP", "SUPPRESS GO AHEAD", "NAME", 82*cda5da8dSAndroid Build Coastguard Worker "STATUS", "TIMING MARK", "RCTE", "NAOL", "NAOP", 83*cda5da8dSAndroid Build Coastguard Worker "NAOCRD", "NAOHTS", "NAOHTD", "NAOFFD", "NAOVTS", 84*cda5da8dSAndroid Build Coastguard Worker "NAOVTD", "NAOLFD", "EXTEND ASCII", "LOGOUT", "BYTE MACRO", 85*cda5da8dSAndroid Build Coastguard Worker "DATA ENTRY TERMINAL", "SUPDUP", "SUPDUP OUTPUT", 86*cda5da8dSAndroid Build Coastguard Worker "SEND LOCATION", "TERMINAL TYPE", "END OF RECORD", 87*cda5da8dSAndroid Build Coastguard Worker "TACACS UID", "OUTPUT MARKING", "TTYLOC", 88*cda5da8dSAndroid Build Coastguard Worker "3270 REGIME", "X.3 PAD", "NAWS", "TSPEED", "LFLOW", 89*cda5da8dSAndroid Build Coastguard Worker "LINEMODE", "XDISPLOC", "OLD-ENVIRON", "AUTHENTICATION", 90*cda5da8dSAndroid Build Coastguard Worker "ENCRYPT", "NEW-ENVIRON", 91*cda5da8dSAndroid Build Coastguard Worker 0, 92*cda5da8dSAndroid Build Coastguard Worker }; 93*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_FIRST TELOPT_BINARY 94*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_LAST TELOPT_NEW_ENVIRON 95*cda5da8dSAndroid Build Coastguard Worker #define TELOPT_OK(x) ((unsigned int)(x) <= TELOPT_LAST) 96*cda5da8dSAndroid Build Coastguard Worker #define TELOPT(x) telopts[(x)-TELOPT_FIRST] 97*cda5da8dSAndroid Build Coastguard Worker #endif 98*cda5da8dSAndroid Build Coastguard Worker 99*cda5da8dSAndroid Build Coastguard Worker #define TELQUAL_IS 0 100*cda5da8dSAndroid Build Coastguard Worker #define TELQUAL_SEND 1 101*cda5da8dSAndroid Build Coastguard Worker #define TELQUAL_INFO 2 102*cda5da8dSAndroid Build Coastguard Worker #define TELQUAL_REPLY 2 103*cda5da8dSAndroid Build Coastguard Worker #define TELQUAL_NAME 3 104*cda5da8dSAndroid Build Coastguard Worker 105*cda5da8dSAndroid Build Coastguard Worker #define LFLOW_OFF 0 106*cda5da8dSAndroid Build Coastguard Worker #define LFLOW_ON 1 107*cda5da8dSAndroid Build Coastguard Worker #define LFLOW_RESTART_ANY 2 108*cda5da8dSAndroid Build Coastguard Worker #define LFLOW_RESTART_XON 3 109*cda5da8dSAndroid Build Coastguard Worker 110*cda5da8dSAndroid Build Coastguard Worker 111*cda5da8dSAndroid Build Coastguard Worker #define LM_MODE 1 112*cda5da8dSAndroid Build Coastguard Worker #define LM_FORWARDMASK 2 113*cda5da8dSAndroid Build Coastguard Worker #define LM_SLC 3 114*cda5da8dSAndroid Build Coastguard Worker 115*cda5da8dSAndroid Build Coastguard Worker #define MODE_EDIT 0x01 116*cda5da8dSAndroid Build Coastguard Worker #define MODE_TRAPSIG 0x02 117*cda5da8dSAndroid Build Coastguard Worker #define MODE_ACK 0x04 118*cda5da8dSAndroid Build Coastguard Worker #define MODE_SOFT_TAB 0x08 119*cda5da8dSAndroid Build Coastguard Worker #define MODE_LIT_ECHO 0x10 120*cda5da8dSAndroid Build Coastguard Worker 121*cda5da8dSAndroid Build Coastguard Worker #define MODE_MASK 0x1f 122*cda5da8dSAndroid Build Coastguard Worker 123*cda5da8dSAndroid Build Coastguard Worker #define MODE_FLOW 0x0100 124*cda5da8dSAndroid Build Coastguard Worker #define MODE_ECHO 0x0200 125*cda5da8dSAndroid Build Coastguard Worker #define MODE_INBIN 0x0400 126*cda5da8dSAndroid Build Coastguard Worker #define MODE_OUTBIN 0x0800 127*cda5da8dSAndroid Build Coastguard Worker #define MODE_FORCE 0x1000 128*cda5da8dSAndroid Build Coastguard Worker 129*cda5da8dSAndroid Build Coastguard Worker #define SLC_SYNCH 1 130*cda5da8dSAndroid Build Coastguard Worker #define SLC_BRK 2 131*cda5da8dSAndroid Build Coastguard Worker #define SLC_IP 3 132*cda5da8dSAndroid Build Coastguard Worker #define SLC_AO 4 133*cda5da8dSAndroid Build Coastguard Worker #define SLC_AYT 5 134*cda5da8dSAndroid Build Coastguard Worker #define SLC_EOR 6 135*cda5da8dSAndroid Build Coastguard Worker #define SLC_ABORT 7 136*cda5da8dSAndroid Build Coastguard Worker #define SLC_EOF 8 137*cda5da8dSAndroid Build Coastguard Worker #define SLC_SUSP 9 138*cda5da8dSAndroid Build Coastguard Worker #define SLC_EC 10 139*cda5da8dSAndroid Build Coastguard Worker #define SLC_EL 11 140*cda5da8dSAndroid Build Coastguard Worker #define SLC_EW 12 141*cda5da8dSAndroid Build Coastguard Worker #define SLC_RP 13 142*cda5da8dSAndroid Build Coastguard Worker #define SLC_LNEXT 14 143*cda5da8dSAndroid Build Coastguard Worker #define SLC_XON 15 144*cda5da8dSAndroid Build Coastguard Worker #define SLC_XOFF 16 145*cda5da8dSAndroid Build Coastguard Worker #define SLC_FORW1 17 146*cda5da8dSAndroid Build Coastguard Worker #define SLC_FORW2 18 147*cda5da8dSAndroid Build Coastguard Worker 148*cda5da8dSAndroid Build Coastguard Worker #define NSLC 18 149*cda5da8dSAndroid Build Coastguard Worker 150*cda5da8dSAndroid Build Coastguard Worker #define SLC_NAMELIST "0", "SYNCH", "BRK", "IP", "AO", "AYT", "EOR", \ 151*cda5da8dSAndroid Build Coastguard Worker "ABORT", "EOF", "SUSP", "EC", "EL", "EW", "RP", \ 152*cda5da8dSAndroid Build Coastguard Worker "LNEXT", "XON", "XOFF", "FORW1", "FORW2", 0, 153*cda5da8dSAndroid Build Coastguard Worker #ifdef SLC_NAMES 154*cda5da8dSAndroid Build Coastguard Worker char *slc_names[] = { 155*cda5da8dSAndroid Build Coastguard Worker SLC_NAMELIST 156*cda5da8dSAndroid Build Coastguard Worker }; 157*cda5da8dSAndroid Build Coastguard Worker #else 158*cda5da8dSAndroid Build Coastguard Worker extern char *slc_names[]; 159*cda5da8dSAndroid Build Coastguard Worker #define SLC_NAMES SLC_NAMELIST 160*cda5da8dSAndroid Build Coastguard Worker #endif 161*cda5da8dSAndroid Build Coastguard Worker 162*cda5da8dSAndroid Build Coastguard Worker #define SLC_NAME_OK(x) ((unsigned int)(x) <= NSLC) 163*cda5da8dSAndroid Build Coastguard Worker #define SLC_NAME(x) slc_names[x] 164*cda5da8dSAndroid Build Coastguard Worker 165*cda5da8dSAndroid Build Coastguard Worker #define SLC_NOSUPPORT 0 166*cda5da8dSAndroid Build Coastguard Worker #define SLC_CANTCHANGE 1 167*cda5da8dSAndroid Build Coastguard Worker #define SLC_VARIABLE 2 168*cda5da8dSAndroid Build Coastguard Worker #define SLC_DEFAULT 3 169*cda5da8dSAndroid Build Coastguard Worker #define SLC_LEVELBITS 0x03 170*cda5da8dSAndroid Build Coastguard Worker 171*cda5da8dSAndroid Build Coastguard Worker #define SLC_FUNC 0 172*cda5da8dSAndroid Build Coastguard Worker #define SLC_FLAGS 1 173*cda5da8dSAndroid Build Coastguard Worker #define SLC_VALUE 2 174*cda5da8dSAndroid Build Coastguard Worker 175*cda5da8dSAndroid Build Coastguard Worker #define SLC_ACK 0x80 176*cda5da8dSAndroid Build Coastguard Worker #define SLC_FLUSHIN 0x40 177*cda5da8dSAndroid Build Coastguard Worker #define SLC_FLUSHOUT 0x20 178*cda5da8dSAndroid Build Coastguard Worker 179*cda5da8dSAndroid Build Coastguard Worker #define OLD_ENV_VAR 1 180*cda5da8dSAndroid Build Coastguard Worker #define OLD_ENV_VALUE 0 181*cda5da8dSAndroid Build Coastguard Worker #define NEW_ENV_VAR 0 182*cda5da8dSAndroid Build Coastguard Worker #define NEW_ENV_VALUE 1 183*cda5da8dSAndroid Build Coastguard Worker #define ENV_ESC 2 184*cda5da8dSAndroid Build Coastguard Worker #define ENV_USERVAR 3 185*cda5da8dSAndroid Build Coastguard Worker 186*cda5da8dSAndroid Build Coastguard Worker #define AUTH_WHO_CLIENT 0 187*cda5da8dSAndroid Build Coastguard Worker #define AUTH_WHO_SERVER 1 188*cda5da8dSAndroid Build Coastguard Worker #define AUTH_WHO_MASK 1 189*cda5da8dSAndroid Build Coastguard Worker 190*cda5da8dSAndroid Build Coastguard Worker #define AUTH_HOW_ONE_WAY 0 191*cda5da8dSAndroid Build Coastguard Worker #define AUTH_HOW_MUTUAL 2 192*cda5da8dSAndroid Build Coastguard Worker #define AUTH_HOW_MASK 2 193*cda5da8dSAndroid Build Coastguard Worker 194*cda5da8dSAndroid Build Coastguard Worker #define AUTHTYPE_NULL 0 195*cda5da8dSAndroid Build Coastguard Worker #define AUTHTYPE_KERBEROS_V4 1 196*cda5da8dSAndroid Build Coastguard Worker #define AUTHTYPE_KERBEROS_V5 2 197*cda5da8dSAndroid Build Coastguard Worker #define AUTHTYPE_SPX 3 198*cda5da8dSAndroid Build Coastguard Worker #define AUTHTYPE_MINK 4 199*cda5da8dSAndroid Build Coastguard Worker #define AUTHTYPE_CNT 5 200*cda5da8dSAndroid Build Coastguard Worker 201*cda5da8dSAndroid Build Coastguard Worker #define AUTHTYPE_TEST 99 202*cda5da8dSAndroid Build Coastguard Worker 203*cda5da8dSAndroid Build Coastguard Worker #ifdef AUTH_NAMES 204*cda5da8dSAndroid Build Coastguard Worker char *authtype_names[] = { 205*cda5da8dSAndroid Build Coastguard Worker "NULL", "KERBEROS_V4", "KERBEROS_V5", "SPX", "MINK", 0, 206*cda5da8dSAndroid Build Coastguard Worker }; 207*cda5da8dSAndroid Build Coastguard Worker #else 208*cda5da8dSAndroid Build Coastguard Worker extern char *authtype_names[]; 209*cda5da8dSAndroid Build Coastguard Worker #endif 210*cda5da8dSAndroid Build Coastguard Worker 211*cda5da8dSAndroid Build Coastguard Worker #define AUTHTYPE_NAME_OK(x) ((unsigned int)(x) < AUTHTYPE_CNT) 212*cda5da8dSAndroid Build Coastguard Worker #define AUTHTYPE_NAME(x) authtype_names[x] 213*cda5da8dSAndroid Build Coastguard Worker 214*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_IS 0 215*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_SUPPORT 1 216*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_REPLY 2 217*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_START 3 218*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_END 4 219*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_REQSTART 5 220*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_REQEND 6 221*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_ENC_KEYID 7 222*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_DEC_KEYID 8 223*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_CNT 9 224*cda5da8dSAndroid Build Coastguard Worker 225*cda5da8dSAndroid Build Coastguard Worker #define ENCTYPE_ANY 0 226*cda5da8dSAndroid Build Coastguard Worker #define ENCTYPE_DES_CFB64 1 227*cda5da8dSAndroid Build Coastguard Worker #define ENCTYPE_DES_OFB64 2 228*cda5da8dSAndroid Build Coastguard Worker #define ENCTYPE_CNT 3 229*cda5da8dSAndroid Build Coastguard Worker 230*cda5da8dSAndroid Build Coastguard Worker #ifdef ENCRYPT_NAMES 231*cda5da8dSAndroid Build Coastguard Worker char *encrypt_names[] = { 232*cda5da8dSAndroid Build Coastguard Worker "IS", "SUPPORT", "REPLY", "START", "END", 233*cda5da8dSAndroid Build Coastguard Worker "REQUEST-START", "REQUEST-END", "ENC-KEYID", "DEC-KEYID", 234*cda5da8dSAndroid Build Coastguard Worker 0, 235*cda5da8dSAndroid Build Coastguard Worker }; 236*cda5da8dSAndroid Build Coastguard Worker char *enctype_names[] = { 237*cda5da8dSAndroid Build Coastguard Worker "ANY", "DES_CFB64", "DES_OFB64", 0, 238*cda5da8dSAndroid Build Coastguard Worker }; 239*cda5da8dSAndroid Build Coastguard Worker #else 240*cda5da8dSAndroid Build Coastguard Worker extern char *encrypt_names[]; 241*cda5da8dSAndroid Build Coastguard Worker extern char *enctype_names[]; 242*cda5da8dSAndroid Build Coastguard Worker #endif 243*cda5da8dSAndroid Build Coastguard Worker 244*cda5da8dSAndroid Build Coastguard Worker 245*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_NAME_OK(x) ((unsigned int)(x) < ENCRYPT_CNT) 246*cda5da8dSAndroid Build Coastguard Worker #define ENCRYPT_NAME(x) encrypt_names[x] 247*cda5da8dSAndroid Build Coastguard Worker 248*cda5da8dSAndroid Build Coastguard Worker #define ENCTYPE_NAME_OK(x) ((unsigned int)(x) < ENCTYPE_CNT) 249*cda5da8dSAndroid Build Coastguard Worker #define ENCTYPE_NAME(x) enctype_names[x] 250*cda5da8dSAndroid Build Coastguard Worker 251*cda5da8dSAndroid Build Coastguard Worker #endif 252