Programs Outside of OpenBSD Time of Check before Time of Use is normally avoided in OpenBSD source code. CAVEATS access() and faccessat() should never be used for actual access control. Doing so can result in a time of check vs. time of use security hole. Unfortunately software isn't always written to simply open what it needs and use it. access stat readlink glib functions expect stat() and access() to work all the way down.