replace sprintf all over the place
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@1635 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -64,7 +64,9 @@ afs_verify(char *name,
|
||||
|
||||
if (krb_get_lrealm (lrealm, 1) != KFAILURE &&
|
||||
(pwd = k_getpwnam (name)) != NULL) {
|
||||
sprintf (tkt_string, "%s%d_%d", TKT_ROOT, (int)pwd->pw_uid, (int)getpid());
|
||||
snprintf (tkt_string, sizeof(tkt_string),
|
||||
"%s%d_%d", TKT_ROOT,
|
||||
(unsigned)pwd->pw_uid, (unsigned)getpid());
|
||||
krb_set_tkt_string (tkt_string);
|
||||
ret = krb_verify_user (name, "", lrealm, password, 1, NULL);
|
||||
if (ret == KSUCCESS) {
|
||||
|
@@ -105,7 +105,7 @@ auth_login(pam_handle_t *pamh, int flags, char *user, struct pam_conv *conv)
|
||||
|
||||
pmsg = &msg;
|
||||
msg.msg_style = PAM_PROMPT_ECHO_OFF;
|
||||
sprintf(prompt, "%s's Password: ", user);
|
||||
snprintf(prompt, sizeof(prompt), "%s's Password: ", user);
|
||||
msg.msg = prompt;
|
||||
|
||||
ret = conv->conv(1, (const struct pam_message**)&pmsg,
|
||||
@@ -116,8 +116,9 @@ auth_login(pam_handle_t *pamh, int flags, char *user, struct pam_conv *conv)
|
||||
{
|
||||
char tkt[1024];
|
||||
struct passwd *pw = getpwnam(user);
|
||||
|
||||
if(pw){
|
||||
sprintf(tkt, "%s%d", TKT_ROOT, pw->pw_uid);
|
||||
snprintf(tkt, sizeof(tkt), "%s%d", TKT_ROOT, pw->pw_uid);
|
||||
ret = doit(pamh, user, "", resp->resp, tkt);
|
||||
if(ret == PAM_SUCCESS)
|
||||
chown(tkt, pw->pw_uid, pw->pw_gid);
|
||||
@@ -155,7 +156,7 @@ auth_su(pam_handle_t *pamh, int flags, char *user, struct pam_conv *conv)
|
||||
}
|
||||
pmsg = &msg;
|
||||
msg.msg_style = PAM_PROMPT_ECHO_OFF;
|
||||
sprintf(prompt, "%s's Password: ", krb_unparse_name(&pr));
|
||||
snprintf(prompt, sizeof(prompt), "%s's Password: ", krb_unparse_name(&pr));
|
||||
msg.msg = prompt;
|
||||
|
||||
ret = conv->conv(1, (const struct pam_message**)&pmsg,
|
||||
@@ -165,7 +166,8 @@ auth_su(pam_handle_t *pamh, int flags, char *user, struct pam_conv *conv)
|
||||
|
||||
{
|
||||
char tkt[1024];
|
||||
sprintf(tkt, "%s_%s_to_%s", TKT_ROOT, pw->pw_name, user);
|
||||
|
||||
snprintf(tkt, sizeof(tkt),"%s_%s_to_%s", TKT_ROOT, pw->pw_name, user);
|
||||
ret = doit(pamh, pr.name, pr.instance, resp->resp, tkt);
|
||||
if(ret == PAM_SUCCESS)
|
||||
chown(tkt, pw->pw_uid, pw->pw_gid);
|
||||
|
@@ -198,8 +198,9 @@ siad_ses_authent(sia_collect_func_t *collect,
|
||||
|
||||
if(getpwnam_r(entity->name, &pw, pwbuf, sizeof(pwbuf), &pwd) != 0)
|
||||
return SIADFAIL;
|
||||
sprintf((char*)entity->mech[pkgind], "%s%d_%d",
|
||||
TKT_ROOT, pwd->pw_uid, getpid());
|
||||
snprintf((char*)entity->mech[pkgind], sizeof(entity->mech[pkgind]),
|
||||
"%s%d_%d",
|
||||
TKT_ROOT, pwd->pw_uid, getpid());
|
||||
krb_set_tkt_string((char*)entity->mech[pkgind]);
|
||||
|
||||
krb_get_lrealm(realm, 1);
|
||||
@@ -235,7 +236,7 @@ siad_ses_launch(sia_collect_func_t *collect,
|
||||
char buf[MaxPathLen];
|
||||
static char env[64];
|
||||
chown((char*)entity->mech[pkgind],entity->pwd->pw_uid, entity->pwd->pw_gid);
|
||||
sprintf(env, "KRBTKFILE=%s", (char*)entity->mech[pkgind]);
|
||||
snprintf(env, sizeof(env), "KRBTKFILE=%s", (char*)entity->mech[pkgind]);
|
||||
putenv(env);
|
||||
if (k_hasafs()) {
|
||||
char cell[64];
|
||||
@@ -294,18 +295,13 @@ siad_ses_suauthent(sia_collect_func_t *collect,
|
||||
if(collect == NULL)
|
||||
return SIADFAIL;
|
||||
setup_password(entity, &prompt);
|
||||
prompt.prompt = malloc(strlen(toname) + strlen(toinst) +
|
||||
strlen(realm) + sizeof("'s Password: ") + 2);
|
||||
if(prompt.prompt == NULL)
|
||||
asprintf (&prompt.prompt,
|
||||
"%s%s%s@%s's Password: ",
|
||||
toname, toinst[0] ? "." : "",
|
||||
toinst[0] ? toinst, "",
|
||||
realm);
|
||||
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)
|
||||
@@ -319,8 +315,9 @@ siad_ses_suauthent(sia_collect_func_t *collect,
|
||||
if(krb_kuserok(toname, toinst, realm, entity->name))
|
||||
return SIADFAIL;
|
||||
|
||||
sprintf((char*)entity->mech[pkgind], "/tmp/tkt_%s_to_%s_%d",
|
||||
pwd->pw_name, topwd->pw_name, getpid());
|
||||
snprintf((char*)entity->mech[pkgind], sizeof(entity->mech[pkgind]),
|
||||
"/tmp/tkt_%s_to_%s_%d",
|
||||
pwd->pw_name, topwd->pw_name, getpid());
|
||||
krb_set_tkt_string((char*)entity->mech[pkgind]);
|
||||
ret = krb_verify_user(toname, toinst, realm, entity->password, 1, NULL);
|
||||
if(ret){
|
||||
|
Reference in New Issue
Block a user