diff options
author | David Sommerseth <dazo@users.sourceforge.net> | 2008-12-19 12:54:08 +0100 |
---|---|---|
committer | David Sommerseth <dazo@users.sourceforge.net> | 2008-12-19 12:54:08 +0100 |
commit | 25b869d4b5299eea0b1ab571ff69f0d9115619a8 (patch) | |
tree | 2595cdb24dc84dd08418c921cd8c681f787d0db8 | |
parent | 7a61aea700649c48c087d89425acca65a6f9b839 (diff) | |
download | eurephia-25b869d4b5299eea0b1ab571ff69f0d9115619a8.tar.gz eurephia-25b869d4b5299eea0b1ab571ff69f0d9115619a8.tar.xz eurephia-25b869d4b5299eea0b1ab571ff69f0d9115619a8.zip |
sqlite - admin: Added fetching blacklist info for user account.
-rw-r--r-- | database/sqlite/administration.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/database/sqlite/administration.c b/database/sqlite/administration.c index 079e49c..cb5bac7 100644 --- a/database/sqlite/administration.c +++ b/database/sqlite/administration.c @@ -629,6 +629,30 @@ xmlDoc *eDBadminGetUserInfo(eurephiaCTX *ctx, int getInfo, xmlDoc *srch) { sqlite_free_results(qres); } + if( (getInfo & USERINFO_blacklist) == USERINFO_blacklist ) { + xmlNode *atmpt = NULL; + + qres = sqlite_query(ctx, + "SELECT registered, last_accessed, blid" + " FROM openvpn_blacklist " + " WHERE username = '%q'", username); + + if( (qres == NULL) || (sqlite_get_numtuples(qres) > 1) ) { + eurephia_log(ctx, LOG_ERROR, 0, "Quering blacklist log failed"); + sqlite_free_results(qres); + xmlFreeDoc(doc); + return NULL; + } + + atmpt = xmlNewChild(root_n, NULL, (xmlChar *) "blacklist", NULL); + if( sqlite_get_numtuples(qres) == 1 ) { + sqlite_xml_value(atmpt, XML_ATTR, "blid", qres, 0, 2); + sqlite_xml_value(atmpt, XML_NODE, "blacklisted", qres, 0, 0); + sqlite_xml_value(atmpt, XML_NODE, "last_accessed", qres, 0, 1); + } + sqlite_free_results(qres); + } + sqlite_free_results(uinf); return doc; default: |