-
Notifications
You must be signed in to change notification settings - Fork 251
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
archive: store the override xattr with the inode type #2183
archive: store the override xattr with the inode type #2183
Conversation
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: giuseppe The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
related fuse-overlayfs change: containers/fuse-overlayfs#434 |
3e313eb
to
f5153fb
Compare
f5153fb
to
18c73a2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK conceptually, but there seems even more to be done.
- symbolic links are now not handled consistently.
check.go
interpretsforce_mask
; it needs to be taught about this- Doesn’t the code in
overlay.Driver.create
around creatingdiff
need to also setos.ModeDir
now? - The parser in
pkg/archive.remapIDs
seems to need updating (preferably consolidate all parsers to one function)
(It gets confusing… if only the OS had separate types for “permission bits” and “the full mode including a ModeType
.)
pkg/idtools/idtools.go
Outdated
@@ -436,7 +507,7 @@ func SafeChown(name string, uid, gid int) error { | |||
} | |||
} | |||
} | |||
value := Stat{IDPair{uid, gid}, mode} | |||
value := Stat{IDPair{uid, gid}, mode, 0, 0} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this need to handle file types?
pkg/idtools/idtools.go
Outdated
@@ -464,7 +535,7 @@ func SafeLchown(name string, uid, gid int) error { | |||
} | |||
} | |||
} | |||
value := Stat{IDPair{uid, gid}, mode} | |||
value := Stat{IDPair{uid, gid}, mode, 0, 0} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this need to handle file types?
18c73a2
to
054a550
Compare
Signed-off-by: Giuseppe Scrivano <[email protected]>
98ff561
to
b2ddf4f
Compare
pushed a new version, and verified manually both partial pulls and with regular pulls |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK to the symlink semantics change.
Note also the outstanding items in the top-level review comment in #2183 (review) .
b2ddf4f
to
6a69308
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don’t SafeChown
/SafeLchown
still need a bit of an update?
c11fa65
to
45adba0
Compare
I've changed them further. I don't really know how they are used on darwin. I see the same data is also set on the file itself. |
IIRC the general idea has been to allow unprivileged macOS users to extract volumes, but I’d need to look up the git history to confirm. |
45adba0
to
89b73d0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM otherwise.
Signed-off-by: Giuseppe Scrivano <[email protected]>
Signed-off-by: Giuseppe Scrivano <[email protected]>
Fixes: containers#2174 Signed-off-by: Giuseppe Scrivano <[email protected]>
Signed-off-by: Giuseppe Scrivano <[email protected]>
Signed-off-by: Giuseppe Scrivano <[email protected]>
89b73d0
to
84e7502
Compare
@rhatdan PTAL |
/lgtm |
Closes: #2174