mirror of
https://github.com/ipxe/ipxe
synced 2026-01-29 12:29:13 +03:00
For platforms with no real-time clock (such as RISC-V SBI) we use the null time source, which currently just returns a constant zero. Switch to using currticks() to provide a clock that does not represent the real current time, but does at least advance at approximately the correct rate. In conjunction with the "ntp" command, this allows these platforms to use time-dependent features such as X.509 certificate verification for HTTPS connections. Signed-off-by: Michael Brown <mcb30@ipxe.org>
47 lines
1.3 KiB
C
47 lines
1.3 KiB
C
/*
|
|
* Copyright (C) 2012 Michael Brown <mbrown@fensystems.co.uk>.
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License as
|
|
* published by the Free Software Foundation; either version 2 of the
|
|
* License, or any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful, but
|
|
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
|
* 02110-1301, USA.
|
|
*
|
|
* You can also choose to distribute this program under the terms of
|
|
* the Unmodified Binary Distribution Licence (as given in the file
|
|
* COPYING.UBDL), provided that you have satisfied its requirements.
|
|
*/
|
|
|
|
FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
|
|
|
|
/** @file
|
|
*
|
|
* Nonexistent time source
|
|
*
|
|
*/
|
|
|
|
#include <ipxe/time.h>
|
|
#include <ipxe/timer.h>
|
|
|
|
/**
|
|
* Get current time in seconds
|
|
*
|
|
* @ret time Time, in seconds
|
|
*/
|
|
static time_t null_now ( void ) {
|
|
|
|
/* Provide a non-absolute timer bassed on currticks() */
|
|
return ( currticks() / TICKS_PER_SEC );
|
|
}
|
|
|
|
PROVIDE_TIME ( null, time_now, null_now );
|