xref: /aosp_15_r20/external/musl/compat/time32/mktime32.c (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1 #include "time32.h"
2 #include <time.h>
3 #include <errno.h>
4 #include <stdint.h>
5 
__mktime32(struct tm * tm)6 time32_t __mktime32(struct tm *tm)
7 {
8 	struct tm tmp = *tm;
9 	time_t t = mktime(&tmp);
10 	if (t < INT32_MIN || t > INT32_MAX) {
11 		errno = EOVERFLOW;
12 		return -1;
13 	}
14 	*tm = tmp;
15 	return t;
16 }
17