#include <afsconfig.h>
#include <afs/param.h>
-RCSID
- ("$Header$");
#include <afs/stds.h>
#include <stdlib.h>
#include <afs/com_err.h>
#include <ubik.h>
#include <afs/ktime.h>
+#include <des.h>
+#include <des_prototypes.h>
+#include <afs/kautils.h>
+#include <afs/volser.h>
-static IStatServer();
-static DoStat();
+static int IStatServer(register struct cmd_syndesc *as, int int32p);
+static int DoStat(char *aname, register struct rx_connection *aconn,
+ int aint32p, int firstTime);
#include "bosint.h"
+#include "bosprototypes.h"
/* command offsets for bos salvage command */
#define MRAFS_OFFSET 10
/* dummy routine for the audit work. It should do nothing since audits */
/* occur at the server level and bos is not a server. */
-osi_audit()
+int osi_audit(void )
{
return 0;
}
/* keep those lines small */
static char *
-em(acode)
- afs_int32 acode;
+em(afs_int32 acode)
{
if (acode == -1)
return "communications failure (-1)";
}
/* get partition id from a name */
+/* XXX - unused code - could be removed? */
+#if 0
static afs_int32
-GetPartitionID(aname)
- char *aname;
+GetPartitionID(char *aname)
{
register char tc;
char ascii[3];
return (ascii[0] - 'a') * 26 + (ascii[1] - 'a') + 26;
}
}
+#endif
/* make ctime easier to use */
static char *
-DateOf(atime)
- afs_int32 atime;
+DateOf(afs_int32 atime)
{
static char tbuffer[30];
register char *tp;
return tbuffer;
}
-/* global stuff from main for communicating with GetConn */
-static struct rx_securityClass *sc[3];
-static int scIndex;
/* use the syntax descr to get a connection, authenticated appropriately.
* aencrypt is set if we want to encrypt the data on the wire.
*/
static struct rx_connection *
-GetConn(as, aencrypt)
- int aencrypt;
- struct cmd_syndesc *as;
+GetConn(struct cmd_syndesc *as, int aencrypt)
{
struct hostent *th;
char *hostname;
+ char *cellname = NULL;
+ const char *confdir;
register afs_int32 code;
register struct rx_connection *tconn;
afs_int32 addr;
- register struct afsconf_dir *tdir;
- int encryptLevel;
- struct ktc_principal sname;
- struct ktc_token ttoken;
- int localauth;
- const char *confdir;
+ struct afsconf_dir *tdir = NULL;
+ afsconf_secflags secFlags;
+ struct rx_securityClass *sc;
+ int scIndex;
hostname = as->parms[0].items->data;
th = hostutil_GetHostByName(hostname);
}
memcpy(&addr, th->h_addr, sizeof(afs_int32));
- /* get tokens for making authenticated connections */
- localauth = (as->parms[ADDPARMOFFSET + 2].items != 0);
- confdir =
- (localauth ? AFSDIR_SERVER_ETC_DIRPATH : AFSDIR_CLIENT_ETC_DIRPATH);
- tdir = afsconf_Open(confdir);
- if (tdir) {
- struct afsconf_cell info;
- char *tname;
+ secFlags = AFSCONF_SECOPTS_FALLBACK_NULL;
- if (as->parms[ADDPARMOFFSET].items)
- tname = as->parms[ADDPARMOFFSET].items->data;
- else
- tname = NULL;
- /* next call expands cell name abbrevs for us and handles looking up
- * local cell */
- code = afsconf_GetCellInfo(tdir, tname, NULL, &info);
- if (code) {
- afs_com_err("bos", code, "(can't find cell '%s' in cell database)",
- (tname ? tname : "<default>"));
- exit(1);
- } else
- strcpy(sname.cell, info.name);
+ if (as->parms[ADDPARMOFFSET + 2].items) { /* -localauth */
+ secFlags |= AFSCONF_SECOPTS_LOCALAUTH;
+ confdir = AFSDIR_SERVER_ETC_DIRPATH;
} else {
- printf("bos: can't open cell database (%s)\n", confdir);
- exit(1);
+ confdir = AFSDIR_CLIENT_ETC_DIRPATH;
}
- sname.instance[0] = 0;
- strcpy(sname.name, "afs");
- sc[0] = rxnull_NewClientSecurityObject();
- sc[1] = 0;
- sc[2] = 0;
- scIndex = 0;
- if (!as->parms[ADDPARMOFFSET + 1].items) { /* not -noauth */
- if (as->parms[ADDPARMOFFSET + 2].items) { /* -localauth */
- code = afsconf_GetLatestKey(tdir, 0, 0);
- if (code)
- afs_com_err("bos", code, "(getting key from local KeyFile)");
- else {
- if (aencrypt)
- code = afsconf_ClientAuthSecure(tdir, &sc[2], &scIndex);
- else
- code = afsconf_ClientAuth(tdir, &sc[2], &scIndex);
- if (code)
- afs_com_err("bos", code, "(calling ClientAuth)");
- else if (scIndex != 2) /* this shouldn't happen */
- sc[scIndex] = sc[2];
- }
- } else { /* not -localauth, check for tickets */
- code = ktc_GetToken(&sname, &ttoken, sizeof(ttoken), NULL);
- if (code == 0) {
- /* have tickets, will travel */
- if (ttoken.kvno >= 0 && ttoken.kvno <= 256);
- else {
- fprintf(stderr,
- "bos: funny kvno (%d) in ticket, proceeding\n",
- ttoken.kvno);
- }
- /* kerberos tix */
- if (aencrypt)
- encryptLevel = rxkad_crypt;
- else
- encryptLevel = rxkad_clear;
- sc[2] = (struct rx_securityClass *)
- rxkad_NewClientSecurityObject(encryptLevel,
- &ttoken.sessionKey,
- ttoken.kvno,
- ttoken.ticketLen,
- ttoken.ticket);
- scIndex = 2;
- } else
- afs_com_err("bos", code, "(getting tickets)");
- }
- if ((scIndex == 0) || (sc[scIndex] == 0)) {
- fprintf(stderr, "bos: running unauthenticated\n");
- scIndex = 0;
+ if (as->parms[ADDPARMOFFSET + 1].items) { /* -noauth */
+ secFlags |= AFSCONF_SECOPTS_NOAUTH;
+ } else {
+ /* If we're running with -noauth, we don't need a configuration
+ * directory */
+ tdir = afsconf_Open(confdir);
+ if (tdir == NULL) {
+ printf("bos: can't open cell database (%s)\n", confdir);
+ exit(1);
}
}
+
+ if (as->parms[ADDPARMOFFSET].items) /* -cell */
+ cellname = as->parms[ADDPARMOFFSET].items->data;
+
+ code = afsconf_PickClientSecObj(tdir, secFlags, NULL, cellname,
+ &sc, &scIndex, NULL);
+ if (code) {
+ afs_com_err("bos", code, "(configuring connection security)");
+ exit(1);
+ }
+
+ if (scIndex == 0)
+ fprintf(stderr, "bos: running unauthenticated\n");
+
tconn =
- rx_NewConnection(addr, htons(AFSCONF_NANNYPORT), 1, sc[scIndex],
- scIndex);
+ rx_NewConnection(addr, htons(AFSCONF_NANNYPORT), 1, sc, scIndex);
if (!tconn) {
fprintf(stderr, "bos: could not create rx connection\n");
exit(1);
}
- rxs_Release(sc[scIndex]);
+ rxs_Release(sc);
return tconn;
}
-static
-SetAuth(as)
- struct cmd_syndesc *as;
+static int
+SetAuth(struct cmd_syndesc *as, void *arock)
{
register afs_int32 code;
register struct rx_connection *tconn;
/* take a name (e.g. foo/bar, and a dir e.g. /usr/afs/bin, and construct
* /usr/afs/bin/bar */
-static
-ComputeDestDir(aname, adir, aresult, alen)
- char *aname, *adir, *aresult;
- afs_int32 alen;
+static int
+ComputeDestDir(char *aname, char *adir, char *aresult, afs_int32 alen)
{
register char *tp;
}
/* copy data from fd afd to rx call acall */
-static
-CopyBytes(afd, acall)
- int afd;
- register struct rx_call *acall;
+static int
+CopyBytes(int afd, register struct rx_call *acall)
{
register afs_int32 code;
register afs_int32 len;
}
}
-static
-Prune(as)
- register struct cmd_syndesc *as;
+static int
+Prune(register struct cmd_syndesc *as, void *arock)
{
register afs_int32 code;
register struct rx_connection *tconn;
return code;
}
-static
-Exec(as)
- register struct cmd_syndesc *as;
+static int
+Exec(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return code;
}
-static
-GetDate(as)
- register struct cmd_syndesc *as;
+static int
+GetDate(register struct cmd_syndesc *as, void *arock)
{
register afs_int32 code;
char tbuffer[256];
return 0;
}
-static
-UnInstall(as)
- register struct cmd_syndesc *as;
+static int
+UnInstall(register struct cmd_syndesc *as, void *arock)
{
register afs_int32 code;
char tbuffer[256];
}
static afs_int32
-GetServerGoal(aconn, aname)
- char *aname;
- struct rx_connection *aconn;
+GetServerGoal(struct rx_connection *aconn, char *aname)
{
char buffer[500];
char *tp;
return BSTAT_NORMAL;
}
-static
-Install(as)
- struct cmd_syndesc *as;
+static int
+Install(struct cmd_syndesc *as, void *arock)
{
struct rx_connection *tconn;
register afs_int32 code;
return 0;
}
-static
-Shutdown(as)
- struct cmd_syndesc *as;
+static int
+Shutdown(struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return 0;
}
-static
-BlockScannerCmd(as, arock)
- struct cmd_syndesc *as;
- char *arock;
+static int
+BlockScannerCmd(struct cmd_syndesc *as, void *arock)
{
register afs_int32 code;
struct rx_connection *tconn;
return 0;
}
-static
-UnBlockScannerCmd(as, arock)
- struct cmd_syndesc *as;
- char *arock;
+static int
+UnBlockScannerCmd(struct cmd_syndesc *as, void *arock)
{
register afs_int32 code;
struct rx_connection *tconn;
return 0;
}
-static
-GetRestartCmd(as, arock)
- struct cmd_syndesc *as;
- char *arock;
+static int
+GetRestartCmd(struct cmd_syndesc *as, void *arock)
{
register afs_int32 code;
struct ktime generalTime, newBinaryTime;
hostp = as->parms[0].items->data; /* host name for messages */
tconn = GetConn(as, 0);
- code = BOZO_GetRestartTime(tconn, 1, &generalTime);
+ code = BOZO_GetRestartTime(tconn, 1, (struct bozo_netKTime *) &generalTime);
if (code) {
printf("bos: failed to retrieve restart information (%s)\n",
em(code));
return code;
}
- code = BOZO_GetRestartTime(tconn, 2, &newBinaryTime);
+ code = BOZO_GetRestartTime(tconn, 2, (struct bozo_netKTime *) &newBinaryTime);
if (code) {
printf("bos: failed to retrieve restart information (%s)\n",
em(code));
return 0;
}
-static
-SetRestartCmd(as, arock)
- struct cmd_syndesc *as;
- char *arock;
+static int
+SetRestartCmd(struct cmd_syndesc *as, void *arock)
{
- afs_int32 count;
+ afs_int32 count = 0;
register afs_int32 code;
struct ktime restartTime;
- afs_int32 type;
+ afs_int32 type = 0 ;
struct rx_connection *tconn;
count = 0;
if (count == 0)
type = 1; /* by default set general restart time */
- if (code = ktime_ParsePeriodic(as->parms[1].items->data, &restartTime)) {
+ if ((code = ktime_ParsePeriodic(as->parms[1].items->data, &restartTime))) {
printf("bos: failed to parse '%s' as periodic restart time(%s)\n",
as->parms[1].items->data, em(code));
return code;
}
- code = BOZO_SetRestartTime(tconn, type, &restartTime);
+ code = BOZO_SetRestartTime(tconn, type, (struct bozo_netKTime *) &restartTime);
if (code) {
printf("bos: failed to set restart time at server (%s)\n", em(code));
return code;
return 0;
}
-static
-Startup(as)
- struct cmd_syndesc *as;
+static int
+Startup(struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return 0;
}
-static
-Restart(as)
- struct cmd_syndesc *as;
+static int
+Restart(struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return 0;
}
-static
-SetCellName(as)
- struct cmd_syndesc *as;
+static int
+SetCellName(struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return 0;
}
-static
-AddHost(as)
- register struct cmd_syndesc *as;
+static int
+AddHost(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return 0;
}
-static
-RemoveHost(as)
- register struct cmd_syndesc *as;
+static int
+RemoveHost(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return 0;
}
-static
-ListHosts(as)
- register struct cmd_syndesc *as;
+static int
+ListHosts(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return 0;
}
-static
-AddKey(as)
- register struct cmd_syndesc *as;
+static int
+AddKey(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
ka_StringToKey(buf, tcell, &tkey);
}
tconn = GetConn(as, 1);
- code = BOZO_AddKey(tconn, temp, &tkey);
+ code = BOZO_AddKey(tconn, temp, ktc_to_bozoptr(&tkey));
if (code) {
printf("bos: failed to set key %d (%s)\n", temp, em(code));
exit(1);
return 0;
}
-static
-RemoveKey(as)
- register struct cmd_syndesc *as;
+static int
+RemoveKey(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return 0;
}
-static
-ListKeys(as)
- IN register struct cmd_syndesc *as;
+static int
+ListKeys(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
tconn = GetConn(as, 1);
everWorked = 0;
for (i = 0;; i++) {
- code = BOZO_ListKeys(tconn, i, &kvno, &tkey, &keyInfo);
+ code = BOZO_ListKeys(tconn, i, &kvno, ktc_to_bozoptr(&tkey), &keyInfo);
if (code)
break;
everWorked = 1;
/* first check if key is returned */
- if ((!ka_KeyIsZero(&tkey, sizeof(tkey))) && (as->parms[1].items)) {
+ if ((!ka_KeyIsZero(ktc_to_charptr(&tkey), sizeof(tkey))) && (as->parms[1].items)) {
printf("key %d is '", kvno);
- ka_PrintBytes(&tkey, sizeof(tkey));
+ ka_PrintBytes(ktc_to_charptr(&tkey), sizeof(tkey));
printf("'\n");
} else {
if (keyInfo.keyCheckSum == 0) /* shouldn't happen */
return 0;
}
-static
-AddSUser(as)
- register struct cmd_syndesc *as;
+static int
+AddSUser(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return failed;
}
-static
-RemoveSUser(as)
- register struct cmd_syndesc *as;
+static int
+RemoveSUser(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register struct cmd_item *ti;
}
#define NPERLINE 10 /* dudes to print per line */
-static
-ListSUsers(as)
- register struct cmd_syndesc *as;
+static int
+ListSUsers(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register int i;
return 0;
}
-static
-StatServer(as)
- register struct cmd_syndesc *as;
+static int
+StatServer(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return 0;
}
-static
-CreateServer(as)
- register struct cmd_syndesc *as;
+static int
+CreateServer(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
}
name = as->parms[1].items->data;
type = as->parms[2].items->data;
- if (ti = as->parms[4].items) {
+ if ((ti = as->parms[4].items)) {
notifier = ti->data;
}
code =
return code;
}
-static
-DeleteServer(as)
- register struct cmd_syndesc *as;
+static int
+DeleteServer(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return code;
}
-static
-StartServer(as)
- register struct cmd_syndesc *as;
+static int
+StartServer(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
return code;
}
-static
-StopServer(as)
- register struct cmd_syndesc *as;
+static int
+StopServer(register struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code;
printf("bos: command line too big\n");
return (E2BIG);
}
- strcat(tbuffer, " -f ");
+ strcat(tbuffer, " -force ");
strcat(tbuffer, partName);
}
if (mrafsParm->OptDontAskFS)
strcat(tbuffer, " -DontAskFS");
if (mrafsParm->OptLogLevel) {
- sprintf(pbuffer, " -LogLevel %ld", mrafsParm->OptLogLevel);
+ sprintf(pbuffer, " -LogLevel %ld", afs_printable_int32_ld(mrafsParm->OptLogLevel));
strcat(tbuffer, pbuffer);
}
if (mrafsParm->OptRxDebug)
strcat(tbuffer, " -rxdebug");
if (mrafsParm->OptResidencies) {
- sprintf(pbuffer, " -Residencies %lu", mrafsParm->OptResidencies);
+ sprintf(pbuffer, " -Residencies %lu",
+ afs_printable_uint32_lu(mrafsParm->OptResidencies));
strcat(tbuffer, pbuffer);
}
}
return code;
}
-static
-GetLogCmd(as)
- register struct cmd_syndesc *as;
+static int
+GetLogCmd(register struct cmd_syndesc *as, void *arock)
{
struct rx_connection *tconn;
register struct rx_call *tcall;
return code;
}
-static
-SalvageCmd(as)
- struct cmd_syndesc *as;
+static int
+SalvageCmd(struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
register afs_int32 code, rc, i;
tp = &tname[0];
/* find out whether fileserver is running demand attach fs */
- if (code = BOZO_GetInstanceParm(tconn, "dafs", 0, &tp) == 0) {
+ if ((code = BOZO_GetInstanceParm(tconn, "dafs", 0, &tp) == 0)) {
dafs = 1;
serviceName = "dafs";
/* Find out whether fileserver is running MR-AFS (has a scanner instance) */
/* XXX this should really be done some other way, potentially by RPC */
- if (code = BOZO_GetInstanceParm(tconn, serviceName, 4, &tp) == 0)
+ if ((code = BOZO_GetInstanceParm(tconn, serviceName, 4, &tp) == 0))
mrafs = 1;
} else {
serviceName = "fs";
/* Find out whether fileserver is running MR-AFS (has a scanner instance) */
/* XXX this should really be done some other way, potentially by RPC */
- if (code = BOZO_GetInstanceParm(tconn, serviceName, 3, &tp) == 0)
+ if ((code = BOZO_GetInstanceParm(tconn, serviceName, 3, &tp) == 0))
mrafs = 1;
}
return 0;
}
-static
-IStatServer(as, int32p)
- int int32p;
- register struct cmd_syndesc *as;
+static int
+IStatServer(register struct cmd_syndesc *as, int int32p)
{
register struct rx_connection *tconn;
register struct cmd_item *ti;
return 0;
}
-static
-DoStat(aname, aconn, aint32p, firstTime)
- IN char *aname;
- IN register struct rx_connection *aconn;
- IN int aint32p;
- IN int firstTime; /* true iff first instance in cmd */
+static int
+DoStat(IN char *aname,
+ IN register struct rx_connection *aconn,
+ IN int aint32p,
+ IN int firstTime) /* true iff first instance in cmd */
{
afs_int32 temp;
char buffer[500];
return 0;
}
-#ifdef BOS_RESTRICTED_MODE
-static
-GetRestrict(as)
- struct cmd_syndesc *as;
+static int
+GetRestrict(struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
afs_int32 code, val;
return 0;
}
-static
-SetRestrict(as)
- struct cmd_syndesc *as;
+static int
+SetRestrict(struct cmd_syndesc *as, void *arock)
{
register struct rx_connection *tconn;
afs_int32 code, val;
printf("bos: failed to set restricted mode (%s)\n", em(code));
return 0;
}
-#endif
static void
-add_std_args(ts)
- register struct cmd_syndesc *ts;
+add_std_args(register struct cmd_syndesc *ts)
{
cmd_Seek(ts, ADDPARMOFFSET);
/* + 0 */ cmd_AddParm(ts, "-cell", CMD_SINGLE, CMD_OPTIONAL, "cell name");
#include "AFS_component_version_number.c"
-main(argc, argv)
- int argc;
- char **argv;
+int
+main(int argc, char **argv)
{
register afs_int32 code;
register struct cmd_syndesc *ts;
initialize_CMD_error_table();
initialize_BZ_error_table();
- ts = cmd_CreateSyntax("start", StartServer, 0, "start running a server");
+ ts = cmd_CreateSyntax("start", StartServer, NULL, "start running a server");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-instance", CMD_LIST, 0, "server process name");
add_std_args(ts);
- ts = cmd_CreateSyntax("stop", StopServer, 0, "halt a server instance");
+ ts = cmd_CreateSyntax("stop", StopServer, NULL, "halt a server instance");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-instance", CMD_LIST, 0, "server process name");
cmd_Seek(ts, 8);
"wait for process to stop");
add_std_args(ts);
- ts = cmd_CreateSyntax("status", StatServer, 0,
+ ts = cmd_CreateSyntax("status", StatServer, NULL,
"show server instance status");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-instance", CMD_LIST, CMD_OPTIONAL,
cmd_AddParm(ts, "-long", CMD_FLAG, CMD_OPTIONAL, "long status");
add_std_args(ts);
- ts = cmd_CreateSyntax("shutdown", Shutdown, 0, "shutdown all processes");
+ ts = cmd_CreateSyntax("shutdown", Shutdown, NULL, "shutdown all processes");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-instance", CMD_LIST, CMD_OPTIONAL, "instances");
cmd_Seek(ts, 8);
"wait for process to stop");
add_std_args(ts);
- ts = cmd_CreateSyntax("startup", Startup, 0, "start all processes");
+ ts = cmd_CreateSyntax("startup", Startup, NULL, "start all processes");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-instance", CMD_LIST, CMD_OPTIONAL, "instances");
add_std_args(ts);
- ts = cmd_CreateSyntax("restart", Restart, 0, "restart processes");
+ ts = cmd_CreateSyntax("restart", Restart, NULL, "restart processes");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-instance", CMD_LIST, CMD_OPTIONAL, "instances");
cmd_AddParm(ts, "-bosserver", CMD_FLAG, CMD_OPTIONAL,
#ifndef OPBOS
- ts = cmd_CreateSyntax("create", CreateServer, 0,
+ ts = cmd_CreateSyntax("create", CreateServer, NULL,
"create a new server instance");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-instance", CMD_SINGLE, 0, "server process name");
"Notifier program");
add_std_args(ts);
- ts = cmd_CreateSyntax("delete", DeleteServer, 0,
+ ts = cmd_CreateSyntax("delete", DeleteServer, NULL,
"delete a server instance");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-instance", CMD_LIST, 0, "server process name");
add_std_args(ts);
- ts = cmd_CreateSyntax("adduser", AddSUser, 0,
+ ts = cmd_CreateSyntax("adduser", AddSUser, NULL,
"add users to super-user list");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-user", CMD_LIST, 0, "user names");
add_std_args(ts);
- ts = cmd_CreateSyntax("removeuser", RemoveSUser, 0,
+ ts = cmd_CreateSyntax("removeuser", RemoveSUser, NULL,
"remove users from super-user list");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-user", CMD_LIST, 0, "user names");
add_std_args(ts);
- ts = cmd_CreateSyntax("listusers", ListSUsers, 0, "list super-users");
+ ts = cmd_CreateSyntax("listusers", ListSUsers, NULL, "list super-users");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
add_std_args(ts);
- ts = cmd_CreateSyntax("addkey", AddKey, 0,
+ ts = cmd_CreateSyntax("addkey", AddKey, NULL,
"add keys to key dbase (kvno 999 is bcrypt)");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-key", CMD_SINGLE, CMD_OPTIONAL, "key");
cmd_AddParm(ts, "-kvno", CMD_SINGLE, 0, "key version number");
add_std_args(ts);
- ts = cmd_CreateSyntax("removekey", RemoveKey, 0,
+ ts = cmd_CreateSyntax("removekey", RemoveKey, NULL,
"remove keys from key dbase");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-kvno", CMD_LIST, 0, "key version number");
add_std_args(ts);
- ts = cmd_CreateSyntax("listkeys", ListKeys, 0, "list keys");
+ ts = cmd_CreateSyntax("listkeys", ListKeys, NULL, "list keys");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-showkey", CMD_FLAG, CMD_OPTIONAL,
"show the actual key rather than the checksum");
add_std_args(ts);
- ts = cmd_CreateSyntax("listhosts", ListHosts, 0, "get cell host list");
+ ts = cmd_CreateSyntax("listhosts", ListHosts, NULL, "get cell host list");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
add_std_args(ts);
cmd_CreateAlias(ts, "getcell");
- ts = cmd_CreateSyntax("setcellname", SetCellName, 0, "set cell name");
+ ts = cmd_CreateSyntax("setcellname", SetCellName, NULL, "set cell name");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-name", CMD_SINGLE, 0, "cell name");
add_std_args(ts);
- ts = cmd_CreateSyntax("addhost", AddHost, 0, "add host to cell dbase");
+ ts = cmd_CreateSyntax("addhost", AddHost, NULL, "add host to cell dbase");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-host", CMD_LIST, 0, "host name");
cmd_AddParm(ts, "-clone", CMD_FLAG, CMD_OPTIONAL, "vote doesn't count");
add_std_args(ts);
- ts = cmd_CreateSyntax("removehost", RemoveHost, 0,
+ ts = cmd_CreateSyntax("removehost", RemoveHost, NULL,
"remove host from cell dbase");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-host", CMD_LIST, 0, "host name");
add_std_args(ts);
- ts = cmd_CreateSyntax("setauth", SetAuth, 0,
+ ts = cmd_CreateSyntax("setauth", SetAuth, NULL,
"set authentication required flag");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-authrequired", CMD_SINGLE, 0,
"on or off: authentication required for admin requests");
add_std_args(ts);
- ts = cmd_CreateSyntax("install", Install, 0, "install program");
+ ts = cmd_CreateSyntax("install", Install, NULL, "install program");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-file", CMD_LIST, 0, "files to install");
cmd_AddParm(ts, "-dir", CMD_SINGLE, CMD_OPTIONAL, "destination dir");
add_std_args(ts);
- ts = cmd_CreateSyntax("uninstall", UnInstall, 0, "uninstall program");
+ ts = cmd_CreateSyntax("uninstall", UnInstall, NULL, "uninstall program");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-file", CMD_LIST, 0, "files to uninstall");
cmd_AddParm(ts, "-dir", CMD_SINGLE, CMD_OPTIONAL, "destination dir");
add_std_args(ts);
- ts = cmd_CreateSyntax("getlog", GetLogCmd, 0, "examine log file");
+ ts = cmd_CreateSyntax("getlog", GetLogCmd, NULL, "examine log file");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-file", CMD_SINGLE, 0, "log file to examine");
add_std_args(ts);
- ts = cmd_CreateSyntax("getdate", GetDate, 0, "get dates for programs");
+ ts = cmd_CreateSyntax("getdate", GetDate, NULL, "get dates for programs");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-file", CMD_LIST, 0, "files to check");
cmd_AddParm(ts, "-dir", CMD_SINGLE, CMD_OPTIONAL, "destination dir");
add_std_args(ts);
- ts = cmd_CreateSyntax("exec", Exec, 0, "execute shell command on server");
+ ts = cmd_CreateSyntax("exec", Exec, NULL, "execute shell command on server");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-cmd", CMD_SINGLE, 0, "command to execute");
add_std_args(ts);
- ts = cmd_CreateSyntax("prune", Prune, 0, "prune server files");
+ ts = cmd_CreateSyntax("prune", Prune, NULL, "prune server files");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-bak", CMD_FLAG, CMD_OPTIONAL, "delete .BAK files");
cmd_AddParm(ts, "-old", CMD_FLAG, CMD_OPTIONAL, "delete .OLD files");
cmd_AddParm(ts, "-all", CMD_FLAG, CMD_OPTIONAL, "delete all junk files");
add_std_args(ts);
- ts = cmd_CreateSyntax("setrestart", SetRestartCmd, 0,
+ ts = cmd_CreateSyntax("setrestart", SetRestartCmd, NULL,
"set restart times");
cmd_AddParm(ts, "-server", CMD_SINGLE, CMD_REQUIRED, "machine name");
cmd_AddParm(ts, "-time", CMD_SINGLE, CMD_REQUIRED,
cmd_AddParm(ts, "-newbinary", CMD_FLAG, CMD_OPTIONAL,
"set new binary restart time");
add_std_args(ts);
+ cmd_CreateAlias(ts, "setr");
- ts = cmd_CreateSyntax("getrestart", GetRestartCmd, 0,
+ ts = cmd_CreateSyntax("getrestart", GetRestartCmd, NULL,
"get restart times");
cmd_AddParm(ts, "-server", CMD_SINGLE, CMD_REQUIRED, "machine name");
add_std_args(ts);
+ cmd_CreateAlias(ts, "getr");
- ts = cmd_CreateSyntax("salvage", SalvageCmd, 0,
+ ts = cmd_CreateSyntax("salvage", SalvageCmd, NULL,
"salvage partition or volumes");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-partition", CMD_SINGLE, CMD_OPTIONAL,
"(MR-AFS) Numeric mask of residencies to be included in the salvage. Do not use with -SalvageRemote or -SalvageArchival");
add_std_args(ts);
- ts = cmd_CreateSyntax("blockscanner", BlockScannerCmd, 0,
+ ts = cmd_CreateSyntax("blockscanner", BlockScannerCmd, NULL,
"block scanner daemon from making migration requests");
cmd_AddParm(ts, "-server", CMD_SINGLE, CMD_REQUIRED, "machine name");
add_std_args(ts);
- ts = cmd_CreateSyntax("unblockscanner", UnBlockScannerCmd, 0,
+ ts = cmd_CreateSyntax("unblockscanner", UnBlockScannerCmd, NULL,
"allow scanner daemon to make migration requests again");
cmd_AddParm(ts, "-server", CMD_SINGLE, CMD_REQUIRED, "machine name");
add_std_args(ts);
-#ifdef BOS_RESTRICTED_MODE
- ts = cmd_CreateSyntax("getrestricted", GetRestrict, 0,
+ ts = cmd_CreateSyntax("getrestricted", GetRestrict, NULL,
"get restrict mode");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
add_std_args(ts);
- ts = cmd_CreateSyntax("setrestricted", SetRestrict, 0,
+ ts = cmd_CreateSyntax("setrestricted", SetRestrict, NULL,
"set restrict mode");
cmd_AddParm(ts, "-server", CMD_SINGLE, 0, "machine name");
cmd_AddParm(ts, "-mode", CMD_SINGLE, 0, "mode to set");
add_std_args(ts);
#endif
-#endif
code = cmd_Dispatch(argc, argv);
rx_Finalize();