summaryrefslogtreecommitdiffstats
path: root/usr.sbin/btxld
diff options
context:
space:
mode:
authordfr <dfr@FreeBSD.org>2008-04-05 10:26:20 +0000
committerdfr <dfr@FreeBSD.org>2008-04-05 10:26:20 +0000
commitb7878b140b0742e16832be9bd2c17346af36a5b4 (patch)
tree9c3af79ed47f2a88777f35487bf35109ca468601 /usr.sbin/btxld
parent871b77b7f6c530a18f4e76a2c283b09678c70c9f (diff)
downloadFreeBSD-src-b7878b140b0742e16832be9bd2c17346af36a5b4.zip
FreeBSD-src-b7878b140b0742e16832be9bd2c17346af36a5b4.tar.gz
Allow for a zero length 'loader'.
Diffstat (limited to 'usr.sbin/btxld')
-rw-r--r--usr.sbin/btxld/btxld.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/usr.sbin/btxld/btxld.c b/usr.sbin/btxld/btxld.c
index f255fa5..43fa4a9 100644
--- a/usr.sbin/btxld/btxld.c
+++ b/usr.sbin/btxld/btxld.c
@@ -336,6 +336,8 @@ gethdr(int fd, struct hdr *hdr)
if (sb.st_size > MAXU32)
errx(1, "%s: Too big", fname);
hdr->size = sb.st_size;
+ if (!hdr->size)
+ return;
if ((p = mmap(NULL, hdr->size, PROT_READ, MAP_SHARED, fd,
0)) == MAP_FAILED)
err(2, "%s", fname);
OpenPOWER on IntegriCloud