3 * Copyright (C) 1988-1998 by the Massachusetts Institute of Technology.
4 * For copying and distribution information, please see the file
8 #include <mit-copyright.h>
23 /* too bad we can't set the pathname easily */
24 static char *srvtab = KEYFILE; /* default == /etc/srvtab */
25 static char realm[REALM_SZ];
26 static char master[INST_SZ] = "sms";
27 static char service[ANAME_SZ] = "rcmd";
32 static void init(void)
34 static int initialized = 0;
38 if (krb_get_lrealm(realm, 1))
39 strcpy(realm, KRB_REALM);
40 initialize_krb_error_table();
46 int get_mr_update_ticket(char *host, KTEXT ticket)
55 strcpy(phost, (char *)krb_get_phost(host));
57 code = krb_mk_req(ticket, service, phost, realm, (long)0);
62 /* maybe we're taking too long? */
63 if ((code = get_mr_tgt()))
65 com_err(whoami, code, "can't get Kerberos TGT");
71 code += ERROR_TABLE_BASE_krb;
72 com_err(whoami, code, "in krb_mk_req");
76 code = krb_get_cred(service, phost, realm, &cr);
78 code += ERROR_TABLE_BASE_krb;
79 memcpy(session, cr.session, sizeof(session));
87 char linst[INST_SZ], kinst[INST_SZ];
91 strcpy(kinst, "krbtgt");
92 code = krb_get_svc_in_tkt(master, linst, realm, kinst, realm,
93 DEFAULT_TKT_LIFE, srvtab);
97 return code + ERROR_TABLE_BASE_krb;