showing client whether he is logging in or registering

This commit is contained in:
Václav Šmejkal 2025-02-04 22:07:18 +01:00
parent 240e7a79af
commit af1a1d8855
Signed by: ENGO150
GPG Key ID: 4A57E86482968843
2 changed files with 8 additions and 7 deletions

View File

@ -52,8 +52,9 @@ enum WHY2_CHAT_SERVER_TYPE //TYPE OF SERVER
#define WHY2_CHAT_CODE_LIST_SERVER "SC5" //SAME AS WHY2_CHAT_CODE_LIST BUT BACK TO THE CLIENT #define WHY2_CHAT_CODE_LIST_SERVER "SC5" //SAME AS WHY2_CHAT_CODE_LIST BUT BACK TO THE CLIENT
#define WHY2_CHAT_CODE_VERSION_SERVER "SC6" //SAME AS WHY2_CHAT_CODE_VERSION BUT BACK TO THE CLIENT #define WHY2_CHAT_CODE_VERSION_SERVER "SC6" //SAME AS WHY2_CHAT_CODE_VERSION BUT BACK TO THE CLIENT
#define WHY2_CHAT_CODE_DM_SERVER "SC7" //SAME AS WHY2_CHAT_CODE_DM BUT BACK TO THE CLIENT #define WHY2_CHAT_CODE_DM_SERVER "SC7" //SAME AS WHY2_CHAT_CODE_DM BUT BACK TO THE CLIENT
#define WHY2_CHAT_CODE_ENTER_PASSWORD "SC8" //RECEIVE PASSWORD FROM USER #define WHY2_CHAT_CODE_REGISTER "SC8" //RECEIVE PASSWORD FROM USER (REGISTER)
#define WHY2_CHAT_CODE_INVALID_PASSWORD "SC9"//🌸ꗥ~ꗥ🌸 𝐢 𝐡𝐚𝐭𝐞 𝐲𝐨𝐮 🌸ꗥ~ꗥ🌸 #define WHY2_CHAT_CODE_LOGIN "SC9" //RECEIVE PASSWORD FROM USER (LOGIN)
#define WHY2_CHAT_CODE_INVALID_PASSWORD "SCA"//🌸ꗥ~ꗥ🌸 𝐢 𝐡𝐚𝐭𝐞 𝐲𝐨𝐮 🌸ꗥ~ꗥ🌸
//(CLIENT -> SERVER) CODES //(CLIENT -> SERVER) CODES
#define WHY2_CHAT_CODE_CLIENT_SERVER_KEY_EXCHANGE "CS0" //TELL SERVER YOU ARE SHARING YOUR PUBLIC KEY #define WHY2_CHAT_CODE_CLIENT_SERVER_KEY_EXCHANGE "CS0" //TELL SERVER YOU ARE SHARING YOUR PUBLIC KEY

View File

@ -873,7 +873,7 @@ void *why2_communicate_thread(void *arg)
char *user_config_path = why2_get_server_users_path(); char *user_config_path = why2_get_server_users_path();
if (!why2_toml_contains(user_config_path, decoded_buffer)) //REGISTRATION if (!why2_toml_contains(user_config_path, decoded_buffer)) //REGISTRATION
{ {
send_socket_code_deallocate(NULL, why2_chat_server_config("server_username"), client_server_key, connection, WHY2_CHAT_CODE_ENTER_PASSWORD); send_socket_code_deallocate(NULL, why2_chat_server_config("server_username"), client_server_key, connection, WHY2_CHAT_CODE_REGISTER);
//KEEP READING UNTIL CODE ARRIVES //KEEP READING UNTIL CODE ARRIVES
char *code = NULL; char *code = NULL;
@ -902,7 +902,7 @@ void *why2_communicate_thread(void *arg)
why2_toml_write(user_config_path, username, password); //SAVE PASSWORD why2_toml_write(user_config_path, username, password); //SAVE PASSWORD
} else //LOGIN } else //LOGIN
{ {
send_socket_code_deallocate(NULL, why2_chat_server_config("server_username"), client_server_key, connection, WHY2_CHAT_CODE_ENTER_PASSWORD); send_socket_code_deallocate(NULL, why2_chat_server_config("server_username"), client_server_key, connection, WHY2_CHAT_CODE_LOGIN);
unsigned char max_tries = (unsigned char) server_config_int("max_password_tries"); unsigned char max_tries = (unsigned char) server_config_int("max_password_tries");
@ -1496,17 +1496,17 @@ void *why2_listen_server(void *socket)
why2_deallocate(pm_info[i]); why2_deallocate(pm_info[i]);
} }
why2_deallocate(pm_info); why2_deallocate(pm_info);
} else if (strcmp(code, WHY2_CHAT_CODE_ENTER_PASSWORD) == 0 || strcmp(code, WHY2_CHAT_CODE_INVALID_PASSWORD) == 0) //PICK USERNAME (COULD BE CAUSE BY INVALID USERNAME) } else if ((bool_buffer_1 = (strcmp(code, WHY2_CHAT_CODE_REGISTER) == 0)) || (bool_buffer_2 = (strcmp(code, WHY2_CHAT_CODE_LOGIN) == 0)) || (bool_buffer_3 = (strcmp(code, WHY2_CHAT_CODE_INVALID_PASSWORD) == 0))) //PICK USERNAME (COULD BE CAUSE BY INVALID USERNAME)
{ {
__why2_set_asking_password(1); __why2_set_asking_password(1);
if (strcmp(code, WHY2_CHAT_CODE_INVALID_PASSWORD) == 0) //INVALID USERNAME if (bool_buffer_3) //INVALID USERNAME
{ {
printf(WHY2_CLEAR_AND_GO_UP WHY2_CLEAR_AND_GO_UP "%s\nInvalid password!\n\n\n", asking_password > 1 ? WHY2_CLEAR_AND_GO_UP : ""); printf(WHY2_CLEAR_AND_GO_UP WHY2_CLEAR_AND_GO_UP "%s\nInvalid password!\n\n\n", asking_password > 1 ? WHY2_CLEAR_AND_GO_UP : "");
fflush(stdout); fflush(stdout);
} }
printf("%s%s\nEnter password:\n", asking_password++ > 0 ? WHY2_CLEAR_AND_GO_UP : "", WHY2_CLEAR_AND_GO_UP WHY2_CLEAR_AND_GO_UP); printf("%s%s\nEnter password:%s\n", asking_password++ > 0 ? WHY2_CLEAR_AND_GO_UP : "", WHY2_CLEAR_AND_GO_UP WHY2_CLEAR_AND_GO_UP, bool_buffer_1 ? " (REGISTER)" : (bool_buffer_2 ? " (LOGIN)" : ""));
fflush(stdout); fflush(stdout);
//TODO! THIS SOMEHOW BREAKS THE CLIENT INPUT //TODO! THIS SOMEHOW BREAKS THE CLIENT INPUT
} }