int DeleteNFSService(int argc, char **argv) { int stat; struct mqelem *elem = NULL; char *args[10]; if (!ValidName(argv[1])) return DM_NORMAL; args[0] = canonicalize_hostname(strdup(argv[1])); args[1] = strdup(DEFAULT_DIR); if (GetValueFromUser("Directory:", &args[1]) == SUB_ERROR) return DM_NORMAL; switch ((stat = do_mr_query("get_nfsphys", 2, args, StoreInfo, &elem))) { case MR_NO_MATCH: Put_message("This filsystem does not exist!"); return DM_NORMAL; case MR_SUCCESS: break; default: com_err(program_name, stat, " in DeleteNFSService"); return DM_NORMAL; } free(args[0]); free(args[1]); /* stop memory leaks, in your neighborhood. */ QueryLoop(elem, PrintNFSInfo, RealDeleteNFSService, "Delete the Physical Filesystem on Directory"); FreeQueue(elem); return DM_NORMAL; }
int ChngPrn(int argc, char **argv) { struct mqelem *elem = GetPrnInfo(argv[1], BY_NAME); QueryLoop(elem, NullPrint, ChangePrn, "Change the printer"); FreeQueue(elem); return DM_NORMAL; }
int UpdateNFSService(int argc, char **argv) { int stat; struct mqelem *elem = NULL; char *args[10]; if (!ValidName(argv[1])) return DM_NORMAL; args[0] = canonicalize_hostname(strdup(argv[1])); args[1] = strdup(DEFAULT_DIR); if (GetValueFromUser("Directory:", &args[1]) == SUB_ERROR) return DM_NORMAL; if ((stat = do_mr_query("get_nfsphys", 2, args, StoreInfo, &elem))) { com_err(program_name, stat, " in UpdateNFSService."); return DM_NORMAL; } free(args[0]); free(args[1]); /* stop memory leaks. */ elem = QueueTop(elem); QueryLoop(elem, UpdatePrint, RealUpdateNFSService, "Update NFS Service for"); FreeQueue(elem); return DM_NORMAL; }
int DeleteACL(int argc, char **argv) { struct mqelem *elem = GetACLInfo(argv[1], argv[2]); QueryLoop(elem, PrintACLInfo, RealDeleteACL, "Delete ACL"); FreeQueue(elem); return DM_NORMAL; }
int DeletePrn(int argc, char **argv) { struct mqelem *elem = GetPrnInfo(argv[1], BY_NAME); QueryLoop(elem, PrintPrnInfo, RealDeletePrn, "Delete Printer"); FreeQueue(elem); return DM_NORMAL; }
int ChangeFS(int argc, char **argv) { struct mqelem *elem = GetFSInfo(LABEL, argv[1]); QueryLoop(elem, NullPrint, RealChangeFS, "Update the Filesystem"); FreeQueue(elem); return DM_NORMAL; }
int DeleteFS(int argc, char **argv) { struct mqelem *elem = GetFSInfo(LABEL, argv[1]); QueryLoop(elem, PrintFSInfo, RealDeleteFS, "Delete the Filesystem"); FreeQueue(elem); return DM_NORMAL; }
int DeleteFSAlias(int argc, char **argv) { struct mqelem *elem = GetFSInfo(ALIAS, argv[1]); QueryLoop(elem, PrintFSAlias, RealDeleteFSAlias, "Delete the Filesystem Alias"); FreeQueue(elem); return DM_NORMAL; }
int UpdateList(int argc, char **argv) { struct mqelem *top; top = GetListInfo(LIST, argv[1], (char *) NULL); QueryLoop(top, NullPrint, RealUpdateList, "Update the list"); FreeQueue(top); return DM_NORMAL; }
int DeactivateUser(int argc, char **argv) { struct mqelem *elem; elem = GetUserInfo(LOGIN, argv[1], NULL); QueryLoop(elem, NullPrint, RealDeactivateUser, "Deactivate user"); FreeQueue(elem); return DM_NORMAL; }
int ChangePrintSrv(int argc, char **argv) { char *name; struct mqelem *elem = NULL; int stat; name = canonicalize_hostname(strdup(argv[1])); if ((stat = do_mr_query("get_print_server", 1, &name, StoreInfo, &elem))) { free(name); com_err(program_name, stat, " in ChangePrintSrv"); return DM_NORMAL; } free(name); QueryLoop(elem, NullPrint, ChangePrintSrvLoop, "Change the print server"); FreeQueue(elem); return DM_NORMAL; }