[5723] in Kerberos
patches for krb5.5 ksu
daemon@ATHENA.MIT.EDU (William King)
Thu Aug 17 15:39:26 1995
Date: Thu, 17 Aug 1995 15:27:10 -0400
From: William King <William.King@cle.ab.com>
To: kerberos@MIT.EDU
There are several calls in the krb 5.5 ksu code which are missing a
parameter. I don't know about your system, but on mine it core
dumps... Here are the patches.
Bill King
Allen-Bradley Company
*** heuristic.c Tue Aug 8 18:18:51 1995
--- heuristic.c~ Tue Aug 8 18:03:20 1995
***************
*** 417,423 ****
if ( ! stat(cc_source_name, &st_temp)){
! if (retval = find_ticket (context, cc, client, end_server, &temp_found)) {
return retval;
}
--- 417,423 ----
if ( ! stat(cc_source_name, &st_temp)){
! if (retval = find_ticket (cc, client, end_server, &temp_found)) {
return retval;
}
***************
*** 430,436 ****
return retval ;
}
! if(retval = find_ticket (context, cc,client, kdc_server, &temp_found)) {
return retval;
}
}
--- 430,436 ----
return retval ;
}
! if(retval = find_ticket (cc,client, kdc_server, &temp_found)) {
return retval;
}
}
***************
*** 684,690 ****
for (i= 0; i < count; i ++){
if(princ_trials[i].p){
! if (retval= find_princ_in_list(context, princ_trials[i].p, aplist, &found)){
return retval;
}
--- 684,690 ----
for (i= 0; i < count; i ++){
if(princ_trials[i].p){
! if (retval= find_princ_in_list(princ_trials[i].p, aplist, &found)){
return retval;
}
***************
*** 691,697 ****
if ( found == TRUE){
princ_trials[i].found = TRUE;
! if (retval = find_either_ticket (context, cc_source, princ_trials[i].p,
end_server, &found)){
return retval;
}
--- 691,697 ----
if ( found == TRUE){
princ_trials[i].found = TRUE;
! if (retval = find_either_ticket (cc_source, princ_trials[i].p,
end_server, &found)){
return retval;
}
***************
*** 716,722 ****
return retval;
}
! if (retval = find_either_ticket (context, cc_source, temp_client,
end_server, &found)){
return retval;
}
--- 716,722 ----
return retval;
}
! if (retval = find_either_ticket (cc_source, temp_client,
end_server, &found)){
return retval;
}
*** krb_auth_su.c Wed Aug 9 10:37:24 1995
--- krb_auth_su.c~ Wed Aug 9 10:26:56 1995
***************
*** 82,88 ****
}
if (auth_debug)
! { dump_principal(context, "krb5_auth_check: Client principal name", client); }
if ( retval = krb5_sname_to_principal(context, hostname, NULL,
KRB5_NT_SRV_HST, &server)){
--- 82,88 ----
}
if (auth_debug)
! { dump_principal("krb5_auth_check: Client principal name", client); }
if ( retval = krb5_sname_to_principal(context, hostname, NULL,
KRB5_NT_SRV_HST, &server)){
***************
*** 93,99 ****
}
if (auth_debug)
! { dump_principal(context, "krb5_auth_check: Server principal name", server); }
--- 93,99 ----
}
if (auth_debug)
! { dump_principal("krb5_auth_check: Server principal name", server); }
***************
*** 123,129 ****
return (FALSE) ;
}
! if (auth_debug){ dump_principal(context, "local tgt principal name", tgtq.server ); }
retval = krb5_cc_retrieve_cred(context, cc, KRB5_TC_MATCH_SRV_NAMEONLY,
&tgtq, &tgt);
--- 123,129 ----
return (FALSE) ;
}
! if (auth_debug){ dump_principal("local tgt principal name", tgtq.server ); }
retval = krb5_cc_retrieve_cred(context, cc, KRB5_TC_MATCH_SRV_NAMEONLY,
&tgtq, &tgt);
***************
*** 154,160 ****
}
*path_passwd = 1;
#else
! plain_dump_principal (context, client);
fprintf(stderr,"does not have any appropriate tickets in the cache.\n");
return FALSE;
--- 154,160 ----
}
*path_passwd = 1;
#else
! plain_dump_principal (client);
fprintf(stderr,"does not have any appropriate tickets in the cache.\n");
return FALSE;
***************
*** 181,187 ****
if (auth_debug){
fprintf(stderr,"krb5_auth_check: got ticket for end server \n");
! dump_principal(context, "out_creds->server", out_creds->server );
}
--- 181,187 ----
if (auth_debug){
fprintf(stderr,"krb5_auth_check: got ticket for end server \n");
! dump_principal("out_creds->server", out_creds->server );
}
***************
*** 293,300 ****
if (auth_debug){
fprintf(stderr,"krb5_verify_tkt_def: verified target server\n");
! dump_principal(context, "server", server);
! dump_principal(context, "tkt->server", tkt->server);
}
/* get the default keytab */
--- 293,300 ----
if (auth_debug){
fprintf(stderr,"krb5_verify_tkt_def: verified target server\n");
! dump_principal("server", server);
! dump_principal("tkt->server", tkt->server);
}
/* get the default keytab */
***************
*** 340,347 ****
if (auth_debug){
fprintf(stderr,
"krb5_verify_tkt_def: verified client's identity\n");
! dump_principal(context, "client", client);
! dump_principal(context, "tkt->enc_part2->client",tkt->enc_part2->client);
}
tkt_ses_key = tkt->enc_part2->session;
--- 340,347 ----
if (auth_debug){
fprintf(stderr,
"krb5_verify_tkt_def: verified client's identity\n");
! dump_principal("client", client);
! dump_principal("tkt->enc_part2->client",tkt->enc_part2->client);
}
tkt_ses_key = tkt->enc_part2->session;
*** main.c Wed Aug 9 10:29:33 1995
--- main.c~ Wed Aug 9 10:29:17 1995
***************
*** 421,427 ****
}else{
fprintf(stderr,
"GET_best_princ_for_target result-best principal ");
! plain_dump_principal (ksu_context, client);
fprintf(stderr,"\n");
}
}
--- 421,427 ----
}else{
fprintf(stderr,
"GET_best_princ_for_target result-best principal ");
! plain_dump_principal (client);
fprintf(stderr,"\n");
}
}
***************
*** 563,569 ****
fprintf(stderr,
"Could not get a tgt for ");
! plain_dump_principal (ksu_context, client);
fprintf(stderr, "\n");
}
--- 563,569 ----
fprintf(stderr,
"Could not get a tgt for ");
! plain_dump_principal (client);
fprintf(stderr, "\n");
}