david/ipxe
david
/
ipxe
Archived
1
0
Fork 0

[settings] Add "version" builtin setting

Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Robin Smidsrød 2013-07-13 20:57:39 +02:00 committed by Michael Brown
parent eba6bb38f2
commit 7016164056
1 changed files with 22 additions and 0 deletions

View File

@ -35,6 +35,7 @@ FILE_LICENCE ( GPL2_OR_LATER );
#include <ipxe/base16.h>
#include <ipxe/pci.h>
#include <ipxe/init.h>
#include <ipxe/version.h>
#include <ipxe/settings.h>
/** @file
@ -2176,11 +2177,32 @@ static int platform_fetch ( void *data, size_t len ) {
return ( sizeof ( platform ) - 1 /* NUL */ );
}
/** Version setting */
struct setting version_setting __setting ( SETTING_MISC ) = {
.name = "version",
.description = "Version",
.type = &setting_type_string,
.scope = &builtin_scope,
};
/**
* Fetch version setting
*
* @v data Buffer to fill with setting data
* @v len Length of buffer
* @ret len Length of setting data, or negative error
*/
static int version_fetch ( void *data, size_t len ) {
strncpy ( data, product_version, len );
return ( strlen ( product_version ) );
}
/** List of built-in setting operations */
static struct builtin_setting_operation builtin_setting_operations[] = {
{ &errno_setting, errno_fetch },
{ &buildarch_setting, buildarch_fetch },
{ &platform_setting, platform_fetch },
{ &version_setting, version_fetch },
};
/**