Blame acl-2.2.49-setfacl-walk.patch
|
Kamil Dudka |
3f974d |
diff --git a/setfacl/setfacl.c b/setfacl/setfacl.c
|
|
Kamil Dudka |
3f974d |
index 091b9cc..be34e69 100644
|
|
Kamil Dudka |
3f974d |
--- a/setfacl/setfacl.c
|
|
Kamil Dudka |
3f974d |
+++ b/setfacl/setfacl.c
|
|
Kamil Dudka |
3f974d |
@@ -76,7 +76,7 @@ struct option long_options[] = {
|
|
Kamil Dudka |
3f974d |
const char *progname;
|
|
Kamil Dudka |
3f974d |
const char *cmd_line_options, *cmd_line_spec;
|
|
Kamil Dudka |
3f974d |
|
|
Kamil Dudka |
3f974d |
-int walk_flags = WALK_TREE_DEREFERENCE;
|
|
Kamil Dudka |
3f974d |
+int walk_flags = WALK_TREE_DEREFERENCE_TOPLEVEL;
|
|
Kamil Dudka |
3f974d |
int opt_recalculate; /* recalculate mask entry (0=default, 1=yes, -1=no) */
|
|
Kamil Dudka |
3f974d |
int opt_promote; /* promote access ACL to default ACL */
|
|
Kamil Dudka |
3f974d |
int opt_test; /* do not write to the file system.
|
|
Kamil Dudka |
3f974d |
@@ -580,13 +580,14 @@ int main(int argc, char *argv[])
|
|
Kamil Dudka |
3f974d |
break;
|
|
Kamil Dudka |
3f974d |
|
|
Kamil Dudka |
3f974d |
case 'L': /* follow symlinks */
|
|
Kamil Dudka |
3f974d |
- walk_flags |= WALK_TREE_LOGICAL;
|
|
Kamil Dudka |
3f974d |
+ walk_flags |= WALK_TREE_LOGICAL | WALK_TREE_DEREFERENCE;
|
|
Kamil Dudka |
3f974d |
walk_flags &= ~WALK_TREE_PHYSICAL;
|
|
Kamil Dudka |
3f974d |
break;
|
|
Kamil Dudka |
3f974d |
|
|
Kamil Dudka |
3f974d |
case 'P': /* do not follow symlinks */
|
|
Kamil Dudka |
3f974d |
walk_flags |= WALK_TREE_PHYSICAL;
|
|
Kamil Dudka |
3f974d |
- walk_flags &= ~WALK_TREE_LOGICAL;
|
|
Kamil Dudka |
3f974d |
+ walk_flags &= ~(WALK_TREE_LOGICAL | WALK_TREE_DEREFERENCE |
|
|
Kamil Dudka |
3f974d |
+ WALK_TREE_DEREFERENCE_TOPLEVEL);
|
|
Kamil Dudka |
3f974d |
break;
|
|
Kamil Dudka |
3f974d |
|
|
Kamil Dudka |
3f974d |
case 't': /* test mode */
|