xref: /aosp_15_r20/external/musl/src/signal/getitimer.c (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker #include <sys/time.h>
2*c9945492SAndroid Build Coastguard Worker #include "syscall.h"
3*c9945492SAndroid Build Coastguard Worker 
getitimer(int which,struct itimerval * old)4*c9945492SAndroid Build Coastguard Worker int getitimer(int which, struct itimerval *old)
5*c9945492SAndroid Build Coastguard Worker {
6*c9945492SAndroid Build Coastguard Worker 	if (sizeof(time_t) > sizeof(long)) {
7*c9945492SAndroid Build Coastguard Worker 		long old32[4];
8*c9945492SAndroid Build Coastguard Worker 		int r = __syscall(SYS_getitimer, which, old32);
9*c9945492SAndroid Build Coastguard Worker 		if (!r) {
10*c9945492SAndroid Build Coastguard Worker 			old->it_interval.tv_sec = old32[0];
11*c9945492SAndroid Build Coastguard Worker 			old->it_interval.tv_usec = old32[1];
12*c9945492SAndroid Build Coastguard Worker 			old->it_value.tv_sec = old32[2];
13*c9945492SAndroid Build Coastguard Worker 			old->it_value.tv_usec = old32[3];
14*c9945492SAndroid Build Coastguard Worker 		}
15*c9945492SAndroid Build Coastguard Worker 		return __syscall_ret(r);
16*c9945492SAndroid Build Coastguard Worker 	}
17*c9945492SAndroid Build Coastguard Worker 	return syscall(SYS_getitimer, which, old);
18*c9945492SAndroid Build Coastguard Worker }
19