Make hostname available to C Code
The boards often have a sane default for the hostname. Provide a C function for setting/getting it. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
parent
775ba3c093
commit
774580c2bd
|
@ -19,6 +19,9 @@
|
|||
#include <common.h>
|
||||
#include <errno.h>
|
||||
#include <malloc.h>
|
||||
#include <magicvar.h>
|
||||
#include <globalvar.h>
|
||||
#include <environment.h>
|
||||
|
||||
int errno;
|
||||
EXPORT_SYMBOL(errno);
|
||||
|
@ -149,3 +152,34 @@ const char *barebox_get_model(void)
|
|||
return CONFIG_BOARDINFO;
|
||||
}
|
||||
EXPORT_SYMBOL(barebox_get_model);
|
||||
|
||||
BAREBOX_MAGICVAR_NAMED(global_model, global.model, "Product name of this hardware");
|
||||
|
||||
static char *hostname;
|
||||
|
||||
/*
|
||||
* The hostname is supposed to be the shortname of a board. It should
|
||||
* contain only lowercase letters, numbers, '-', '_'. No whitespaces
|
||||
* allowed.
|
||||
*/
|
||||
void barebox_set_hostname(const char *__hostname)
|
||||
{
|
||||
if (IS_ENABLED(CONFIG_GLOBALVAR)) {
|
||||
globalvar_add_simple("hostname", __hostname);
|
||||
} else {
|
||||
free(hostname);
|
||||
hostname = xstrdup(__hostname);
|
||||
}
|
||||
}
|
||||
|
||||
const char *barebox_get_hostname(void)
|
||||
{
|
||||
if (IS_ENABLED(CONFIG_GLOBALVAR))
|
||||
return getenv("global.hostname");
|
||||
|
||||
return hostname;
|
||||
}
|
||||
EXPORT_SYMBOL(barebox_get_hostname);
|
||||
|
||||
BAREBOX_MAGICVAR_NAMED(global_hostname, global.hostname,
|
||||
"shortname of the board. Also used as hostname for DHCP requests");
|
||||
|
|
|
@ -236,6 +236,8 @@ static inline void barebox_banner(void) {}
|
|||
|
||||
const char *barebox_get_model(void);
|
||||
void barebox_set_model(const char *);
|
||||
const char *barebox_get_hostname(void);
|
||||
void barebox_set_hostname(const char *);
|
||||
|
||||
#define IOMEM(addr) ((void __force __iomem *)(addr))
|
||||
|
||||
|
|
|
@ -830,7 +830,6 @@ BAREBOX_CMD_START(dhcp)
|
|||
BAREBOX_CMD_COMPLETE(empty_complete)
|
||||
BAREBOX_CMD_END
|
||||
|
||||
BAREBOX_MAGICVAR_NAMED(global_hostname, global.hostname, "hostname to send or returned from DHCP request");
|
||||
BAREBOX_MAGICVAR_NAMED(global_dhcp_bootfile, global.dhcp.bootfile, "bootfile returned from DHCP request");
|
||||
BAREBOX_MAGICVAR_NAMED(global_dhcp_rootpath, global.dhcp.rootpath, "rootpath returned from DHCP request");
|
||||
BAREBOX_MAGICVAR_NAMED(global_dhcp_vendor_id, global.dhcp.vendor_id, "vendor id to send to the DHCP server");
|
||||
|
|
Loading…
Reference in New Issue