complete list of telnet commands and options
diff --git a/libtelnet.c b/libtelnet.c
index 7503e7e..0a4a9f0 100644
--- a/libtelnet.c
+++ b/libtelnet.c
@@ -211,7 +211,7 @@
 				 * the compressed stream
 				 */
 				if (telnet->mode == LIBTELNET_MODE_CLIENT &&
-						telnet->buffer[0] == LIBTELNET_OPTION_COMPRESS2) {
+						telnet->buffer[0] == LIBTELNET_TELOPT_COMPRESS2) {
 					/* allocate zstream box */
 					if ((telnet->zlib = (z_stream *)malloc(sizeof(z_stream)))
 							== 0) {
@@ -419,7 +419,7 @@
 	 * make sure all further data is compressed
 	 */
 	if (telnet->mode == LIBTELNET_MODE_SERVER && opt ==
-			LIBTELNET_OPTION_COMPRESS2) {
+			LIBTELNET_TELOPT_COMPRESS2) {
 		/* allocate zstream box */
 		if ((telnet->zlib = (z_stream *)malloc(sizeof(z_stream)))
 				== 0) {
diff --git a/libtelnet.h b/libtelnet.h
index 18f43e0..39cc1c6 100644
--- a/libtelnet.h
+++ b/libtelnet.h
@@ -19,14 +19,67 @@
 #define LIBTELNET_WONT 252
 #define LIBTELNET_WILL 251
 #define LIBTELNET_SB 250
+#define LIBTELNET_SB 250
+#define LIBTELNET_GA 249
+#define LIBTELNET_EL 248
+#define LIBTELNET_EC 247
+#define LIBTELNET_AYT 246
+#define LIBTELNET_AO 245
+#define LIBTELNET_IP 244
+#define LIBTELNET_BREAK 243
+#define LIBTELNET_DM 242
+#define LIBTELNET_NOP 241
 #define LIBTELNET_SE 240
+#define LIBTELNET_EOR 239
+#define LIBTELNET_ABORT 238
+#define LIBTELNET_SUSP 237
+#define LIBTELNET_EOF 236
 
 /* telnet options */
-#define LIBTELNET_OPTION_BINARY 0
-#define LIBTELNET_OPTION_ECHO 1
-#define LIBTELNET_OPTION_NAWS 31
-#define LIBTELNET_OPTION_COMPRESS2 86
-#define LIBTELNET_OPTION_ZMP 93
+#define LIBTELNET_TELOPT_BINARY 0
+#define LIBTELNET_TELOPT_ECHO 1
+#define LIBTELNET_TELOPT_RCP 2
+#define LIBTELNET_TELOPT_SGA 3
+#define LIBTELNET_TELOPT_NAMS 4
+#define LIBTELNET_TELOPT_STATUS 5
+#define LIBTELNET_TELOPT_TM 6
+#define LIBTELNET_TELOPT_RCTE 7
+#define LIBTELNET_TELOPT_NAOL 8
+#define LIBTELNET_TELOPT_NAOP 9
+#define LIBTELNET_TELOPT_NAOCRD 10
+#define LIBTELNET_TELOPT_NAOHTS 11
+#define LIBTELNET_TELOPT_NAOHTD 12
+#define LIBTELNET_TELOPT_NAOFFD 13
+#define LIBTELNET_TELOPT_NAOVTS 14
+#define LIBTELNET_TELOPT_NAOVTD 15
+#define LIBTELNET_TELOPT_NAOLFD 16
+#define LIBTELNET_TELOPT_XASCII 17
+#define LIBTELNET_TELOPT_LOGOUT 18
+#define LIBTELNET_TELOPT_BM 19
+#define LIBTELNET_TELOPT_DET 20
+#define LIBTELNET_TELOPT_SUPDUP 21
+#define LIBTELNET_TELOPT_SUPDUPOUTPUT 22
+#define LIBTELNET_TELOPT_SNDLOC 23
+#define LIBTELNET_TELOPT_TTYPE 24
+#define LIBTELNET_TELOPT_EOR 25
+#define LIBTELNET_TELOPT_TUID 26
+#define LIBTELNET_TELOPT_OUTMRK 27
+#define LIBTELNET_TELOPT_TTYLOC 28
+#define LIBTELNET_TELOPT_3270REGIME 29
+#define LIBTELNET_TELOPT_X3PAD 30
+#define LIBTELNET_TELOPT_NAWS 31
+#define LIBTELNET_TELOPT_TSPEED 32
+#define LIBTELNET_TELOPT_LFLOW 33
+#define LIBTELNET_TELOPT_LINEMODE 34
+#define LIBTELNET_TELOPT_XDISPLOC 35
+#define LIBTELNET_TELOPT_ENVIRON 36
+#define LIBTELNET_TELOPT_AUTHENTICATION 37
+#define LIBTELNET_TELOPT_ENCRYPT 38
+#define LIBTELNET_TELOPT_NEW_ENVIRON 39
+#define LIBTELNET_TELOPT_COMPRESS 85
+#define LIBTELNET_TELOPT_COMPRESS2 86
+#define LIBTELNET_TELOPT_ZMP 93
+#define LIBTELNET_TELOPT_EXOPL 255
 
 /* libtelnet modes */
 enum libtelnet_mode_t {