-
-int
-get_mr_update_ticket(host, ticket)
- char *host;
- KTEXT ticket;
-{
- register int code;
- register int pass;
- char phost[BUFSIZ];
- CREDENTIALS cr;
-
- pass = 1;
- init();
- strcpy(phost, krb_get_phost(host));
- try_it:
- code = krb_mk_req(ticket, service, phost, realm, (long)0);
- if (code) {
- code += ERROR_TABLE_BASE_krb;
- com_err(whoami, code, "in krb_mk_req");
- } else {
- code = krb_get_cred(service, phost, realm, &cr);
- bcopy(cr.session, session, sizeof(session));
- }
-#ifdef notdef
- if (pass == 1) {
- /* maybe we're taking too long? */
- if ((code = get_mr_tgt()) != 0) {
- com_err(whoami, code, " can't get Kerberos TGT");
- return(code);
- }
- pass++;
- goto try_it;
- }
-#endif /* notdef */
- return(code);
+try_it:
+ code = krb_mk_req(ticket, service, phost, realm, (long)0);
+ if (code)
+ {
+ if (pass == 1)
+ {
+ /* maybe we're taking too long? */
+ if ((code = get_mr_tgt()))
+ {
+ com_err(whoami, code, "can't get Kerberos TGT");
+ return code;
+ }
+ pass++;
+ goto try_it;
+ }
+ code += ERROR_TABLE_BASE_krb;
+ com_err(whoami, code, "in krb_mk_req");
+ }
+ else
+ {
+ code = krb_get_cred(service, phost, realm, &cr);
+ if (code)
+ code += ERROR_TABLE_BASE_krb;
+ memcpy(session, cr.session, sizeof(session));
+ }
+ return code;