summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Yu <tlyu@mit.edu>2011-12-12 20:45:58 +0000
committerTom Yu <tlyu@mit.edu>2011-12-12 20:45:58 +0000
commitcccd1185deda696b2144e149ab0f44d267119d43 (patch)
tree6901486cfc3a923aaf84ab0beb7a8eeb0102ee53
parent5475caa3bb52e96ed07a67004b5ce9943785a3e4 (diff)
downloadkrb5-cccd1185deda696b2144e149ab0f44d267119d43.tar.gz
krb5-cccd1185deda696b2144e149ab0f44d267119d43.tar.xz
krb5-cccd1185deda696b2144e149ab0f44d267119d43.zip
kfw fixes: fix _snprintf usage; use full error code in leash_error_message
Signed-off-by: Kevin Wasserman <kevin.wasserman@painless-security.com> ticket: 7050 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@25562 dc483132-0cff-0310-8789-dd5450dbe970
-rw-r--r--src/windows/leashdll/lshfunc.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/windows/leashdll/lshfunc.c b/src/windows/leashdll/lshfunc.c
index 6f2756672f..1a0bf14305 100644
--- a/src/windows/leashdll/lshfunc.c
+++ b/src/windows/leashdll/lshfunc.c
@@ -68,7 +68,7 @@ leash_error_message(
{
char message[2048];
char *p = message;
- int size = sizeof(message);
+ int size = sizeof(message) - 1; /* -1 to leave room for NULL terminator */
int n;
// XXX: ignore AFS for now.
@@ -85,7 +85,7 @@ leash_error_message(
n = _snprintf(p, size,
"Kerberos 5: %s (error %ld)\n",
perror_message(rc5),
- rc5 & 255 // XXX: & 255??!!!
+ rc5
);
p += n;
size -= n;
@@ -109,6 +109,7 @@ leash_error_message(
size -= n;
}
#ifdef USE_MESSAGE_BOX
+ *p = 0; /* ensure NULL termination of message */
if ( displayMB )
MessageBox(NULL, message, "Leash", MB_OK | MB_ICONERROR | MB_TASKMODAL |
MB_SETFOREGROUND);