summaryrefslogtreecommitdiffstats
path: root/src/dbi.h
diff options
context:
space:
mode:
authorJavier Sánchez Parra <jsanchez@soleta.eu>2021-04-20 11:54:00 +0200
committerOpenGnSys Support Team <soporte-og@soleta.eu>2021-04-20 12:05:42 +0200
commit29e7641e910901e813f5682da677f767a2aea5cc (patch)
tree6cff56ee2a03673d66f9908d09bbf83fe09a8204 /src/dbi.h
parent7d74d42c79fb2747e42b4d9e2743abbc86a5354c (diff)
#915 Add /room/add POST method
Adds POST method to add rooms (labs), required payload parameters are name, netmask and center; any additional attributes are optional. Required JSON: { "center": 0, "name": "classroom10", "netmask": "255.255.255.0" } Full JSON: { "center": 0, "name": "classroom11", "netmask": "255.255.255.0", "group": 0, "location": "First floor", "gateway": "192.168.56.1", "ntp": "hora.cica.es", "dns": "1.1.1.1", "remote": True } This commit also adds unit tests for /room/add POST method.
Diffstat (limited to 'src/dbi.h')
-rw-r--r--src/dbi.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/dbi.h b/src/dbi.h
index 798fecd..33b7afc 100644
--- a/src/dbi.h
+++ b/src/dbi.h
@@ -24,6 +24,7 @@ void og_dbi_close(struct og_dbi *db);
#define OG_DB_COMPUTER_NAME_MAXLEN 100
#define OG_DB_CENTER_NAME_MAXLEN 100
#define OG_DB_ROOM_NAME_MAXLEN 100
+#define OG_DB_ROOM_LOC_MAXLEN 255
#define OG_DB_SERIAL_NUMBER_MAXLEN 25
#define OG_DB_IMAGE_DESCRIPTION_MAXLEN 250
#define OG_DB_IMAGE_NAME_MAXLEN 50
@@ -88,6 +89,18 @@ struct og_computer {
char ip[OG_DB_IP_MAXLEN + 1];
};
+struct og_room {
+ uint32_t center;
+ uint32_t group;
+ char location[OG_DB_ROOM_LOC_MAXLEN + 1];
+ char name[OG_DB_ROOM_NAME_MAXLEN + 1];
+ char gateway[OG_DB_IP_MAXLEN + 1];
+ char netmask[OG_DB_IP_MAXLEN + 1];
+ char ntp[OG_DB_IP_MAXLEN + 1];
+ char dns[OG_DB_IP_MAXLEN + 1];
+ bool remote;
+};
+
struct in_addr;
int og_dbi_get_computer_info(struct og_dbi *dbi, struct og_computer *computer,
struct in_addr addr);