<div dir="ltr"><div>I found that `toybox test -w` returned true for a file with 0440 mode bits, and was able to find failures for other cases (below). </div><div><br></div><div>I think the root cause and fix is to use octal 0111 instead of hexadecimal 0x111 on this line:<br></div><div><a href="https://github.com/landley/toybox/blob/master/toys/posix/test.c#L74">https://github.com/landley/toybox/blob/master/toys/posix/test.c#L74</a> <br></div><div><br></div><div>Thank you,</div><div>Luke</div><div><br></div><div><br></div><div>generic_x86_arm:/ # toybox --version<br>toybox 0.8.3-android<br></div><div>generic_x86_arm:/ # chmod 0440 /data/foo ; ls -l /data/foo ; stat -c "%a %A %f" /data/foo<br>-r--r----- 1 root root 0 2020-11-24 16:45 /data/foo<br>440 -r--r----- 8120<br>generic_x86_arm:/ # toybox test -w /data/foo ; echo $?<br>0<br></div><div>generic_x86_arm:/ # chmod 0444 /data/foo ; ls -l /data/foo ; stat -c "%a %A %f" /data/foo<br>-r--r--r-- 1 root root 0 2020-11-24 16:45 /data/foo<br>444 -r--r--r-- 8124<br>generic_x86_arm:/ # toybox test -x /data/foo ; echo $?<br>0<br>generic_x86_arm:/ # toybox test -w /data/foo ; echo $?<br>0</div></div>