1*c9945492SAndroid Build Coastguard Worker #include "time32.h" 2*c9945492SAndroid Build Coastguard Worker #include <time.h> 3*c9945492SAndroid Build Coastguard Worker #include <errno.h> 4*c9945492SAndroid Build Coastguard Worker #include <stdint.h> 5*c9945492SAndroid Build Coastguard Worker __timespec_get_time32(struct timespec32 * ts32,int base)6*c9945492SAndroid Build Coastguard Workerint __timespec_get_time32(struct timespec32 *ts32, int base) 7*c9945492SAndroid Build Coastguard Worker { 8*c9945492SAndroid Build Coastguard Worker struct timespec ts; 9*c9945492SAndroid Build Coastguard Worker int r = timespec_get(&ts, base); 10*c9945492SAndroid Build Coastguard Worker if (!r) return r; 11*c9945492SAndroid Build Coastguard Worker if (ts.tv_sec < INT32_MIN || ts.tv_sec > INT32_MAX) { 12*c9945492SAndroid Build Coastguard Worker errno = EOVERFLOW; 13*c9945492SAndroid Build Coastguard Worker return 0; 14*c9945492SAndroid Build Coastguard Worker } 15*c9945492SAndroid Build Coastguard Worker ts32->tv_sec = ts.tv_sec; 16*c9945492SAndroid Build Coastguard Worker ts32->tv_nsec = ts.tv_nsec; 17*c9945492SAndroid Build Coastguard Worker return r; 18*c9945492SAndroid Build Coastguard Worker } 19