]> andersk Git - moira.git/blame - incremental/ksrvtgt.c
Don't need zephyr include file; do need errno.h
[moira.git] / incremental / ksrvtgt.c
CommitLineData
af85f541 1/*
2 * $Source$
3 * $Author$
4 *
5 * Copyright 1988 by the Massachusetts Institute of Technology.
6 *
7 * For copying and distribution information, please see the file
8 * <mit-copyright.h>.
9 *
10 * Get a ticket-granting-ticket given a service key file (srvtab)
af85f541 11 *
12 */
13
14#include <stdio.h>
15#include <sys/param.h>
16#include <krb.h>
dead7a4c 17/*#include <conf.h>*/
af85f541 18
dead7a4c 19char rcsid[] =
af85f541 20 "$Header$";
21
dead7a4c 22
23void usage(argv)
24char **argv;
25{
26 fprintf(stderr,
27 "Usage: %s name instance [-r realm] [-s srvtab] [-l lifetime]\n",
28 argv[0]);
29 exit(1);
30}
31
32
af85f541 33main(argc,argv)
34 int argc;
35 char **argv;
36{
37 char realm[REALM_SZ + 1];
38 register int code;
dead7a4c 39 int i, lifetime = 1;
af85f541 40 char srvtab[MAXPATHLEN + 1];
41
42 bzero(realm, sizeof(realm));
43 bzero(srvtab, sizeof(srvtab));
44
dead7a4c 45 if (argc < 3)
46 usage(argv);
47
48 for (i = 3; i < argc; i++) {
49 if (argv[i][0] != '-')
50 usage(argv);
51 switch (argv[i][1]) {
52 case 'r':
53 if (i + 1 >= argc)
54 usage(argv);
55 strncpy(realm, argv[i++ + 1], sizeof(realm) - 1);
56 break;
57 case 's':
58 if (i + 1 >= argc)
59 usage(argv);
60 strncpy(srvtab, argv[i++ + 1], sizeof(srvtab) - 1);
61 break;
62 case 'l':
63 if (i + 1 >= argc)
64 usage(argv);
65 lifetime = atoi(argv[i++ + 1]);
66 if (lifetime < 5)
67 lifetime = 1;
68 else
69 lifetime /= 5;
70 if (lifetime > 255)
71 lifetime = 255;
72 break;
73 default:
74 usage();
75 }
af85f541 76 }
77
78 if (srvtab[0] == 0)
79 (void) strcpy(srvtab, KEYFILE);
80
81 if (realm[0] == 0)
dead7a4c 82 if (krb_get_lrealm(realm, 1) != KSUCCESS)
af85f541 83 (void) strcpy(realm, KRB_REALM);
84
85 code = krb_get_svc_in_tkt(argv[1], argv[2], realm,
dead7a4c 86 "krbtgt", realm, lifetime, srvtab);
af85f541 87 if (code)
88 fprintf(stderr, "%s\n", krb_err_txt[code]);
89 exit(code);
90}
dead7a4c 91
This page took 0.059462 seconds and 5 git commands to generate.