summaryrefslogtreecommitdiffstats
path: root/src/kdc/kdc_util.c
diff options
context:
space:
mode:
authorTom Yu <tlyu@mit.edu>2007-04-03 19:23:52 +0000
committerTom Yu <tlyu@mit.edu>2007-04-03 19:23:52 +0000
commitf7f39b9dda8998390da542fb9bbc2be563c8a557 (patch)
treeddc2bfdf6bb73d2b961a88f61f57d66449c41c55 /src/kdc/kdc_util.c
parentfd6cef3500bd22b289be8c9c3561a11b87843f86 (diff)
downloadkrb5-f7f39b9dda8998390da542fb9bbc2be563c8a557.tar.gz
krb5-f7f39b9dda8998390da542fb9bbc2be563c8a557.tar.xz
krb5-f7f39b9dda8998390da542fb9bbc2be563c8a557.zip
MITKRB5-SA-2007-002: buffer overflow in krb5_klog_syslog
Fix MITKRB5-SA-2007-002: buffer overflow in krb5_klog_syslog. * src/lib/krb5/krb/get_in_tkt.c (krb5_klog_syslog): Use vsnprintf if available. Everything else: use precision fields on "%s" specifiers to truncate logged strings, in case someone doesn't have vsnprintf. ticket: new target_version: 1.6.1 tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@19395 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/kdc/kdc_util.c')
-rw-r--r--src/kdc/kdc_util.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/kdc/kdc_util.c b/src/kdc/kdc_util.c
index 7325d4572..aeabc5c65 100644
--- a/src/kdc/kdc_util.c
+++ b/src/kdc/kdc_util.c
@@ -404,6 +404,7 @@ kdc_get_server_key(krb5_ticket *ticket, krb5_keyblock **key, krb5_kvno *kvno)
krb5_db_free_principal(kdc_context, &server, nprincs);
if (!krb5_unparse_name(kdc_context, ticket->server, &sname)) {
+ limit_string(sname);
krb5_klog_syslog(LOG_ERR,"TGS_REQ: UNKNOWN SERVER: server='%s'",
sname);
free(sname);