sem_post() function
This is a POSIX function, please refer to the POSIX specification for a detailed description. Note that, unlike specified in POSIX, this implementation returns -1 and sets errno to EAGAIN if the semaphore can not be unlocked (posted) due to its value being SEM_VALUE_MAX.