void rxtx_print_error(struct rxtx_data *rxtx, const char *prefix, const char *suffix) { enum error_type type; int val; get_last_error(&rxtx->last_error, &type, &val); if (val != 0) { switch (type) { case ETYPE_ERRNO: printf("%s%s%s", prefix, strerror(val), suffix); break; case ETYPE_CLI: printf("%s%s%s", prefix, cmd_strerror(val, 0), suffix); break; case ETYPE_BLADERF: printf("%s%s%s", prefix, bladerf_strerror(val), suffix); break; default: printf("%sBUG: Unexpected status=%d%s", prefix, val, suffix); } } else { printf("%sNone%s", prefix, suffix); } }
static void print_state(enum rxtx_state state, int error, int error_type) { switch (state) { case RXTX_STATE_IDLE: printf(" State: Idle\n"); break; case RXTX_STATE_ERROR: if (error_type == ETYPE_ERRNO) { printf(" State: Error -- %s\n", strerror(error)); } else if (error_type == ETYPE_BLADERF) { printf(" State: Error -- %s\n", bladerf_strerror(error)); } else if (error_type == ETYPE_CLI) { printf(" State: Error -- %s\n", cmd_strerror(error, 0)); } else { printf(" State: Error -- (%d)\n", error); } break; case RXTX_STATE_SHUTDOWN: printf(" State: Shutting down\n"); break; case RXTX_STATE_RUNNING: printf(" State: Running\n"); break; default: printf(" State: Invalid/Unknown (BUG)\n"); } }