diff options
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/kdb/kdb_log.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/lib/kdb/kdb_log.c b/src/lib/kdb/kdb_log.c index be5853ccc..8d24857ab 100644 --- a/src/lib/kdb/kdb_log.c +++ b/src/lib/kdb/kdb_log.c @@ -590,7 +590,10 @@ ulog_map(krb5_context context, const char *logname, uint32_t ulogentries, } if (caller == FKPROPLOG) { - fstat(ulogfd, &st); + if (fstat(ulogfd, &st) < 0) { + close(ulogfd); + return errno; + } ulog_filesize = st.st_size; ulog = (kdb_hlog_t *)mmap(0, ulog_filesize, @@ -607,6 +610,7 @@ ulog_map(krb5_context context, const char *logname, uint32_t ulogentries, /* * Can't map update log file to memory */ + close(ulogfd); return (errno); } |
