From 6f199dc746bd377223e9bec60467c9060d1048ff Mon Sep 17 00:00:00 2001 From: Phil Jones Date: Sun, 31 Oct 2021 22:16:40 +0000 Subject: Add actual greetd functionality. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Useable, but very barebones — not even any error message reporting. --- src/greetd.h | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 src/greetd.h (limited to 'src/greetd.h') diff --git a/src/greetd.h b/src/greetd.h new file mode 100644 index 0000000..3901d85 --- /dev/null +++ b/src/greetd.h @@ -0,0 +1,43 @@ +#ifndef GREETD_H +#define GREETD_H + +#include + +enum greetd_request_type { + GREETD_REQUEST_CREATE_SESSION, + GREETD_REQUEST_POST_AUTH_MESSAGE_RESPONSE, + GREETD_REQUEST_START_SESSION, + GREETD_REQUEST_CANCEL_SESSION +}; + +enum greetd_response_type { + GREETD_RESPONSE_INVALID, + GREETD_RESPONSE_SUCCESS, + GREETD_RESPONSE_ERROR, + GREETD_RESPONSE_AUTH_MESSAGE +}; + +enum greetd_auth_message_type { + GREETD_AUTH_MESSAGE_INVALID, + GREETD_AUTH_MESSAGE_VISIBLE, + GREETD_AUTH_MESSAGE_SECRET, + GREETD_AUTH_MESSAGE_INFO, + GREETD_AUTH_MESSAGE_ERROR +}; + +enum greetd_error_type { + GREETD_ERROR_INVALID, + GREETD_ERROR_AUTH_ERROR, + GREETD_ERROR_ERROR +}; + +[[nodiscard]] struct json_object *greetd_create_session(const char *username); +[[nodiscard]] struct json_object *greetd_post_auth_message_response(const char *response); +[[nodiscard]] struct json_object *greetd_start_session(const char *command); +[[nodiscard]] struct json_object *greetd_cancel_session(void); + +enum greetd_response_type greetd_parse_response_type(struct json_object *response); +enum greetd_auth_message_type greetd_parse_auth_message_type(struct json_object *response); +enum greetd_error_type greetd_parse_error_type(struct json_object *response); + +#endif /* GREETD_H */ -- cgit v1.2.3