- char *e = cfg->environmt;
- char *var, *varend, *val, *varval;
- while (*e) {
- var = e;
- while (*e && *e != '\t') e++;
- varend = e;
- if (*e == '\t') e++;
- val = e;
- while (*e) e++;
- e++;
-
- varval = dupprintf("%.*s=%s", varend-var, var, val);
+ char *key, *val;
+
+ for (val = conf_get_str_strs(conf, CONF_environmt, NULL, &key);
+ val != NULL;
+ val = conf_get_str_strs(conf, CONF_environmt, key, &key)) {
+ char *varval = dupcat(key, "=", val, NULL);