@@ -1317,7 +1317,6 @@
static void
setenv_route(struct env_set *es, const struct route_ipv4 *r, int i)
{
- struct gc_arena gc = gc_new();
if (r->flags & RT_DEFINED)
{
setenv_route_addr(es, "network", r->network, i);
@@ -1326,12 +1325,9 @@
if (r->flags & RT_METRIC_DEFINED)
{
- struct buffer name = alloc_buf_gc(256, &gc);
- buf_printf(&name, "route_metric_%d", i);
- setenv_int(es, BSTR(&name), r->metric);
+ setenv_int_i(es, "route_metric", r->metric, i);
}
}
- gc_free(&gc);
}
void
@@ -1351,22 +1347,15 @@
struct gc_arena gc = gc_new();
if (r6->flags & RT_DEFINED)
{
- struct buffer name1 = alloc_buf_gc(256, &gc);
struct buffer val = alloc_buf_gc(256, &gc);
- struct buffer name2 = alloc_buf_gc(256, &gc);
- buf_printf(&name1, "route_ipv6_network_%d", i);
buf_printf(&val, "%s/%u", print_in6_addr(r6->network, 0, &gc), r6->netbits);
- setenv_str(es, BSTR(&name1), BSTR(&val));
-
- buf_printf(&name2, "route_ipv6_gateway_%d", i);
- setenv_str(es, BSTR(&name2), print_in6_addr(r6->gateway, 0, &gc));
+ setenv_str_i(es, "route_ipv6_network", BSTR(&val), i);
+ setenv_str_i(es, "route_ipv6_gateway", print_in6_addr(r6->gateway, 0, &gc), i);
if (r6->flags & RT_METRIC_DEFINED)
{
- struct buffer name3 = alloc_buf_gc(256, &gc);
- buf_printf(&name3, "route_ipv6_metric_%d", i);
- setenv_int(es, BSTR(&name3), r6->metric);
+ setenv_int_i(es, "route_ipv6_metric", r6->metric, i);
}
}
gc_free(&gc);