You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Presently, fixuid prevents recursing into mounts by calling sys, ok := fileInfo.Sys().(*syscall.Stat_t) and reading the device ID from sys.Dev. If the Device ID of a current file or directory is different than the Device ID of the initially searched directory, the current file or directory is considered to be on a different mount and recursion into the mount is prevented.
I am now seeing a test failure on TravisCI, files are showing up with different Device IDs than their parent directories, even though the files and directories reside on the same mount: https://travis-ci.org/boxboat/fixuid/builds/327907254
Logging output says that all of the directories in the / mount are on Device ID 41 but all of the files in the / mount are on Device ID 2049
I wondered if it was anything to do with the Storage Driver so I setup Overlay2 backed by EXT4 on my machine, and I could not recreate. At this point, I am not sure what environmental difference Travis CI has to cause this.
It seems that it would be more reliable to detect what mount a file is part of by parsing /proc/mounts instead of relying on the Device ID in the inode
The text was updated successfully, but these errors were encountered:
At this point I am wondering if it is a kernel difference in the implementation of Overlay2 or an option that TravisCI creates their EXT4 partitions with
Presently,
fixuid
prevents recursing into mounts by callingsys, ok := fileInfo.Sys().(*syscall.Stat_t)
and reading the device ID fromsys.Dev
. If the Device ID of a current file or directory is different than the Device ID of the initially searched directory, the current file or directory is considered to be on a different mount and recursion into the mount is prevented.I am now seeing a test failure on TravisCI, files are showing up with different Device IDs than their parent directories, even though the files and directories reside on the same mount:
https://travis-ci.org/boxboat/fixuid/builds/327907254
Logging output says that all of the directories in the
/
mount are on Device ID41
but all of the files in the/
mount are on Device ID2049
I wondered if it was anything to do with the Storage Driver so I setup Overlay2 backed by EXT4 on my machine, and I could not recreate. At this point, I am not sure what environmental difference Travis CI has to cause this.
It seems that it would be more reliable to detect what mount a file is part of by parsing
/proc/mounts
instead of relying on the Device ID in the inodeThe text was updated successfully, but these errors were encountered: