]> xenbits.xensource.com Git - unikraft/libs/pthread-embedded.git/commitdiff
Implement pthread_condattr_{getclock, setclock}
authorVlad-Andrei BĂDOIU <vlad_andrei.badoiu@stud.acs.upb.ro>
Tue, 31 Mar 2020 15:07:19 +0000 (18:07 +0300)
committerFelipe Huici <felipe.huici@neclab.eu>
Thu, 2 Apr 2020 08:57:28 +0000 (10:57 +0200)
We adapt the implementation from musl.

Signed-off-by: Vlad-Andrei BĂDOIU <vlad_andrei.badoiu@stud.acs.upb.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
pthread_condattr.c

index 53dcc64abda08e8831c5120c886e7e062662f079..0861a53300386e2d668cd699e77746bbe297d86d 100644 (file)
 #include <errno.h>
 #include <time.h>
 #include <pthread.h>
-
+#include <implement.h>
 
 int pthread_condattr_getclock(const pthread_condattr_t *__restrict attr,
                clockid_t *__restrict clock_id)
 {
-       WARN_STUBBED();
-       errno = ENOTSUP;
-       return -1;
+       *clock_id = (*attr)->clock & 0x7fffffff;
+       return 0;
 }
 
 int pthread_condattr_setclock(pthread_condattr_t *attr, clockid_t clock_id)
 {
-       WARN_STUBBED();
-       errno = ENOTSUP;
-       return -1;
+       if (clock_id < 0 || clock_id-2U < 2)
+               return EINVAL;
+       (*attr)->clock &= 0x80000000;
+       (*attr)->clock |= clock_id;
+       return 0;
 }