From 06880048df2202b1828e5367b1697aee305a2358 Mon Sep 17 00:00:00 2001 From: Franklin Wei Date: Sat, 9 Jan 2016 12:37:26 -0500 Subject: finish refactor into userdb --- src/server_reqs.c | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) (limited to 'src/server_reqs.c') 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; -- cgit v1.1