[PATCH] D70854: [Clang] In tests, do not always assume others permissions are set

Alexandre Ganea via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Dec 3 14:55:57 PST 2019


aganea marked 3 inline comments as done.
aganea added inline comments.


================
Comment at: clang/test/Misc/permissions.cpp:8
 
 // RUN: umask 002
 // RUN: %clang_cc1 -emit-llvm-bc %s -o %t
----------------
rnk wrote:
> If you change this to `umask 022`, does that result in `rw-r-----`? That would make the test meaningful on your system.
No, using `umask 022` has no effect, still yields 'rw':
```
$ umask
0000
$ umask 0077
$ touch test
$ ls -l
-rw-rw---- 1 aganea sudosgroup    0 Dec  3 11:02 test
```
So this seems to be related to the interaction between ACL and `umask`. The [[ http://man7.org/linux/man-pages/man2/umask.2.html | umask doc ]] says they should interact, but that doesn't seem to work on my Ubuntu 18.04.01. No matter what I set in the umask mode, creating a new file inherits the default ACL.
All my folders have ACL enabled:
```
$ ls -l /mnt/
drwxrws--x+ 8 root sudosgroup 4096 Dec  3 17:07 f       <-- note the + which indicates ACL is being used
```

I could give 'rw' permissions to others:
```
$ setfacl -R -d -m o::rw /mnt/f
```
However even with that, the test fails (because umask has no effect).
I'm not sure what the right fix would be here. I can investigate other things. Any suggestions?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D70854/new/

https://reviews.llvm.org/D70854





More information about the cfe-commits mailing list