mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
c7a38c2c06
Due to a bug in Golang (github.com/golang#27640), the "character device" bit was omitted when checking file-modes with `os.ModeType`. This bug was resolved in Go 1.12, but as a result, graphdrivers would no longer recognize "device" files, causing pulling of images that have a file with this filemode to fail; failed to register layer: unknown file type for /var/lib/docker/vfs/dir/.../dev/console The current code checked for an exact match of Modes to be set. The `os.ModeCharDevice` and `os.ModeDevice` bits will always be set in tandem, however, because the code was only looking for an exact match, this detection broke now that `os.ModeCharDevice` was added. This patch changes the code to be more defensive, and instead check if the `os.ModeDevice` bit is set (either with, or without the `os.ModeCharDevice` bit). In addition, some information was added to the error-message if no type was matched, to assist debugging in case additional types are added in future. Signed-off-by: Sebastiaan van Stijn <github@gone.nl> |
||
---|---|---|
.. | ||
copy.go | ||
copy_test.go |