]> git.sur5r.net Git - openocd/blobdiff - src/server/telnet_server.c
buildfix with -DNDEBUG
[openocd] / src / server / telnet_server.c
index 46d438e0ab2d3ec62f3063a10274a931de413128..92e7480b93e3a40b865324c64af0e6cab565b126 100644 (file)
@@ -28,7 +28,7 @@
 #endif
 
 #include "telnet_server.h"
-#include "target_request.h"
+#include <target/target_request.h>
 
 static unsigned short telnet_port = 4444;
 
@@ -195,8 +195,8 @@ void telnet_clear_line(struct connection *connection, struct telnet_connection *
 int telnet_input(struct connection *connection)
 {
        int bytes_read;
-       char buffer[TELNET_BUFFER_SIZE];
-       char *buf_p;
+       unsigned char buffer[TELNET_BUFFER_SIZE];
+       unsigned char *buf_p;
        struct telnet_connection *t_con = connection->priv;
        struct command_context *command_context = connection->cmd_ctx;
 
@@ -216,7 +216,7 @@ int telnet_input(struct connection *connection)
                switch (t_con->state)
                {
                        case TELNET_STATE_DATA:
-                               if (*buf_p == '\xff')
+                               if (*buf_p == 0xff)
                                {
                                        t_con->state = TELNET_STATE_IAC;
                                }
@@ -395,16 +395,16 @@ int telnet_input(struct connection *connection)
                        case TELNET_STATE_IAC:
                                switch (*buf_p)
                                {
-                                       case '\xfe':
+                                       case 0xfe:
                                                t_con->state = TELNET_STATE_DONT;
                                                break;
-                                       case '\xfd':
+                                       case 0xfd:
                                                t_con->state = TELNET_STATE_DO;
                                                break;
-                                       case '\xfc':
+                                       case 0xfc:
                                                t_con->state = TELNET_STATE_WONT;
                                                break;
-                                       case '\xfb':
+                                       case 0xfb:
                                                t_con->state = TELNET_STATE_WILL;
                                                break;
                                }
@@ -616,17 +616,25 @@ COMMAND_HANDLER(handle_exit_command)
        return ERROR_COMMAND_CLOSE_CONNECTION;
 }
 
-int telnet_register_commands(struct command_context *command_context)
+static const struct command_registration telnet_command_handlers[] = {
+       {
+               .name = "exit",
+               .handler = &handle_exit_command,
+               .mode = COMMAND_EXEC,
+               .help = "exit telnet session",
+       },
+       {
+               .name = "telnet_port",
+               .handler = &handle_telnet_port_command,
+               .mode = COMMAND_ANY,
+               .help = "port on which to listen "
+                       "for incoming telnet connections",
+               .usage = "<port>",
+       },
+       COMMAND_REGISTRATION_DONE
+};
+
+int telnet_register_commands(struct command_context *cmd_ctx)
 {
-       register_command(command_context, NULL, "exit",
-                       &handle_exit_command, COMMAND_EXEC,
-                       "exit telnet session");
-
-       register_command(command_context, NULL, "telnet_port",
-                       &handle_telnet_port_command, COMMAND_ANY,
-                       "port on which to listen for incoming telnet connections");
-
-       return ERROR_OK;
+       return register_commands(cmd_ctx, NULL, telnet_command_handlers);
 }
-
-