diff --git a/src/hub.c b/src/hub.c index 82220ce..19b7c45 100644 --- a/src/hub.c +++ b/src/hub.c @@ -898,6 +898,46 @@ const char* hub_get_status_message(struct hub_info* hub, enum status_message msg return "Unknown"; } +const char* hub_get_status_message_log(struct hub_info* hub, enum status_message msg) +{ +#define STATUS(MSG) case status_ ## MSG : return #MSG; break + switch (msg) + { + STATUS(msg_hub_full); + STATUS(msg_hub_disabled); + STATUS(msg_hub_registered_users_only); + STATUS(msg_inf_error_nick_missing); + STATUS(msg_inf_error_nick_multiple); + STATUS(msg_inf_error_nick_invalid); + STATUS(msg_inf_error_nick_long); + STATUS(msg_inf_error_nick_short); + STATUS(msg_inf_error_nick_spaces); + STATUS(msg_inf_error_nick_bad_chars); + STATUS(msg_inf_error_nick_not_utf8); + STATUS(msg_inf_error_nick_taken); + STATUS(msg_inf_error_nick_restricted); + STATUS(msg_inf_error_cid_invalid); + STATUS(msg_inf_error_cid_missing); + STATUS(msg_inf_error_cid_taken); + STATUS(msg_inf_error_pid_missing); + STATUS(msg_inf_error_pid_invalid); + STATUS(msg_ban_permanently); + STATUS(msg_ban_temporarily); + STATUS(msg_auth_invalid_password); + STATUS(msg_auth_user_not_found); + STATUS(msg_error_no_memory); + STATUS(msg_user_share_size_low); + STATUS(msg_user_share_size_high); + STATUS(msg_user_slots_low); + STATUS(msg_user_slots_high); + STATUS(msg_user_hub_limit_low); + STATUS(msg_user_hub_limit_high); + } +#undef STATUS + return "unknown"; +} + + size_t hub_get_user_count(struct hub_info* hub) { return hub->users->count; diff --git a/src/hub.h b/src/hub.h index 686ce99..4a5149c 100644 --- a/src/hub.h +++ b/src/hub.h @@ -238,6 +238,8 @@ extern void hub_free_variables(struct hub_info* hub); * Returns a string for the given status_message (See enum status_message). */ extern const char* hub_get_status_message(struct hub_info* hub, enum status_message msg); +extern const char* hub_get_status_message_log(struct hub_info* hub, enum status_message msg); + /** * Sends a status_message to a user. diff --git a/src/hubevent.c b/src/hubevent.c index aa65cc6..0ccb273 100644 --- a/src/hubevent.c +++ b/src/hubevent.c @@ -29,7 +29,7 @@ static void log_user_login(struct user* u) static void log_user_login_error(struct user* u, enum status_message msg) { const char* addr = ip_convert_to_string(&u->ipaddr); - const char* message = hub_get_status_message(u->hub, msg); + const char* message = hub_get_status_message_log(u->hub, msg); hub_log(log_user, "LoginError %s/%s %s \"%s\" (%s) \"%s\"", sid_to_string(u->id.sid), u->id.cid, addr, u->id.nick, message, u->user_agent); }