summaryrefslogtreecommitdiffstats
path: root/src/kadmin/cli
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@mit.edu>2007-07-12 23:35:24 +0000
committerKen Raeburn <raeburn@mit.edu>2007-07-12 23:35:24 +0000
commitc67c8d9e788049afcfd76709116172ac26b3c02d (patch)
tree33dde4459bdb8e2e3b7d334a74ec33c6b304004e /src/kadmin/cli
parent83ac9cd518766c5db25bc3cdb34ee276c89770ee (diff)
Use [v]snprintf or asprintf instead of unchecked sprintf and separate allocation size calculations
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@19709 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/kadmin/cli')
-rw-r--r--src/kadmin/cli/keytab.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/src/kadmin/cli/keytab.c b/src/kadmin/cli/keytab.c
index 297b7994ea..89fbe66b1f 100644
--- a/src/kadmin/cli/keytab.c
+++ b/src/kadmin/cli/keytab.c
@@ -99,15 +99,11 @@ static int process_keytab(krb5_context my_context, char **keytab_str,
return 1;
}
} else {
- char *tmp = *keytab_str;
-
- *keytab_str = (char *)
- malloc(strlen("WRFILE:")+strlen(tmp)+1);
- if (*keytab_str == NULL) {
- com_err(whoami, ENOMEM, "while creating keytab name");
- return 1;
+ if (asprintf(keytab_str, "WRFILE:%s", *keytab_str) < 0) {
+ *keytab_str = NULL;
+ com_err(whoami, ENOMEM, "while creating keytab name");
+ return 1;
}
- sprintf(*keytab_str, "WRFILE:%s", tmp);
}
code = krb5_kt_resolve(my_context, *keytab_str, keytab);
@@ -488,7 +484,7 @@ static char *etype_string(enctype)
krb5_error_code ret;
if ((ret = krb5_enctype_to_string(enctype, buf, sizeof(buf))))
- sprintf(buf, "etype %d", enctype);
+ snprintf(buf, sizeof(buf), "etype %d", enctype);
return buf;
}