Compare commits

...

4 Commits

Author SHA1 Message Date
45accc4b97
revert "using upload-artifact v3 instead of v4"
Some checks failed
Codacy Scan / Codacy Security Scan (push) Successful in 32s
Build WHY2-chat / test-why2 (./out/why2-chat-client, ./configure.sh, ubuntu-latest, ./out/why2-chat-server) (push) Failing after 2m26s
Test WHY2-core / test-why2 (why2, ./configure.sh, gdb -ex "run" -ex "quit" --batch, ubuntu-latest, ./out/why2-core-test, valgrind --leak-check=full --show-leak-kinds=reachable --track-origins=yes -s) (push) Successful in 2m42s
Test Project / test-project (./configure.sh, gdb -ex "run" -ex "quit" --batch, ubuntu-latest, ./test) (push) Successful in 2m50s
Test WHY2-logger / test-why2 (why2-logger, ./configure.sh, gdb -ex "run" -ex "quit" --batch, ubuntu-latest, ./out/why2-logger-test, valgrind --leak-check=full --show-leak-kinds=reachable --track-origins=yes -s) (push) Successful in 2m59s
this reverts commit f903d265d97ef3269dd2632f00fb6a456ae05040

github made v3 deprecated, so yeahhhh, uhmmm... basically...
2025-02-04 22:12:59 +01:00
af1a1d8855
showing client whether he is logging in or registering 2025-02-04 22:07:18 +01:00
240e7a79af
optimized ifs in why2_listen_server 2025-02-04 22:06:47 +01:00
037bd2a966
changed authority_ip address 2025-02-04 20:15:46 +01:00
4 changed files with 16 additions and 12 deletions

View File

@ -64,13 +64,13 @@ jobs:
run: make build_chat run: make build_chat
- name: Upload Client - name: Upload Client
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v4
with: with:
name: WHY2 Chat Client name: WHY2 Chat Client
path: ${{ matrix.client }} path: ${{ matrix.client }}
- name: Upload Server - name: Upload Server
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v4
with: with:
name: WHY2 Chat Server name: WHY2 Chat Server
path: ${{ matrix.server }} path: ${{ matrix.server }}

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

@ -17,4 +17,4 @@
auto_connect = false # Automatic connection to 'auto_connect_ip' auto_connect = false # Automatic connection to 'auto_connect_ip'
auto_connect_ip = "chat.coquette.baby" # See 'auto_connect' auto_connect_ip = "chat.coquette.baby" # See 'auto_connect'
authority_ip = "ca.chat.coquette.baby" # CA Address; Feel free to change if you don't trust the developer, but be aware that both client and server must use the same CA authority_ip = "chat.coquette.baby" # CA Address; Feel free to change if you don't trust the developer, but be aware that both client and server must use the same CA

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");
@ -1352,6 +1352,9 @@ void *why2_listen_server(void *socket)
unsigned char asking_username = 0; unsigned char asking_username = 0;
unsigned char asking_password = 0; unsigned char asking_password = 0;
char *server_uname = NULL; char *server_uname = NULL;
why2_bool bool_buffer_1 = 0;
why2_bool bool_buffer_2 = 0;
why2_bool bool_buffer_3 = 0;
//CONTENT //CONTENT
char *username = NULL; char *username = NULL;
@ -1406,11 +1409,11 @@ void *why2_listen_server(void *socket)
pthread_cancel(getline_thread); //CANCEL CLIENT getline pthread_cancel(getline_thread); //CANCEL CLIENT getline
exiting = 1; //EXIT THIS THREAD exiting = 1; //EXIT THIS THREAD
} else if (strcmp(code, WHY2_CHAT_CODE_PICK_USERNAME) == 0 || strcmp(code, WHY2_CHAT_CODE_INVALID_USERNAME) == 0) //PICK USERNAME (COULD BE CAUSE BY INVALID USERNAME) } else if (strcmp(code, WHY2_CHAT_CODE_PICK_USERNAME) == 0 || (bool_buffer_1 = (strcmp(code, WHY2_CHAT_CODE_INVALID_USERNAME) == 0))) //PICK USERNAME (COULD BE CAUSE BY INVALID USERNAME)
{ {
__why2_set_asking_username(1); __why2_set_asking_username(1);
if (strcmp(code, WHY2_CHAT_CODE_INVALID_USERNAME) == 0) //INVALID USERNAME if (bool_buffer_1) //INVALID USERNAME
{ {
printf(WHY2_CLEAR_AND_GO_UP WHY2_CLEAR_AND_GO_UP "%s\nInvalid username!\n\n\n", asking_username > 1 ? WHY2_CLEAR_AND_GO_UP : ""); printf(WHY2_CLEAR_AND_GO_UP WHY2_CLEAR_AND_GO_UP "%s\nInvalid username!\n\n\n", asking_username > 1 ? WHY2_CLEAR_AND_GO_UP : "");
fflush(stdout); fflush(stdout);
@ -1493,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
} }