]>
Commit | Line | Data |
---|---|---|
402461ad | 1 | #if (!defined(lint) && !defined(SABER)) |
08345b74 | 2 | static char rcsid_module_c[] = "$Header$"; |
3 | #endif lint | |
4 | ||
8defc06b | 5 | /* This is the file menus.c for the MOIRA Client, which allows a nieve |
6 | * user to quickly and easily maintain most parts of the MOIRA database. | |
0a2c64cb | 7 | * It Contains: All menu definitions. |
08345b74 | 8 | * |
9 | * Created: 4/11/88 | |
10 | * By: Chris D. Peterson | |
11 | * | |
12 | * $Source$ | |
13 | * $Author$ | |
14 | * $Header$ | |
15 | * | |
0a2c64cb | 16 | * Copyright 1988 by the Massachusetts Institute of Technology. |
08345b74 | 17 | * |
18 | * For further information on copyright and distribution | |
19 | * see the file mit-copyright.h | |
20 | */ | |
21 | ||
22 | #include <stdio.h> | |
23 | #include <menu.h> | |
461c03b6 | 24 | |
08345b74 | 25 | #include "mit-copyright.h" |
0a2c64cb | 26 | #include "defs.h" |
27 | #include "f_defs.h" | |
461c03b6 | 28 | #include "globals.h" |
08345b74 | 29 | |
e532b848 | 30 | |
0a2c64cb | 31 | /* ------------------------- Second Tier Menus ------------------------- */ |
32 | ||
33 | /* | |
34 | * Cluster Data Menu | |
08345b74 | 35 | */ |
36 | ||
0a2c64cb | 37 | Menu cluster_data_menu = { |
38 | NULLFUNC, | |
39 | NULLFUNC, | |
40 | "Cluster Data Menu", | |
461c03b6 | 41 | 4, |
08345b74 | 42 | { |
0a2c64cb | 43 | { ShowClusterData, NULLMENU, 3, { |
44 | {"show", "Show Data on a given Cluster"}, | |
45 | {"clus", "Cluster's Name: "}, | |
46 | {"label", "Label Identifing the data: "}, | |
08345b74 | 47 | } }, |
0a2c64cb | 48 | { AddClusterData, NULLMENU, 4, { |
49 | {"add", "Add Data to a given Cluster"}, | |
50 | {"clus", "Cluster Name: "}, | |
51 | {"label", "Label Identifing the data: "}, | |
52 | {"data", "The data to be added: "}, | |
08345b74 | 53 | } }, |
b356ed19 | 54 | { RemoveClusterData, NULLMENU, 3, { |
9580b30a | 55 | {"delete", "Remove Data from a given Cluster"}, |
0a2c64cb | 56 | {"clus", "Cluster's Name: "}, |
57 | {"label", "Label Identifing the data: "}, | |
0a2c64cb | 58 | } }, |
59 | SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode) | |
08345b74 | 60 | } |
61 | }; | |
62 | ||
0a2c64cb | 63 | /* |
64 | * List Information Menu | |
65 | */ | |
66 | ||
67 | Menu list_info_menu = { | |
68 | NULLFUNC, | |
69 | NULLFUNC, | |
70 | "List Information Menu", | |
be4d44bb | 71 | 3, |
0a2c64cb | 72 | { |
73 | SIMPLEFUNC("member", | |
74 | "Show all lists to which a given member belongs", | |
75 | ListByMember), | |
76 | SIMPLEFUNC("admin", | |
77 | "Show all items which a given member can administer", | |
78 | ListByAdministrator), | |
0a2c64cb | 79 | SIMPLEFUNC("public", "Show all public mailing lists", |
80 | ListAllPublicMailLists), | |
0a2c64cb | 81 | } |
82 | }; | |
83 | ||
84 | /* | |
85 | * List Member Menu | |
86 | */ | |
87 | ||
88 | Menu list_member_menu = { | |
89 | ListmaintMemberMenuEntry, | |
90 | ListmaintMemberMenuExit, | |
91 | NULL, | |
92 | 7, | |
93 | { | |
94 | SIMPLEFUNC("add", "Add a member to this list", AddMember), | |
95 | SIMPLEFUNC("remove", "Remove a member from this list", DeleteMember), | |
96 | SIMPLEFUNC("all", "Show the members of this list", ListAllMembers), | |
97 | SIMPLEFUNC("user", "Show the members of type USER", ListUserMembers), | |
98 | SIMPLEFUNC("list", "Show the members of type LIST", ListListMembers), | |
99 | SIMPLEFUNC("string", "Show the members of type STRING", | |
100 | ListStringMembers), | |
101 | SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode) | |
102 | } | |
08345b74 | 103 | }; |
104 | ||
105 | /* | |
0a2c64cb | 106 | * Machine To Cluster Mappings Menu |
08345b74 | 107 | */ |
108 | ||
0a2c64cb | 109 | Menu mappings_menu = { |
08345b74 | 110 | NULLFUNC, |
111 | NULLFUNC, | |
0a2c64cb | 112 | "Machine To Cluster Mappings Menu", |
113 | 4, | |
08345b74 | 114 | { |
461c03b6 | 115 | { MachineToClusterMap, NULLMENU, 3, { |
85ca828a | 116 | {"map", "Show Machine to cluster mapping"}, |
117 | {"name", "Machine's Name: "}, | |
118 | {"cluster", "Cluster's Name: "}, | |
461c03b6 | 119 | } }, |
08345b74 | 120 | { AddMachineToCluster, NULLMENU, 3, { |
eab61ecd | 121 | {"addcluster","Add machine to a cluster"}, |
08345b74 | 122 | {"name","Machine's Name: "}, |
85ca828a | 123 | {"cluster", "Cluster's Name: "}, |
08345b74 | 124 | } }, |
85ca828a | 125 | { RemoveMachineFromCluster, NULLMENU, 3, { |
126 | {"remcluster", "Remove machines from clusters"}, | |
08345b74 | 127 | {"name","Machine's Name: "}, |
85ca828a | 128 | {"cluster", "Cluster's Name: "}, |
08345b74 | 129 | } }, |
0a2c64cb | 130 | SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode), |
08345b74 | 131 | } |
132 | }; | |
133 | ||
0a2c64cb | 134 | /* |
135 | * Post Office Box Menu | |
136 | */ | |
137 | ||
138 | Menu pobox_menu = { | |
08345b74 | 139 | NULLFUNC, |
140 | NULLFUNC, | |
0a2c64cb | 141 | "Post Office Box Menu", |
142 | 4, | |
143 | { | |
144 | {GetUserPOBox, NULLMENU, 2, { | |
145 | {"show", "Show a user's post office box"}, | |
146 | {"login name", "login name: "} | |
147 | } }, | |
148 | {SetUserPOBox, NULLMENU, 2, { | |
149 | {"set", "Set (Add or Change) a user's post office box"}, | |
150 | {"login name", "login name: "} | |
151 | } }, | |
152 | {RemoveUserPOBox, NULLMENU, 2, { | |
153 | {"remove", "Remove a user's post office box"}, | |
154 | {"login name", "login name: "} | |
155 | } }, | |
156 | SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode) | |
157 | } | |
158 | }; | |
159 | ||
160 | /* | |
161 | * Quota Menu | |
162 | */ | |
163 | ||
164 | Menu quota_menu = { | |
165 | NULLFUNC, | |
166 | NULLFUNC, | |
167 | "Quota Menu", | |
9550857c | 168 | 8, |
0a2c64cb | 169 | { |
170 | SIMPLEFUNC("shdef", "Show default user quota (in KB)", ShowDefaultQuota), | |
171 | {ChangeDefaultQuota, NULLMENU, 2, { | |
172 | {"chdef", "Change default user quota"}, | |
173 | {"quota", "New quota (in KB): "} | |
174 | } }, | |
9550857c | 175 | SIMPLEFUNC("getquota", "Show a quota on a filesystem", |
176 | GetQuota), | |
177 | SIMPLEFUNC("getfsquotas", "Show all quotas on a filesystem", | |
178 | GetQuotaByFilesys), | |
179 | SIMPLEFUNC("addquota", "Add a new disk quota on a filesystem", | |
180 | AddQuota), | |
181 | SIMPLEFUNC("upquota", "Change a quota on a filesystem", | |
182 | UpdateQuota), | |
183 | SIMPLEFUNC("delquota", "Delete a quota on a filesystem", | |
184 | DeleteQuota), | |
0a2c64cb | 185 | SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode) |
186 | } | |
187 | }; | |
188 | ||
6ef64e43 | 189 | Menu fsgroup_menu = { |
190 | NULLFUNC, | |
191 | NULLFUNC, | |
192 | "Filesystem Group Menu", | |
193 | 6, | |
194 | { | |
195 | { GetFS, NULLMENU, 2, { | |
196 | {"get", "Get individual or group filesystem information"}, | |
197 | {"name", "Name of Filesystem: "} | |
198 | } }, | |
199 | { AddFSToGroup, NULLMENU, 3, { | |
200 | {"add", "Add a new filesystem to an FS group"}, | |
939cd9de | 201 | {"group", "FS Group name: "}, |
202 | {"filsys", "Filesystem name: "} | |
6ef64e43 | 203 | } }, |
204 | { RemoveFSFromGroup, NULLMENU, 3, { | |
205 | {"remove", "Remove a filesystem from an FS group"}, | |
939cd9de | 206 | {"group", "FS Group name: "}, |
207 | {"filsys", "Filesystem name: "} | |
6ef64e43 | 208 | } }, |
209 | { ChangeFSGroupOrder, NULLMENU, 2, { | |
210 | {"order", "Change the order of filesystems in a group"}, | |
939cd9de | 211 | {"group", "FS Group name: "} |
6ef64e43 | 212 | } }, |
213 | SIMPLEFUNC("help", "Info on Filesystem Groups", FSGroupHelp), | |
214 | SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode) | |
215 | } | |
216 | }; | |
217 | ||
e532b848 | 218 | Menu service_menu = { |
219 | NULLFUNC, | |
220 | NULLFUNC, | |
221 | "DCM Service Menu", | |
222 | 6, | |
223 | { | |
224 | { showserv, NULLMENU, 2, { | |
225 | { "showserv", "Show service information" }, | |
226 | { "service name", "Name of service: " }, | |
227 | } }, | |
228 | { addserv, NULLMENU, 2, { | |
229 | { "addserv", "Add a new service" }, | |
230 | { "service name", "Name of service: " }, | |
231 | } }, | |
232 | { updateserv, NULLMENU, 2, { | |
233 | { "updateserv", "Update service information" }, | |
234 | { "service name", "Name of service: " }, | |
235 | } }, | |
236 | { resetsrverr, NULLMENU, 2, { | |
237 | { "resetsrverr", "Reset service error" }, | |
238 | { "service name", "Name of service: " }, | |
239 | } }, | |
240 | { resetsrvc, NULLMENU, 2, { | |
241 | { "resetsrvc", "Reset service state" }, | |
242 | { "service name", "Name of service: " }, | |
243 | } }, | |
244 | { delserv, NULLMENU, 2, { | |
245 | { "delserv", "Delete service info" }, | |
246 | { "service name", "Name of service: " }, | |
247 | } }, | |
248 | } | |
249 | }; | |
250 | ||
251 | Menu host_menu = { | |
252 | NULLFUNC, | |
253 | NULLFUNC, | |
254 | "DCM Host Menu", | |
255 | 7, | |
256 | { | |
257 | { showhost, NULLMENU, 3, { | |
258 | { "showhost", "Show service/host tuple information" }, | |
259 | { "service name", "Name of service: " }, | |
260 | { "host name", "Name of machine: " }, | |
261 | } }, | |
262 | { addhost, NULLMENU, 3, { | |
263 | { "addhost", "Add a new service/host tuple" }, | |
264 | { "service name", "Name of service: " }, | |
265 | { "host name", "Name of machine: " }, | |
266 | } }, | |
267 | { updatehost, NULLMENU, 3, { | |
268 | { "updatehost", "Update a service/host tuple" }, | |
269 | { "service name", "Name of service: " }, | |
270 | { "host name", "Name of machine: " }, | |
271 | } }, | |
272 | { resethosterr, NULLMENU, 3, { | |
273 | { "resethosterr", "Reset service/host error" }, | |
274 | { "service name", "Name of service: " }, | |
275 | { "host name", "Name of machine: " }, | |
276 | } }, | |
277 | { resethost, NULLMENU, 3, { | |
278 | { "resethost", "Reset service/host state" }, | |
279 | { "service name", "Name of service: " }, | |
280 | { "host name", "Name of machine: " }, | |
281 | } }, | |
282 | { sethostor, NULLMENU, 3, { | |
283 | { "override", "Set service/host override" }, | |
284 | { "service name", "Name of service: " }, | |
285 | { "host name", "Name of machine: " }, | |
286 | } }, | |
287 | { delhost, NULLMENU, 3, { | |
288 | { "delhost", "Delete service/host tuple" }, | |
289 | { "service name", "Name of service: " }, | |
290 | { "host name", "Name of machine: " }, | |
291 | } }, | |
292 | } | |
293 | }; | |
294 | ||
0a2c64cb | 295 | /* ------------------------- First Tier Menus ------------------------- */ |
296 | ||
297 | /* | |
298 | * Cluster Menu | |
299 | */ | |
300 | ||
301 | Menu cluster_menu = { | |
302 | NULLFUNC, | |
303 | NULLFUNC, | |
304 | "Cluster Menu", | |
85ca828a | 305 | 7, |
08345b74 | 306 | { |
307 | { ShowClusterInfo, NULLMENU, 2, { | |
85ca828a | 308 | {"show", "Get cluster information"}, |
08345b74 | 309 | {"name", "Cluster's Name: "} |
310 | } }, | |
08345b74 | 311 | { AddCluster, NULLMENU, 2, { |
85ca828a | 312 | {"add", "Add a new cluster"}, |
08345b74 | 313 | {"name","Cluster's Name: "}, |
314 | } }, | |
315 | { UpdateCluster, NULLMENU, 2, { | |
85ca828a | 316 | {"update", "Update cluster information"}, |
08345b74 | 317 | {"name","Cluster's Name: "}, |
318 | } }, | |
08345b74 | 319 | { DeleteCluster, NULLMENU, 2, { |
85ca828a | 320 | {"delete", "Delete this cluster"}, |
08345b74 | 321 | {"name", "Cluster's Name: "} |
322 | } }, | |
0a2c64cb | 323 | SUBMENU("mappings","Machine To Cluster Mappings Menu", &mappings_menu), |
324 | SUBMENU("c_data","Cluster Data Menu", &cluster_data_menu), | |
325 | SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode) | |
08345b74 | 326 | } |
327 | }; | |
328 | ||
0a2c64cb | 329 | /* |
330 | * Filesystem Menu | |
331 | */ | |
332 | ||
333 | Menu filesys_menu = { | |
334 | NULLFUNC, | |
335 | NULLFUNC, | |
336 | "Filesystem Menu", | |
48dc73fa | 337 | 10, |
08345b74 | 338 | { |
0a2c64cb | 339 | { GetFS, NULLMENU, 2, { |
340 | {"get", "Get Filesystem Name Information"}, | |
341 | {"name", "Name of Filesystem: "} | |
08345b74 | 342 | } }, |
48dc73fa | 343 | { GetFSM, NULLMENU, 2, { |
344 | {"getmach", "Get Filesystems by Machine"}, | |
345 | {"name", "Name of Server: "} | |
346 | } }, | |
0a2c64cb | 347 | { AddFS, NULLMENU, 2, { |
348 | {"add", "Add New Filesystem to Database"}, | |
349 | {"name", "name: "}, | |
08345b74 | 350 | } }, |
0a2c64cb | 351 | { ChangeFS, NULLMENU, 2, { |
352 | {"change", "Update Filesystem Information"}, | |
353 | {"name", "name: "}, | |
354 | } }, | |
355 | { DeleteFS, NULLMENU, 2, { | |
356 | {"delete", "Delete Filesystem"}, | |
357 | {"name", "Filesystem Name: "} | |
358 | } }, | |
6ef64e43 | 359 | SUBMENU("fsgroups", "File System Groups Menu", &fsgroup_menu), |
0a2c64cb | 360 | { GetFSAlias, NULLMENU, 2, { |
361 | {"check", "Check An Association"}, | |
362 | {"name", "alias name : "} | |
363 | } }, | |
364 | { CreateFSAlias, NULLMENU, 2, { | |
365 | {"alias", "Associate with a Filesystem"}, | |
366 | {"name", "alias name : "}, | |
367 | } }, | |
368 | { DeleteFSAlias, NULLMENU, 2, { | |
369 | {"unalias", "Disassociate from a Filesystem"}, | |
370 | {"name", "alias name : "}, | |
08345b74 | 371 | } }, |
0a2c64cb | 372 | SUBMENU("quotas","Quota Menu", "a_menu), |
6ef64e43 | 373 | /* SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode), */ |
374 | /* SIMPLEFUNC("help", "Help ..", AttachHelp) */ | |
08345b74 | 375 | } |
376 | }; | |
377 | ||
ad7e0e04 | 378 | Menu subnet_menu = { |
379 | NULLFUNC, | |
380 | NULLFUNC, | |
62eb195e | 381 | "Network Menu", |
ad7e0e04 | 382 | 5, |
383 | { | |
384 | { ShowSubnetInfo, NULLMENU, 2, { | |
62eb195e | 385 | {"show","Get network information"}, |
386 | {"name","Network's Name: "} | |
ad7e0e04 | 387 | } }, |
388 | { AddSubnet, NULLMENU, 2, { | |
62eb195e | 389 | {"add","Add a new network"}, |
390 | {"name","Network's Name: "}, | |
ad7e0e04 | 391 | } }, |
392 | { UpdateSubnet, NULLMENU, 2, { | |
62eb195e | 393 | {"update","Update network information"}, |
394 | {"name","Network's Name: "}, | |
ad7e0e04 | 395 | } }, |
396 | { DeleteSubnet, NULLMENU, 2, { | |
62eb195e | 397 | {"delete","Delete this network"}, |
398 | {"name","Network's Name: "} | |
ad7e0e04 | 399 | } }, |
400 | SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode) | |
401 | } | |
402 | }; | |
403 | ||
404 | Menu cname_menu = { | |
405 | NULLFUNC, | |
406 | NULLFUNC, | |
407 | "Host Alias Menu", | |
408 | 4, | |
409 | { | |
410 | { ShowCname, NULLMENU, 3, { | |
411 | {"show","Get host alias information"}, | |
412 | {"alias","Alias Name (Cname): "}, | |
413 | {"host","Canonical Host Name: "} | |
414 | } }, | |
415 | { AddCname, NULLMENU, 3, { | |
416 | {"add","Add a new host alias"}, | |
417 | {"alias","Alias Name (Cname): "}, | |
418 | {"host","Canonical Host Name: "} | |
419 | } }, | |
420 | { DeleteCname, NULLMENU, 3, { | |
421 | {"delete","Delete this alias"}, | |
422 | {"alias","Alias Name (Cname): "}, | |
423 | {"host","Canonical Host Name: "} | |
424 | } }, | |
425 | SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode) | |
426 | } | |
427 | }; | |
428 | ||
08345b74 | 429 | /* |
0a2c64cb | 430 | * Machine Menu |
08345b74 | 431 | */ |
432 | ||
0a2c64cb | 433 | Menu machine_menu = { |
08345b74 | 434 | NULLFUNC, |
435 | NULLFUNC, | |
0a2c64cb | 436 | "Machine Menu", |
ad7e0e04 | 437 | 7, |
08345b74 | 438 | { |
0a2c64cb | 439 | { ShowMachineInfo, NULLMENU, 2, { |
440 | {"show","Get machine information"}, | |
441 | {"name","Machine's Name: "} | |
442 | } }, | |
62eb195e | 443 | { ShowMachineQuery, NULLMENU, 4, { |
ad7e0e04 | 444 | {"query", "Lookup machines"}, |
445 | {"name", "Machine Name (or leave empty to match any): "}, | |
446 | {"address", "Address in dotted notation (or leave empty to match any): "}, | |
447 | {"location", "Location (or leave empty to match any): "}, | |
448 | {"contact", "Contact person (or leave empty to match any): "} | |
449 | } }, | |
0a2c64cb | 450 | { AddMachine, NULLMENU, 2, { |
451 | {"add","Add a new machine"}, | |
62eb195e | 452 | {"network","Network assignment: "}, |
0a2c64cb | 453 | } }, |
454 | { UpdateMachine, NULLMENU, 2, { | |
455 | {"update","Update machine information"}, | |
456 | {"name","Machine's Name: "}, | |
457 | } }, | |
458 | { DeleteMachine, NULLMENU, 2, { | |
459 | {"delete","Delete this machine"}, | |
460 | {"name","Machine's Name: "} | |
461 | } }, | |
ad7e0e04 | 462 | SUBMENU("cnames","Alias names for machines", &cname_menu), |
0a2c64cb | 463 | SUBMENU("mappings","Machine To Cluster Mappings Menu", &mappings_menu), |
08345b74 | 464 | } |
465 | }; | |
466 | ||
08345b74 | 467 | /* |
0a2c64cb | 468 | * List Menu |
08345b74 | 469 | */ |
470 | ||
0a2c64cb | 471 | Menu list_menu = { |
08345b74 | 472 | NULLFUNC, |
473 | NULLFUNC, | |
0a2c64cb | 474 | "List Menu", |
6ef64e43 | 475 | 9, |
08345b74 | 476 | { |
08345b74 | 477 | { ShowListInfo, NULLMENU, 2, { |
478 | {"show", "Display information about a list"}, | |
479 | {"list name", "Name of list: "} | |
480 | } }, | |
0a2c64cb | 481 | { NULLFUNC, &list_member_menu, 2, { |
85ca828a | 482 | {"add", "Create new List"}, |
402461ad | 483 | {"list name", "Name of list: "} |
85ca828a | 484 | } }, |
461c03b6 | 485 | { UpdateList, NULLMENU, 2, { |
08345b74 | 486 | {"update", "Update characteristics of a list"}, |
487 | {"list name", "Name of list: "} | |
488 | } }, | |
85ca828a | 489 | { DeleteList, NULLMENU, 2, { |
490 | {"delete", "Delete a List"}, | |
491 | {"list name", "Name of list: "} | |
492 | } }, | |
461c03b6 | 493 | SIMPLEFUNC("query_remove", |
494 | "Interactively remove an item from all lists", | |
495 | InterRemoveItemFromLists), | |
0a2c64cb | 496 | { NULLFUNC, &list_member_menu, 2, { |
497 | {"members", "Member Menu - Change/Show Members of a List."}, | |
498 | {"list name", "Name of list: "} | |
499 | } }, | |
500 | SUBMENU("list_info", "List Info Menu", | |
501 | &list_info_menu), | |
502 | SUBMENU("quotas","Quota Menu", "a_menu), | |
6ef64e43 | 503 | /* SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode), */ |
0a2c64cb | 504 | SIMPLEFUNC("help", "Print Help", ListHelp) |
08345b74 | 505 | } |
506 | }; | |
507 | ||
508 | /* | |
0a2c64cb | 509 | * NFS Physical Menu |
08345b74 | 510 | */ |
511 | ||
0a2c64cb | 512 | Menu nfsphys_menu = { |
08345b74 | 513 | NULLFUNC, |
514 | NULLFUNC, | |
0a2c64cb | 515 | "NFS Physical Menu", |
516 | 6, | |
08345b74 | 517 | { |
075fe5bb | 518 | { ShowNFSService, NULLMENU, 2, { |
85ca828a | 519 | { "show", "Show an NFS server" }, |
08345b74 | 520 | { "machine", "Machine Name: "}, |
08345b74 | 521 | } }, |
075fe5bb | 522 | { AddNFSService, NULLMENU, 2, { |
08345b74 | 523 | { "add", "Add NFS server" }, |
524 | { "machine", "Machine Name: "}, | |
08345b74 | 525 | } }, |
075fe5bb | 526 | { UpdateNFSService, NULLMENU, 2, { |
08345b74 | 527 | { "update", "Update NFS server"}, |
528 | { "machine", "Machine Name: "}, | |
08345b74 | 529 | } }, |
075fe5bb | 530 | { DeleteNFSService, NULLMENU, 2, { |
08345b74 | 531 | { "delete", "Delete NFS server"}, |
532 | {"machine", "Machine Name: "}, | |
08345b74 | 533 | } }, |
0a2c64cb | 534 | SUBMENU("quotas","Quota Menu", "a_menu), |
08345b74 | 535 | SIMPLEFUNC("verbose", "Toggle Verbosity of Delete", ToggleVerboseMode), |
461c03b6 | 536 | /* SIMPLEFUNC("help", "Help", NFSHelp), */ |
08345b74 | 537 | } |
538 | }; | |
539 | ||
a6c2a13a | 540 | Menu krbmap_menu = { |
541 | NULLFUNC, | |
542 | NULLFUNC, | |
543 | "User Kerberos Mapping Menu", | |
544 | 3, | |
545 | { | |
546 | { GetKrbmap, NULLMENU, 3, { | |
547 | { "show", "Show Kerberos Mappings" }, | |
548 | { "user", "User login name: " }, | |
549 | { "principal", "Principal: " }, | |
550 | } }, | |
551 | { AddKrbmap, NULLMENU, 3, { | |
552 | { "add", "Add Kerberos Mapping" }, | |
553 | { "user", "User login name: " }, | |
554 | { "principal", "Principal (this is case sensitive): " }, | |
555 | } }, | |
556 | { DeleteKrbmap, NULLMENU, 3, { | |
557 | { "delete", "Delete Kerberos Mapping" }, | |
558 | { "user", "User login name: " }, | |
559 | { "principal", "Principal: " }, | |
560 | } }, | |
561 | } | |
562 | }; | |
563 | ||
08345b74 | 564 | /* |
0a2c64cb | 565 | * User Menu |
08345b74 | 566 | */ |
567 | ||
0a2c64cb | 568 | Menu user_menu = { |
075fe5bb | 569 | NULLFUNC, |
570 | NULLFUNC, | |
0a2c64cb | 571 | "User Menu", |
572 | 11, | |
08345b74 | 573 | { |
574 | {ShowUserByLogin, NULLMENU, 2, { | |
575 | {"login", "Show user information by login name"}, | |
576 | {"login name", "Desired login name: "} | |
577 | } }, | |
578 | {ShowUserByName, NULLMENU, 3, { | |
075fe5bb | 579 | {"name", "Show user information by name"}, |
08345b74 | 580 | {"first", "First name: "}, |
581 | {"last", "Last name: "} | |
582 | } }, | |
583 | {ShowUserByClass, NULLMENU, 2, { | |
075fe5bb | 584 | {"class", "Show names of users in a given class"}, |
08345b74 | 585 | {"login name", "Desired class: "} |
81701699 | 586 | } }, |
587 | {ShowUserById, NULLMENU, 2, { | |
588 | {"id", "Show user information by ID number"}, | |
589 | {"ID number", "ID number: "} | |
590 | } }, | |
075fe5bb | 591 | {UpdateUser, NULLMENU, 2, { |
08345b74 | 592 | {"modify", "Change all user fields"}, |
593 | {"login", "Login name: "} | |
594 | } }, | |
075fe5bb | 595 | SIMPLEFUNC("adduser", "Add a new user to the database", |
596 | AddNewUser), | |
597 | SIMPLEFUNC("register", "Register a user", RegisterUser), | |
a444fefe | 598 | {DeactivateUser, NULLMENU, 2, { |
599 | {"deactivate", "Deactivate user"}, | |
600 | {"login", "Login name: "}, | |
601 | } }, | |
08345b74 | 602 | {DeleteUser, NULLMENU, 2, { |
a444fefe | 603 | {"expunge", "Expunge user"}, |
08345b74 | 604 | {"login", "Login name: "} |
605 | } }, | |
0a2c64cb | 606 | SUBMENU("pobox", "Post Office Box Menu", &pobox_menu), |
a6c2a13a | 607 | SUBMENU("krbmap", "User Kerberos Mappings", &krbmap_menu), |
08345b74 | 608 | } |
609 | }; | |
610 | ||
e532b848 | 611 | Menu dcm_menu = { |
612 | NULLFUNC, | |
613 | NULLFUNC, | |
614 | "DCM Menu", | |
615 | 6, | |
616 | { | |
617 | SIMPLEFUNC("enable", "Enable/disable DCM", EnableDcm), | |
618 | SUBMENU("service", "DCM Service Menu", &service_menu), | |
619 | SUBMENU("host", "DCM Host Menu", &host_menu), | |
620 | SIMPLEFUNC("active", "Display entries currently being updated", | |
621 | InProgress), | |
622 | SIMPLEFUNC("failed", "Display entries with errors to be reset", | |
623 | DcmFailed), | |
624 | SIMPLEFUNC("dcm", "Invoke a DCM update now", Dcm), | |
625 | } | |
626 | }; | |
627 | ||
628 | /* | |
a6c2a13a | 629 | * Printcap Printer Menu |
e532b848 | 630 | */ |
631 | ||
632 | Menu printer_menu = { | |
633 | NULLFUNC, | |
634 | NULLFUNC, | |
635 | "Printer Menu", | |
636 | 4, | |
637 | { | |
638 | { GetPcap, NULLMENU, 2, { | |
639 | {"get", "Get Printcap Entry Information"}, | |
640 | {"name", "Name of Printer: "} | |
641 | } }, | |
642 | { AddPcap, NULLMENU, 2, { | |
643 | {"add", "Add New Printcap Entry to Database"}, | |
644 | {"name", "name: "}, | |
645 | } }, | |
646 | { ChngPcap, NULLMENU, 2, { | |
647 | {"change", "Update Printer Information"}, | |
648 | {"name", "name: "}, | |
649 | } }, | |
650 | { DeletePcap, NULLMENU, 2, { | |
651 | {"delete", "Delete Printcap Entry"}, | |
652 | {"name", "Printer Name: "} | |
653 | } } | |
654 | } | |
655 | }; | |
656 | ||
a5204f48 | 657 | |
a6c2a13a | 658 | /* |
659 | * Palladium Printer Menu | |
660 | */ | |
661 | ||
662 | Menu palladium_menu = { | |
663 | NULLFUNC, | |
664 | NULLFUNC, | |
665 | "Printer Menu", | |
666 | 7, | |
667 | { | |
668 | { GetPalladium, NULLMENU, 2, { | |
24decb93 | 669 | {"get", "Get Palladium Server/Supervisor Information"}, |
a6c2a13a | 670 | {"name", "Name of Printer: "} |
671 | } }, | |
672 | { AddPalladium, NULLMENU, 2, { | |
24decb93 | 673 | {"add", "Add New Palladium Server/Supervisor to Database"}, |
a6c2a13a | 674 | {"name", "Supervisor/server name: "}, |
675 | } }, | |
676 | { ChngPalladium, NULLMENU, 2, { | |
24decb93 | 677 | {"change", "Update Palladium Server/Supervisor Information"}, |
a6c2a13a | 678 | {"name", "name: "}, |
679 | } }, | |
680 | { DeletePalladium, NULLMENU, 2, { | |
24decb93 | 681 | {"delete", "Delete Palladium Server/Supervisor Entry"}, |
a6c2a13a | 682 | {"name", "Printer Name: "} |
683 | } }, | |
684 | { ShowPalladiumAlias, NULLMENU, 3, { | |
24decb93 | 685 | {"getprinter", "Show Logical Printers"}, |
686 | {"newname", "Printer name: "}, | |
687 | {"server", "Supervisor or Server name: "}, | |
a6c2a13a | 688 | } }, |
689 | { AddPalladiumAlias, NULLMENU, 3, { | |
24decb93 | 690 | {"addprinter", "Add Logical Printer"}, |
691 | {"newname", "New printer: "}, | |
692 | {"server", "Supervisor or Server name: "}, | |
a6c2a13a | 693 | } }, |
694 | { DeletePalladiumAlias, NULLMENU, 3, { | |
24decb93 | 695 | {"delprinter", "Remove Logical Printer"}, |
696 | {"newname", "Printer name: "}, | |
697 | {"server", "Supervisor or Server name: "}, | |
a6c2a13a | 698 | } }, |
699 | } | |
700 | }; | |
701 | ||
702 | ||
703 | ||
a137231c | 704 | /* |
705 | * Zephyr Menu | |
706 | */ | |
707 | ||
708 | Menu zephyr_menu = { | |
709 | NULLFUNC, | |
710 | NULLFUNC, | |
711 | "Zephyr Menu", | |
712 | 5, | |
713 | { | |
714 | { GetZephyr, NULLMENU, 2, { | |
715 | {"get", "Get Zephyr Class Information"}, | |
716 | {"name", "Name of class: "} | |
717 | } }, | |
718 | { AddZephyr, NULLMENU, 2, { | |
719 | {"add", "Add New Zephyr class restrictions"}, | |
720 | {"name", "Class name: "}, | |
721 | } }, | |
722 | { ChngZephyr, NULLMENU, 2, { | |
723 | {"change", "Update Zephyr class restrictions"}, | |
724 | {"name", "Class name: "}, | |
725 | } }, | |
726 | { DeleteZephyr, NULLMENU, 2, { | |
727 | {"delete", "Delete Zephyr class restriction"}, | |
728 | {"name", "Class Name: "} | |
729 | } }, | |
730 | { NULLFUNC, &list_member_menu, 2, { | |
731 | {"members", "Member Menu - Change/Show Members of a List."}, | |
732 | {"list name", "Name of list: "} | |
733 | } }, | |
734 | } | |
735 | }; | |
736 | ||
a6c2a13a | 737 | |
a5204f48 | 738 | /* |
739 | * Miscellaneous Menu | |
740 | */ | |
741 | ||
742 | Menu misc_menu = { | |
743 | NULLFUNC, | |
744 | NULLFUNC, | |
745 | "Miscellaneous Menu", | |
746 | 4, | |
747 | { | |
748 | SIMPLEFUNC("statistics", "Show database statistics", TableStats), | |
95cd286e | 749 | SIMPLEFUNC("clients", "Show active Moira clients", ShowClients), |
a5204f48 | 750 | { ShowValue, NULLMENU, 2, { |
751 | {"getval", "Show a database variable value"}, | |
752 | {"name", "variable name: "}, | |
753 | } }, | |
754 | { ShowAlias, NULLMENU, 3, { | |
755 | {"getalias", "Show an alias relation"}, | |
756 | {"name", "Alias name: "}, | |
757 | {"type", "Alias type: "}, | |
758 | } }, | |
759 | } | |
760 | }; | |
761 | ||
762 | ||
0a2c64cb | 763 | /* ------------------------- Root Menu ------------------------- */ |
764 | ||
08345b74 | 765 | /* |
8defc06b | 766 | * Moira top menu |
08345b74 | 767 | */ |
768 | ||
8defc06b | 769 | Menu moira_top_menu = { |
08345b74 | 770 | NULLFUNC, |
771 | NULLFUNC, | |
95cd286e | 772 | "Moira Database Manipulation", |
ad7e0e04 | 773 | 12, |
08345b74 | 774 | { |
0a2c64cb | 775 | SUBMENU("cluster","Cluster Menu",&cluster_menu), |
776 | SUBMENU("filesys","Filesystem Menu", &filesys_menu), | |
777 | SUBMENU("list","Lists and Group Menu", &list_menu), | |
62eb195e | 778 | SUBMENU("machine","Machine Menu", &machine_menu), |
779 | SUBMENU("network", "Network Menu", &subnet_menu), | |
0a2c64cb | 780 | SUBMENU("nfs","NFS Physical Menu", &nfsphys_menu), |
a6c2a13a | 781 | SUBMENU("palladium", "Palladium Printer Menu", &palladium_menu), |
62eb195e | 782 | SUBMENU("printcap", "Printcap Printer Menu", &printer_menu), |
783 | SUBMENU("user","User Menu", &user_menu), | |
a137231c | 784 | SUBMENU("zephyr", "Zephyr ACLS Menu", &zephyr_menu), |
a5204f48 | 785 | SUBMENU("dcm", "DCM Menu", &dcm_menu), |
786 | SUBMENU("misc", "Miscellaneous Menu", &misc_menu) | |
08345b74 | 787 | } |
788 | }; |