diff options
Diffstat (limited to 'src/client/login.h')
| -rw-r--r-- | src/client/login.h | 31 | 
1 files changed, 31 insertions, 0 deletions
diff --git a/src/client/login.h b/src/client/login.h new file mode 100644 index 0000000..b0c2698 --- /dev/null +++ b/src/client/login.h @@ -0,0 +1,31 @@ +#ifndef LOGIN_H +#define LOGIN_H + +#include <basic/string32.h> +#include <os/os.h> +#include <crypto/rsa.h> +#include <crypto/aes_gcm.h> +#include <client/string32_handles.h> + +struct Fscord; + +typedef struct { +    bool is_username_active; +    bool is_trying_to_login; +    bool is_c2s_login_sent; + +    String32Buffer *username; +    String32Buffer *servername; +    String32Handle warning; + +    EVP_PKEY *rsa_client_pri; +    EVP_PKEY *rsa_server_pub; +} Login; + +Login *login_create(Arena *arena, struct Fscord *fscord); +void login_update_login_attempt(Login *login); +void login_process_login_result(Login *login, b32 result); +void login_process_event(Login *login, OSEvent *event); +void login_draw(Login *login); + +#endif // LOGIN_H  | 
