aboutsummaryrefslogtreecommitdiff
path: root/src/lib/krb5/keytab
diff options
context:
space:
mode:
authorGreg Hudson <ghudson@mit.edu>2009-02-05 18:34:57 +0000
committerGreg Hudson <ghudson@mit.edu>2009-02-05 18:34:57 +0000
commit7ddad650cc63bacc2179ffbb22c94b5fe1b55f7c (patch)
tree891eafd4a00082875a4c634b16621b8198b6144e /src/lib/krb5/keytab
parent14f126c33d0259bed41255b9e809a66072733f36 (diff)
downloadkrb5-7ddad650cc63bacc2179ffbb22c94b5fe1b55f7c.zip
krb5-7ddad650cc63bacc2179ffbb22c94b5fe1b55f7c.tar.gz
krb5-7ddad650cc63bacc2179ffbb22c94b5fe1b55f7c.tar.bz2
In krb5_ktfileint_find_slot, check for an error return from ftell.
(Such an error will never happen in any reasonable stdio implementation but it's more correct to check.) git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@21892 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/krb5/keytab')
-rw-r--r--src/lib/krb5/keytab/kt_file.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/krb5/keytab/kt_file.c b/src/lib/krb5/keytab/kt_file.c
index ecdc28a..df5cbb0 100644
--- a/src/lib/krb5/keytab/kt_file.c
+++ b/src/lib/krb5/keytab/kt_file.c
@@ -1722,6 +1722,9 @@ krb5_ktfileint_find_slot(krb5_context context, krb5_keytab id, krb5_int32 *size_
* Make sure we zero any trailing data.
*/
zero_point = ftell(KTFILEP(id));
+ if (zero_point < 0) {
+ return errno;
+ }
while ((size = fread(iobuf, 1, sizeof(iobuf), KTFILEP(id)))) {
if (size != sizeof(iobuf)) {
remainder = size % sizeof(krb5_int32);