summaryrefslogtreecommitdiffstats
path: root/eurephiadm
diff options
context:
space:
mode:
authorDavid Sommerseth <dazo@users.sourceforge.net>2009-03-31 23:45:03 +0200
committerDavid Sommerseth <dazo@users.sourceforge.net>2009-03-31 23:45:03 +0200
commitafdfa16296a9879c6c8fa1e0b8aebe8d1cddc2d6 (patch)
tree3c21cb027635a335034e0b332a72cc381b4deb60 /eurephiadm
parente729a4b80c79a80b9acfd58c0f45707572eb1861 (diff)
downloadeurephia-afdfa16296a9879c6c8fa1e0b8aebe8d1cddc2d6.tar.gz
eurephia-afdfa16296a9879c6c8fa1e0b8aebe8d1cddc2d6.tar.xz
eurephia-afdfa16296a9879c6c8fa1e0b8aebe8d1cddc2d6.zip
Rewrote eurephiadm/adminaccess to use XSLT for listing
Diffstat (limited to 'eurephiadm')
-rw-r--r--eurephiadm/commands/adminaccess.c37
1 files changed, 3 insertions, 34 deletions
diff --git a/eurephiadm/commands/adminaccess.c b/eurephiadm/commands/adminaccess.c
index 79c8a71..056b314 100644
--- a/eurephiadm/commands/adminaccess.c
+++ b/eurephiadm/commands/adminaccess.c
@@ -43,7 +43,7 @@
#include "../argparser.h"
#include "../field_print.h"
-
+#include "../xsltparser.h"
void display_adminaccess_help(int page) {
switch( page ) {
@@ -105,7 +105,7 @@ int help_AdminAccess2(eurephiaCTX *ctx, eurephiaSESSION *sess, eurephiaVALUES *c
int list_adminaccess(eurephiaCTX *ctx, eurephiaSESSION *sess, eurephiaVALUES *cfg, int argc, char **argv) {
xmlDoc *list_xml = NULL, *srch_xml = NULL;
- xmlNode *list_n = NULL, *srch_n = NULL, *tmp_n = NULL, *acl_n = NULL;
+ xmlNode *srch_n = NULL, *tmp_n = NULL;
int i = 0;
char *uid = NULL, *username = NULL, *intf = NULL, *acl = NULL;
@@ -172,38 +172,7 @@ int list_adminaccess(eurephiaCTX *ctx, eurephiaSESSION *sess, eurephiaVALUES *cf
return 1;
}
- list_n = eurephiaXML_getRoot(ctx, list_xml, "admin_access_list", 1);
- if( list_n == NULL ) {
- fprintf(stderr, "%s: Error retrieving user access list\n", MODULE);
- xmlFreeDoc(list_xml);
- return 1;
- }
-
- printf(" [uid] Username Intf. Access level\n");
- printf("----------------------------------------------------------------------------\n");
- for( list_n = list_n->children; list_n != NULL; list_n = list_n->next ) {
- tmp_n = xmlFindNode(list_n, "username");
- printf(" [%3.3s] %-30.30s ",
- xmlGetAttrValue(tmp_n->properties, "uid"),
- xmlGetNodeContent(list_n, "username"));
-
- int first = 1;
- acl_n = xmlFindNode(list_n, "access_levels");
- for( acl_n = acl_n->children ; acl_n != NULL; acl_n = acl_n->next ) {
- if( !first ) {
- printf(" ");
- } else {
- first = 0;
- }
- printf("%s %s\n",
- xmlGetAttrValue(acl_n->properties, "interface"),
- acl_n->children->content);
- }
- if( list_n->next != NULL ) {
- printf("\n");
- }
- }
- printf("----------------------------------------------------------------------------\n");
+ xslt_print_xmldoc(stdout, cfg, list_xml, "adminaccess.xsl", NULL);
xmlFreeDoc(list_xml);
return 0;
}