From: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
To: barebox@lists.infradead.org
Subject: [PATCH 5/7] dhcp: switch globalvar to it's own device
Date: Wed, 13 Mar 2013 19:05:20 +0100 [thread overview]
Message-ID: <1363197922-19851-5-git-send-email-plagnioj@jcrosoft.com> (raw)
In-Reply-To: <1363197922-19851-1-git-send-email-plagnioj@jcrosoft.com>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
---
net/dhcp.c | 40 ++++++++--------------------------------
1 file changed, 8 insertions(+), 32 deletions(-)
diff --git a/net/dhcp.c b/net/dhcp.c
index 8233ec3..7fde0d8 100644
--- a/net/dhcp.c
+++ b/net/dhcp.c
@@ -81,31 +81,16 @@ static uint32_t dhcp_leasetime;
static IPaddr_t net_dhcp_server_ip;
static uint64_t dhcp_start;
static char dhcp_tftpname[256];
+static struct device_d *dhcp_dev;
static const char* dhcp_get_barebox_global(const char * var)
{
- char * var_global = asprintf("global.dhcp.%s", var);
- const char *val;
-
- if (!var_global)
- return NULL;
-
- val = getenv(var_global);
- free(var_global);
- return val;
+ return dev_get_param(dhcp_dev, var);
}
static int dhcp_set_barebox_global(const char * var, char *val)
{
- char * var_global = asprintf("global.dhcp.%s", var);
- int ret;
-
- if (!var_global)
- return -ENOMEM;
-
- ret = setenv(var_global, val);
- free(var_global);
- return ret;
+ return dev_set_param(dhcp_dev, var, val);
}
struct dhcp_opt {
@@ -663,30 +648,21 @@ static void dhcp_reset_env(void)
}
}
-static void dhcp_global_add(const char *var)
-{
- char * var_global = asprintf("dhcp.%s", var);
-
- if (!var_global)
- return;
-
- globalvar_add_simple(var_global);
- free(var_global);
-}
-
static int dhcp_global_init(void)
{
struct dhcp_opt *opt;
struct dhcp_param *param;
int i;
+ dhcp_dev = global_add_device("dhcp");
+
for (i = 0; i < ARRAY_SIZE(dhcp_options); i++) {
opt = &dhcp_options[i];
if (!opt->barebox_dhcp_global)
continue;
- dhcp_global_add(opt->barebox_dhcp_global);
+ global_add_simple(dhcp_dev, opt->barebox_dhcp_global);
}
for (i = 0; i < ARRAY_SIZE(dhcp_params); i++) {
@@ -695,7 +671,7 @@ static int dhcp_global_init(void)
if (!param->barebox_dhcp_global)
continue;
- dhcp_global_add(param->barebox_dhcp_global);
+ global_add_simple(dhcp_dev, param->barebox_dhcp_global);
}
return 0;
@@ -719,7 +695,7 @@ static int do_dhcp(int argc, char *argv[])
dhcp_reset_env();
- dhcp_getenv_int("global.dhcp.retries", &retries);
+ dhcp_getenv_int("dhcp.retries", &retries);
while((opt = getopt(argc, argv, "H:v:c:u:U:r:")) > 0) {
switch(opt) {
--
1.7.10.4
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
next prev parent reply other threads:[~2013-03-13 18:09 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-13 18:01 [PATCH 0/7 v2] globalvar: add multiple device support Jean-Christophe PLAGNIOL-VILLARD
2013-03-13 18:05 ` [PATCH 1/7] params: allow to access first sub-device and params via env Jean-Christophe PLAGNIOL-VILLARD
2013-03-13 18:05 ` [PATCH 2/7] globalvar: add it's own bus Jean-Christophe PLAGNIOL-VILLARD
2013-03-13 18:05 ` [PATCH 3/7] globalvar: allow to register multiple device Jean-Christophe PLAGNIOL-VILLARD
2013-03-13 18:05 ` [PATCH 4/7] net: switch to global device Jean-Christophe PLAGNIOL-VILLARD
2013-03-13 18:05 ` Jean-Christophe PLAGNIOL-VILLARD [this message]
2013-03-13 18:05 ` [PATCH 6/7] bootm: switch globalvar to it's own device Jean-Christophe PLAGNIOL-VILLARD
2013-03-13 18:05 ` [PATCH 7/7] bootargs: " Jean-Christophe PLAGNIOL-VILLARD
2013-03-15 8:12 ` [PATCH 0/7 v2] globalvar: add multiple device support Sascha Hauer
-- strict thread matches above, loose matches on Subject: below --
2013-01-25 23:53 [PATCH 0/7] " Jean-Christophe PLAGNIOL-VILLARD
2013-01-25 23:55 ` [PATCH 1/7] params: allow to access first sub-device and params via env Jean-Christophe PLAGNIOL-VILLARD
2013-01-25 23:55 ` [PATCH 5/7] dhcp: switch globalvar to it's own device Jean-Christophe PLAGNIOL-VILLARD
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1363197922-19851-5-git-send-email-plagnioj@jcrosoft.com \
--to=plagnioj@jcrosoft.com \
--cc=barebox@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox