X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Fhelper%2Flog.c;h=0e04c8e1b2ab1c2f4902b04ec1e4a384b0f81f0c;hp=f68c9a3ee4bc7ab925641f4cc882e27d27fea031;hb=23402315ce01071f30d7ec0c5ca7563ce41f1cc6;hpb=1c262c8826067b0d240f6db1c4eebf5514ea7475 diff --git a/src/helper/log.c b/src/helper/log.c index f68c9a3ee4..0e04c8e1b2 100644 --- a/src/helper/log.c +++ b/src/helper/log.c @@ -27,7 +27,6 @@ #include "config.h" #endif -#include "log.h" #include "time_support.h" // @todo the inclusion of server.h here is a layering violation #include "server.h" @@ -45,7 +44,7 @@ int debug_level = -1; static FILE* log_output; -static log_callback_t *log_callbacks = NULL; +static struct log_callback *log_callbacks = NULL; static long long last_time; static long long current_time; @@ -78,11 +77,11 @@ struct store_log_forward }; /* either forward the log to the listeners or store it for possible forwarding later */ -static void log_forward(const char *file, int line, const char *function, const char *string) +static void log_forward(const char *file, unsigned line, const char *function, const char *string) { if (log_forward_count==0) { - log_callback_t *cb, *next; + struct log_callback *cb, *next; cb = log_callbacks; /* DANGER!!!! the log callback can remove itself!!!! */ while (cb) @@ -225,7 +224,7 @@ static void log_puts(enum log_levels level, const char *file, int line, const ch } -void log_printf(enum log_levels level, const char *file, int line, const char *function, const char *format, ...) +void log_printf(enum log_levels level, const char *file, unsigned line, const char *function, const char *format, ...) { char *string; va_list ap; @@ -246,7 +245,7 @@ void log_printf(enum log_levels level, const char *file, int line, const char *f va_end(ap); } -void log_printf_lf(enum log_levels level, const char *file, int line, const char *function, const char *format, ...) +void log_printf_lf(enum log_levels level, const char *file, unsigned line, const char *function, const char *format, ...) { char *string; va_list ap; @@ -274,17 +273,15 @@ void log_printf_lf(enum log_levels level, const char *file, int line, const char * 2: + INFORMATIONAL MSGS * 3: + DEBUG MSGS */ -int handle_debug_level_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc) +COMMAND_HANDLER(handle_debug_level_command) { - if (argc == 1) + if (CMD_ARGC == 1) { unsigned new_level; - int retval = parse_uint(args[0], &new_level); - if (ERROR_OK != retval) - return retval; + COMMAND_PARSE_NUMBER(uint, CMD_ARGV[0], new_level); debug_level = MIN(new_level, LOG_LVL_DEBUG); } - else if (argc > 1) + else if (CMD_ARGC > 1) return ERROR_COMMAND_SYNTAX_ERROR; if (debug_level >= LOG_LVL_DEBUG && server_use_pipes == 1) @@ -304,11 +301,11 @@ int handle_debug_level_command(struct command_context_s *cmd_ctx, char *cmd, cha return ERROR_OK; } -int handle_log_output_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc) +COMMAND_HANDLER(handle_log_output_command) { - if (argc == 1) + if (CMD_ARGC == 1) { - FILE* file = fopen(args[0], "w"); + FILE* file = fopen(CMD_ARGV[0], "w"); if (file) { @@ -319,7 +316,7 @@ int handle_log_output_command(struct command_context_s *cmd_ctx, char *cmd, char return ERROR_OK; } -int log_register_commands(struct command_context_s *cmd_ctx) +int log_register_commands(struct command_context *cmd_ctx) { start = timeval_ms(); register_command(cmd_ctx, NULL, "log_output", handle_log_output_command, @@ -330,7 +327,7 @@ int log_register_commands(struct command_context_s *cmd_ctx) return ERROR_OK; } -int log_init(struct command_context_s *cmd_ctx) +int log_init(struct command_context *cmd_ctx) { /* set defaults for daemon configuration, if not set by cmdline or cfgfile */ if (debug_level == -1) @@ -346,7 +343,7 @@ int log_init(struct command_context_s *cmd_ctx) return ERROR_OK; } -int set_log_output(struct command_context_s *cmd_ctx, FILE *output) +int set_log_output(struct command_context *cmd_ctx, FILE *output) { log_output = output; return ERROR_OK; @@ -355,7 +352,7 @@ int set_log_output(struct command_context_s *cmd_ctx, FILE *output) /* add/remove log callback handler */ int log_add_callback(log_callback_fn fn, void *priv) { - log_callback_t *cb; + struct log_callback *cb; /* prevent the same callback to be registered more than once, just for sure */ for (cb = log_callbacks; cb; cb = cb->next) @@ -365,7 +362,7 @@ int log_add_callback(log_callback_fn fn, void *priv) } /* alloc memory, it is safe just to return in case of an error, no need for the caller to check this */ - if ((cb = malloc(sizeof(log_callback_t))) == NULL) + if ((cb = malloc(sizeof(struct log_callback))) == NULL) return ERROR_BUF_TOO_SMALL; /* add item to the beginning of the linked list */ @@ -379,7 +376,7 @@ int log_add_callback(log_callback_fn fn, void *priv) int log_remove_callback(log_callback_fn fn, void *priv) { - log_callback_t *cb, **p; + struct log_callback *cb, **p; for (p = &log_callbacks; (cb = *p); p = &(*p)->next) { @@ -507,27 +504,24 @@ void kept_alive() } /* if we sleep for extended periods of time, we must invoke keep_alive() intermittantly */ -void alive_sleep(int ms) +void alive_sleep(uint64_t ms) { - int i; - int napTime = 10; - for (i = 0; i < ms; i += napTime) + uint64_t napTime = 10; + for (uint64_t i = 0; i < ms; i += napTime) { - int sleep_a_bit = ms-i; + uint64_t sleep_a_bit = ms - i; if (sleep_a_bit > napTime) - { sleep_a_bit = napTime; - } - usleep(sleep_a_bit*1000); + + usleep(sleep_a_bit * 1000); keep_alive(); } } -void busy_sleep(int ms) +void busy_sleep(uint64_t ms) { - long long then; - then = timeval_ms(); - while ((timeval_ms()-then) < ms) + uint64_t then = timeval_ms(); + while (timeval_ms() - then < ms) { /* busy wait */ }