aboutsummaryrefslogtreecommitdiff
path: root/src/server_reqs.c
diff options
context:
space:
mode:
authorFranklin Wei <frankhwei536@gmail.com>2016-01-09 12:37:26 -0500
committerFranklin Wei <frankhwei536@gmail.com>2016-01-09 12:37:26 -0500
commitf2b86b4f71ad248de5c85ae215ad3b18d3f589ab (patch)
tree78bf00f71ee90cb43e84896a81e01180aa15c213 /src/server_reqs.c
parent53e099a5c23707f167335233dcafcc335f97a4a2 (diff)
downloadnetcosm-f2b86b4f71ad248de5c85ae215ad3b18d3f589ab.zip
netcosm-f2b86b4f71ad248de5c85ae215ad3b18d3f589ab.tar.gz
netcosm-f2b86b4f71ad248de5c85ae215ad3b18d3f589ab.tar.bz2
netcosm-f2b86b4f71ad248de5c85ae215ad3b18d3f589ab.tar.xz
finish refactor into userdb
Diffstat (limited to 'src/server_reqs.c')
-rw-r--r--src/server_reqs.c25
1 files changed, 21 insertions, 4 deletions
diff --git a/src/server_reqs.c b/src/server_reqs.c
index 1501434..ac53396 100644
--- a/src/server_reqs.c
+++ b/src/server_reqs.c
@@ -184,10 +184,7 @@ static void req_send_user(unsigned char *data, size_t datalen, struct child_data
{
bool confirm = true;
write(sender->outpipe[1], &confirm, sizeof(confirm));
- send_string(sender->outpipe[1], user->username);
- send_string(sender->outpipe[1], user->salt);
- send_string(sender->outpipe[1], user->passhash);
- write(sender->outpipe[1], &user->priv, sizeof(user->priv));
+ write(sender->outpipe[1], user, sizeof(*user));
return;
}
@@ -200,6 +197,26 @@ static void req_send_user(unsigned char *data, size_t datalen, struct child_data
write(sender->outpipe[1], &fail, sizeof(fail));
}
+static void req_del_user(unsigned char *data, size_t datalen, struct child_data *sender)
+{
+ bool success = false;
+ if(datalen)
+ {
+ success = userdb_remove((char*)data);
+ }
+ write(sender->outpipe[1], &success, sizeof(success));
+}
+
+static void req_add_user(unsigned char *data, size_t datalen, struct child_data *sender)
+{
+ bool success = false;
+ if(datalen == sizeof(struct userdata_t))
+ {
+ success = userdb_add((struct userdata_t*)data);
+ }
+ write(sender->outpipe[1], &success, sizeof(success));
+}
+
static const struct child_request {
unsigned char code;