From 81701699ad78756a906bb2f8407ea99e749ef417 Mon Sep 17 00:00:00 2001 From: mar Date: Wed, 22 Sep 1993 11:49:55 +0000 Subject: [PATCH] added ShowUserById --- clients/moira/f_defs.h | 1 + clients/moira/menus.c | 7 +++++-- clients/moira/user.c | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/clients/moira/f_defs.h b/clients/moira/f_defs.h index 28024f59..163f1816 100644 --- a/clients/moira/f_defs.h +++ b/clients/moira/f_defs.h @@ -124,6 +124,7 @@ int DeleteQuota(); int ShowUserByLogin(); /* misc. ways to show user. */ int ShowUserByName(); int ShowUserByClass(); +int ShowUserById(); int AddNewUser(); /* add a new user to the database. */ int RegisterUser(); /* register a user. */ int UpdateUser(); /* modify info about a user. */ diff --git a/clients/moira/menus.c b/clients/moira/menus.c index d511ceab..1000ffeb 100644 --- a/clients/moira/menus.c +++ b/clients/moira/menus.c @@ -525,7 +525,11 @@ Menu user_menu = { {ShowUserByClass, NULLMENU, 2, { {"class", "Show names of users in a given class"}, {"login name", "Desired class: "} - } }, + } }, + {ShowUserById, NULLMENU, 2, { + {"id", "Show user information by ID number"}, + {"ID number", "ID number: "} + } }, {UpdateUser, NULLMENU, 2, { {"modify", "Change all user fields"}, {"login", "Login name: "} @@ -542,7 +546,6 @@ Menu user_menu = { {"login", "Login name: "} } }, SUBMENU("pobox", "Post Office Box Menu", &pobox_menu), - SUBMENU("quota", "Quota Menu", "a_menu), SUBMENU("krbmap", "User Kerberos Mappings", &krbmap_menu), } }; diff --git a/clients/moira/user.c b/clients/moira/user.c index b8dfabf6..c27c6435 100644 --- a/clients/moira/user.c +++ b/clients/moira/user.c @@ -40,6 +40,7 @@ #define UID 1 #define BY_NAME 2 #define CLASS 3 +#define ID 4 #define DEFAULT_SHELL "/bin/csh" #define DEFAULT_CLASS "?" @@ -416,6 +417,15 @@ char *name1, *name2; return (NULL); } break; + case ID: + args[0] = name1; + if ( (status = do_mr_query("get_user_account_by_id", 1, args, + StoreInfo, (char *) &elem)) != 0) { + com_err(program_name, status, + " when attempting to get_user_account_by_id."); + return (NULL); + } + break; } return( QueueTop(elem) ); } @@ -912,6 +922,28 @@ char **argv; } +/* Function Name: ShowUserById + * Description: Shows user information given an ID number. + * Arguments: argc, argv - ID number in argv[1]. + * Returns: DM_NORMAL + */ + +/* ARGSUSED */ +int +ShowUserById(argc, argv) +int argc; +char *argv[]; +{ + struct qelem *top, *elem; + + elem = top = GetUserInfo(ID, argv[1], (char *) NULL); + Loop(elem, PrintUserInfo); + + FreeQueue(top); + return (DM_NORMAL); +} + + /* Function Name: GetKrbmap * Description: Shows user <-> Kerberos mappings * Arguments: argc, argv - argv[1] contains the user login name, -- 2.45.2