Loading client/client.cpp +48 −0 Changes for client/client.cpp: 48 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -326,6 +326,12 @@ bool Client::UserAuth() { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp("sessionid", key) == 0) { _Con._SessionID = json_object_get_string(val); json_object_put(jrequest); Loading Loading @@ -393,6 +399,12 @@ void Client::SessionInfo(class SessionData& sdat) { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp("sessioninfo", key) == 0) { sdat._sid = json_object_get_string(json_object_object_get(val, "sessionid")); sdat._uid = json_object_get_string(json_object_object_get(val, "userid")); Loading Loading @@ -460,6 +472,12 @@ bool Client::remSession() { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp(key, "remsession") == 0) { const char* removed = json_object_get_string(val); ok = (removed && _Con.getSessionID() == removed); Loading Loading @@ -556,6 +574,12 @@ void Client::UserInfo(class UserData& udat) { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp("userinfo", key) == 0) { json_object* jobj = nullptr; if (json_object_object_get_ex(val, "username", &jobj)) { Loading Loading @@ -653,6 +677,12 @@ bool Client::GPOcheck(class ::uuid::uuid gpoid) { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp(key, "gpo") == 0) { json_object* v = json_object_object_get(val, gpoid.c_str()); if (v) ret = json_object_get_boolean(v); Loading Loading @@ -707,6 +737,12 @@ std::string Client::addConnection(const std::string& clientname, const std::stri int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp(key, "addclient") == 0) { result = json_object_get_string(val); } Loading Loading @@ -929,6 +965,12 @@ bool Client::GPOexits(class uuid::uuid gpoid) { // keeping name for compatibilit int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp(key, "gpoexists") == 0) { json_object* v = json_object_object_get(val, gpoid.c_str()); if (v) ret = json_object_get_boolean(v); Loading Loading @@ -990,6 +1032,12 @@ std::vector<Client::GroupInfo> Client::listGroups() { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp(key, "groups") == 0 && json_object_get_type(val) == json_type_array) { int glen = json_object_array_length(val); for (int g = 0; g < glen; ++g) { Loading Loading
client/client.cpp +48 −0 Changes for client/client.cpp: 48 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -326,6 +326,12 @@ bool Client::UserAuth() { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp("sessionid", key) == 0) { _Con._SessionID = json_object_get_string(val); json_object_put(jrequest); Loading Loading @@ -393,6 +399,12 @@ void Client::SessionInfo(class SessionData& sdat) { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp("sessioninfo", key) == 0) { sdat._sid = json_object_get_string(json_object_object_get(val, "sessionid")); sdat._uid = json_object_get_string(json_object_object_get(val, "userid")); Loading Loading @@ -460,6 +472,12 @@ bool Client::remSession() { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp(key, "remsession") == 0) { const char* removed = json_object_get_string(val); ok = (removed && _Con.getSessionID() == removed); Loading Loading @@ -556,6 +574,12 @@ void Client::UserInfo(class UserData& udat) { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp("userinfo", key) == 0) { json_object* jobj = nullptr; if (json_object_object_get_ex(val, "username", &jobj)) { Loading Loading @@ -653,6 +677,12 @@ bool Client::GPOcheck(class ::uuid::uuid gpoid) { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp(key, "gpo") == 0) { json_object* v = json_object_object_get(val, gpoid.c_str()); if (v) ret = json_object_get_boolean(v); Loading Loading @@ -707,6 +737,12 @@ std::string Client::addConnection(const std::string& clientname, const std::stri int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp(key, "addclient") == 0) { result = json_object_get_string(val); } Loading Loading @@ -929,6 +965,12 @@ bool Client::GPOexits(class uuid::uuid gpoid) { // keeping name for compatibilit int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp(key, "gpoexists") == 0) { json_object* v = json_object_object_get(val, gpoid.c_str()); if (v) ret = json_object_get_boolean(v); Loading Loading @@ -990,6 +1032,12 @@ std::vector<Client::GroupInfo> Client::listGroups() { int fcount = json_object_array_length(jrequest); for (int i = 0; i < fcount; ++i) { json_object_object_foreach(json_object_array_get_idx(jrequest, i), key, val) { if (strcmp(key, "error") == 0) { std::string msg = json_object_get_string(val); json_object_put(jrequest); json_tokener_free(jtok); throw authdb::AuthBackendError(msg); } if (strcmp(key, "groups") == 0 && json_object_get_type(val) == json_type_array) { int glen = json_object_array_length(val); for (int g = 0; g < glen; ++g) { Loading