LibPthread: Validate the clock argument in pthread_condattr_setclock

This commit is contained in:
Brian Gianforcaro 2022-01-08 19:57:53 -08:00 committed by Ali Mohammad Pur
commit c6f745de27
Notes: sideshowbarker 2024-07-17 21:21:18 +09:00

View file

@ -39,8 +39,17 @@ int pthread_condattr_getclock(pthread_condattr_t* attr, clockid_t* clock)
// https://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_condattr_setclock.html
int pthread_condattr_setclock(pthread_condattr_t* attr, clockid_t clock)
{
attr->clockid = clock;
return 0;
switch (clock) {
case CLOCK_REALTIME:
case CLOCK_REALTIME_COARSE:
case CLOCK_MONOTONIC:
case CLOCK_MONOTONIC_COARSE:
case CLOCK_MONOTONIC_RAW:
attr->clockid = clock;
return 0;
default:
return EINVAL;
}
}
// Condition variables.