summaryrefslogtreecommitdiff
path: root/src/web.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/web.h')
-rw-r--r--src/web.h65
1 files changed, 2 insertions, 63 deletions
diff --git a/src/web.h b/src/web.h
index dd6e824..2bd85ea 100644
--- a/src/web.h
+++ b/src/web.h
@@ -1,25 +1,12 @@
#pragma once
+#include "app.h"
+
#include <stddef.h>
#include <stdint.h>
-#include <time.h>
struct MHD_PostProcessor;
-#define CLIENT_NAME_MAX 32
-#define CLIENT_SECRET_LEN 33
-#define BACKUP_STATUS_MAX 16
-#define MAX_BACKUPS_DISPLAY 50
-
-struct App {
- const char* dbname;
- char session_secret[CLIENT_SECRET_LEN];
- const char *admin_user;
- const char *admin_pass;
-};
-
-void prepare_database(struct App *app);
-
struct Server {
struct App *app;
@@ -53,51 +40,3 @@ struct Request {
struct FormData form;
const char *host;
};
-
-struct CreateClientResult {
- int64_t id;
- char* name;
- char secret[CLIENT_SECRET_LEN];
-};
-
-int create_client(struct Request *req, char *name, struct CreateClientResult *result);
-int delete_client(struct Request *req, int64_t client_id);
-
-struct ListClientResultClient {
- int64_t id;
- char name[CLIENT_NAME_MAX];
- char secret[CLIENT_SECRET_LEN];
- struct timespec last_backup;
- char status[BACKUP_STATUS_MAX]; // "OK", "RUNNING", "STALE", "FAILED", "INTERRUPTED"
- int is_stale;
-};
-
-struct ListClientResult {
- uint16_t clients_len;
- // Right now this has to be exactly 16 elements long, but it could be longer in the future
- struct ListClientResultClient clients[];
-};
-
-int list_clients(struct Request *req, struct ListClientResult *result);
-
-struct BackupRecord {
- int64_t id;
- char status[BACKUP_STATUS_MAX];
- struct timespec started;
- struct timespec completed;
-};
-
-struct GetClientOnlyResult {
- int found;
- int64_t id;
- char name[CLIENT_NAME_MAX];
- char secret[CLIENT_SECRET_LEN];
-};
-
-struct GetBackupsResult {
- uint16_t backups_len; // On input: max backups to fetch; On output: actual count
- struct BackupRecord backups[];
-};
-
-int get_client(struct Request *req, int64_t client_id, struct GetClientOnlyResult *result);
-int get_client_backups(struct Request *req, int64_t client_id, struct GetBackupsResult *result);