#include <string.h>
#include <time.h>
+#define argis(a, b) (!strcmp(*arg + 1, a) || !strcmp(*arg + 1, b))
+
RCSID("$Header$");
char *atot(char *itime);
struct save_queue *sq;
int status;
int auth_required = 1;
+ char **arg = argv;
+ char *server = NULL;
if ((whoami = strrchr(argv[0], '/')) == NULL)
whoami = argv[0];
else
whoami++;
- if (argc == 2 && !strcmp(argv[1], "-noauth"))
- auth_required = 0;
- else if (argc > 1)
- usage();
+ /* parse our command line options */
+ while (++arg - argv < argc)
+ {
+ if (**arg == '-')
+ {
+ if (argis("n", "noauth"))
+ auth_required = 0;
+ else if (argis("db", "database"))
+ {
+ if (arg - argv < argc - 1)
+ {
+ ++arg;
+ server = *arg;
+ }
+ else
+ usage();
+ }
+ }
+ else
+ usage();
+ }
- if (mrcl_connect(NULL, NULL, 2, 0) != MRCL_SUCCESS)
+ if (mrcl_connect(server, NULL, 2, 0) != MRCL_SUCCESS)
exit(2);
status = mr_auth("mrcheck");
if (status && auth_required)
void usage(void)
{
- fprintf(stderr, "Usage: %s [-noauth]\n", whoami);
+ fprintf(stderr, "Usage: %s [-noauth] [-db|-database server[:port]]\n",
+ whoami);
exit(1);
}