]> git.baikalelectronics.ru Git - uboot.git/commit
tools: mkenvimage: Always consider non-regular files
authorAndre Przywara <andre.przywara@arm.com>
Sun, 30 Jun 2019 01:45:01 +0000 (02:45 +0100)
committerTom Rini <trini@konsulko.com>
Thu, 18 Jul 2019 15:31:26 +0000 (11:31 -0400)
commit9d15a9afe135d447bbf5e4fafdbae51988a1e5dc
tree4a5984aa39f6be0979face2aed27e2d4895ffc8a
parentb9477f40fd48a0c3a9e19dba6ddede4fec544b84
tools: mkenvimage: Always consider non-regular files

At the moment mkenvimage has two separate read paths: One to read from
a potential pipe, while dynamically increasing the buffer size, and a
second one using mmap(2), using the input file's size. This is
problematic for two reasons:
- The "pipe" path will be chosen if the input filename is missing or
  "-".  Any named, but non-regular file will use the other path, which
  typically will cause mmap() to fail:
  $ mkenvimage -s 256 -o out <(echo "foo=bar")
- There is no reason to have *two* ways of reading a file, since the
  "pipe way" will always work, even for regular files.

Fix this (and simplify the code on the way) by always using the method
of dynamically resizing the buffer. The existing distinction between
the two cases will merely be used to use the open() syscall or not.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
tools/mkenvimage.c