Unveil can affect program behaviour This is different from pledge(2) (when you break a pledge, your program is dead) Unveil makes things look different to your program. What gets returned makes programs change behaviours! This can be scary! (as we will see) Early on we saw the need for the ENOENT vs EACCES distinction so programs behave "normally"