/* * Copyright (c) 2017 Intel Corporation * Copyright (c) 2019 Peter Bigot Consulting, LLC * * SPDX-License-Identifier: Apache-2.0 */ #ifndef ZEPHYR_LIB_LIBC_MINIMAL_INCLUDE_TIME_H_ #define ZEPHYR_LIB_LIBC_MINIMAL_INCLUDE_TIME_H_ #include #include #include #include /* Minimal time.h to fulfill the requirements of certain libraries * like mbedTLS and to support time APIs. */ #ifdef __cplusplus extern "C" { #endif struct tm { int tm_sec; int tm_min; int tm_hour; int tm_mday; int tm_mon; int tm_year; int tm_wday; int tm_yday; int tm_isdst; }; #if !defined(__time_t_defined) #define __time_t_defined typedef _TIME_T_ time_t; #endif #if !defined(__suseconds_t_defined) #define __suseconds_t_defined typedef _SUSECONDS_T_ suseconds_t; #endif /* * Conversion between civil time and UNIX time. The companion * localtime() and inverse mktime() are not provided here since they * require access to time zone information. */ struct tm *gmtime(const time_t *timep); struct tm *gmtime_r(const time_t *_MLIBC_RESTRICT timep, struct tm *_MLIBC_RESTRICT result); time_t time(time_t *tloc); #ifdef __cplusplus } #endif #endif /* ZEPHYR_LIB_LIBC_MINIMAL_INCLUDE_STDIO_H_ */