From 925b2264a346f9ccd73dac1d3babe3ebf2532e5e Mon Sep 17 00:00:00 2001 From: Johan Danielsson Date: Fri, 2 May 1997 10:13:00 +0000 Subject: [PATCH] Better prompting with su. git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@1629 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/auth/sia/sia.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/lib/auth/sia/sia.c b/lib/auth/sia/sia.c index 12cf4580f..f0f7f84d4 100644 --- a/lib/auth/sia/sia.c +++ b/lib/auth/sia/sia.c @@ -290,11 +290,25 @@ siad_ses_suauthent(sia_collect_func_t *collect, return SIADFAIL; if(entity->password == NULL){ prompt_t prompt; + int ret; if(collect == NULL) return SIADFAIL; setup_password(entity, &prompt); - if((*collect)(0, SIAONELINER, (unsigned char*)"", 1, - &prompt) != SIACOLSUCCESS) + prompt.prompt = malloc(strlen(toname) + strlen(toinst) + + strlen(realm) + sizeof("'s Password: ") + 2); + if(prompt.prompt == NULL) + return SIADFAIL; + strcpy(prompt.prompt, toname); + if(toinst[0]){ + strcat(prompt.prompt, "."); + strcat(prompt.prompt, toinst); + } + strcat(prompt.prompt, "@"); + strcat(prompt.prompt, realm); + strcat(prompt.prompt, "'s Password: "); + ret = (*collect)(0, SIAONELINER, (unsigned char*)"", 1, &prompt); + free(prompt.prompt); + if(ret != SIACOLSUCCESS) return SIADFAIL; } if(entity->password == NULL)