blob: ab93a3dbbf35efbe46f92907c5ba9c4ff5367fad [file] [log] [blame]
#ifndef _TIME_H
#define _TIME_H
/** @file
*
* Date and time
*/
FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
#include <sys/time.h>
#include <ipxe/time.h>
/** Broken-down time */
struct tm {
/** Seconds [0,60] */
int tm_sec;
/** Minutes [0,59] */
int tm_min;
/** Hour [0,23] */
int tm_hour;
/** Day of month [1,31] */
int tm_mday;
/** Month of year [0,11] */
int tm_mon;
/** Years since 1900 */
int tm_year;
/** Day of week [0,6] (Sunday=0) */
int tm_wday;
/** Day of year [0,365] */
int tm_yday;
/** Daylight savings flag */
int tm_isdst;
};
/**
* Get current time in seconds since the Epoch
*
* @v t Time to fill in, or NULL
* @ret time Current time
*/
static inline __attribute__ (( always_inline )) time_t time ( time_t *t ) {
time_t now;
now = ( time_now() + time_offset );
if ( t )
*t = now;
return now;
}
extern time_t mktime ( struct tm *tm );
#endif /* _TIME_H */