1*c9945492SAndroid Build Coastguard Worker #define _GNU_SOURCE 2*c9945492SAndroid Build Coastguard Worker #include "time_impl.h" 3*c9945492SAndroid Build Coastguard Worker #include <errno.h> 4*c9945492SAndroid Build Coastguard Worker timegm(struct tm * tm)5*c9945492SAndroid Build Coastguard Workertime_t timegm(struct tm *tm) 6*c9945492SAndroid Build Coastguard Worker { 7*c9945492SAndroid Build Coastguard Worker struct tm new; 8*c9945492SAndroid Build Coastguard Worker long long t = __tm_to_secs(tm); 9*c9945492SAndroid Build Coastguard Worker if (__secs_to_tm(t, &new) < 0) { 10*c9945492SAndroid Build Coastguard Worker errno = EOVERFLOW; 11*c9945492SAndroid Build Coastguard Worker return -1; 12*c9945492SAndroid Build Coastguard Worker } 13*c9945492SAndroid Build Coastguard Worker *tm = new; 14*c9945492SAndroid Build Coastguard Worker tm->tm_isdst = 0; 15*c9945492SAndroid Build Coastguard Worker tm->__tm_gmtoff = 0; 16*c9945492SAndroid Build Coastguard Worker tm->__tm_zone = __utc; 17*c9945492SAndroid Build Coastguard Worker return t; 18*c9945492SAndroid Build Coastguard Worker } 19