head 1.2;
access;
symbols;
locks; strict;
comment @ * @;
1.2
date 95.06.23.19.28.17; author p-pomes; state Exp;
branches;
next 1.1;
1.1
date 93.11.24.22.34.03; author paul; state Exp;
branches;
next ;
desc
@@
1.2
log
@*** empty log message ***
@
text
@/* $Id: apitest.c,v 1.1 1993/11/24 22:34:03 paul Exp p-pomes $
* apitest: test the qiapi routines.
*/
#include <stdio.h>
#include "qiapi.h"
#ifndef QIHOST
#define QIHOST "ns"
#endif
static char *UseHost = QIHOST;
static char *User = NULL;
static char *Password = NULL;
static int Opts = -1;
static void do_opts __P((int, char **));
main(argc,argv)
int argc;
char **argv;
{
FILE *To, *From;
int rc;
char *alias;
do_opts(argc,argv);
rc = OpenQi(UseHost,&To,&From);
if (rc) {
fprintf(stderr,"OpenQi failed with %d\n",rc);
exit(1);
}
alias = LoginQi(UseHost,To,From,Opts,User,Password);
if (alias)
printf("Logged in as %s\n",alias);
else {
fprintf(stderr,"Login failed.\n");
exit(1);
}
rc = LogoutQi(To, From);
if (rc)
printf("logged out\n");
else {
fprintf(stderr,"logout failed %d\n",rc);
exit(1);
}
CloseQi(To, From);
exit(0);
}
static void
do_opts(argc,argv)
int argc;
char **argv;
{
extern int optind;
extern char *optarg;
int c,argerr=0;
while ((c = getopt(argc,argv,"aik:elds:u:p:")) != EOF)
switch(c) {
case 'd':
++QiDebug;
break;
case 's':
UseHost = optarg;
break;
case 'a':
if (Opts == -1)
Opts = 0;
Opts |= LQ_AUTO;
break;
case 'i':
if (Opts == -1)
Opts = 0;
Opts |= LQ_INTERACTIVE;
break;
case 'k':
if (Opts == -1)
Opts = 0;
if (!optarg || *optarg == '\0' || *optarg == '4')
Opts |= LQ_KRB4;
else if (*optarg == '5')
Opts |= LQ_KRB5;
break;
case 'e':
if (Opts == -1)
Opts = 0;
Opts |= LQ_EMAIL;
break;
case 'l':
if (Opts == -1)
Opts = 0;
Opts |= LQ_PASSWORD;
break;
case 'u':
User = optarg;
break;
case 'p':
Password = optarg;
break;
default:
++argerr;
break;
}
if (argerr) {
fprintf(stderr,"Usage: %s [-daikel] [-s host] [-u user] [-p pass]\n",argv[0]);
fprintf(stderr,"\t-d debug\n");
fprintf(stderr,"\t-a attempt auto login\n");
fprintf(stderr,"\t-i interactively prompt for user/pass if needed\n");
fprintf(stderr,"\t-k use kerberos login protocol\n");
fprintf(stderr,"\t-e use email login protocol\n");
fprintf(stderr,"\t-l use conventional login protocol\n");
exit(1);
}
if (Opts == -1)
Opts = LQ_ALL|LQ_INTERACTIVE|LQ_AUTO;
}
@
1.1
log
@Initial revision
@
text
@d1 1
a1 1
/* $Id: apitest.c,v 1.1 93/10/25 17:23:06 alan Exp $
d59 1
a59 1
while ((c = getopt(argc,argv,"aikelds:u:p:")) != EOF)
d80 4
a83 1
Opts |= LQ_KERBEROS;
d93 1
a93 1
Opts |= LQ_LOGIN;
@