mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-11 13:43:47 +01:00
Sort variables in config_mgr_t.all_vars alphabetically
This commit is contained in:
parent
dde091ebc7
commit
a1b2817abe
@ -169,6 +169,16 @@ config_mgr_get_obj(const config_mgr_t *mgr, const void *toplevel, int idx)
|
||||
return config_mgr_get_obj_mutable(mgr, (void*)toplevel, idx);
|
||||
}
|
||||
|
||||
/** Sorting helper for smartlist of managed_var_t */
|
||||
static int
|
||||
managed_var_cmp(const void **a, const void **b)
|
||||
{
|
||||
const managed_var_t *mv1 = *(const managed_var_t**)a;
|
||||
const managed_var_t *mv2 = *(const managed_var_t**)b;
|
||||
|
||||
return strcasecmp(mv1->cvar->member.name, mv2->cvar->member.name);
|
||||
}
|
||||
|
||||
/**
|
||||
* Mark a configuration manager as "frozen", so that no more formats can be
|
||||
* added, and so that it can be used for manipulating configuration objects.
|
||||
@ -176,6 +186,7 @@ config_mgr_get_obj(const config_mgr_t *mgr, const void *toplevel, int idx)
|
||||
void
|
||||
config_mgr_freeze(config_mgr_t *mgr)
|
||||
{
|
||||
smartlist_sort(mgr->all_vars, managed_var_cmp);
|
||||
mgr->frozen = true;
|
||||
}
|
||||
|
||||
|
@ -527,78 +527,77 @@ test_confparse_dump(void *arg)
|
||||
/* Minimal version. */
|
||||
dumped = config_dump(mgr, NULL, tst, 1, 0);
|
||||
tt_str_op(dumped, OP_EQ,
|
||||
"s this is a\n"
|
||||
"fn /simple/test of the\n"
|
||||
"pos 77\n"
|
||||
"i 3\n"
|
||||
"u64 1000000000000\n"
|
||||
"interval 300\n"
|
||||
"msec_interval 300000\n"
|
||||
"mem 10\n"
|
||||
"dbl 6.060842\n"
|
||||
"boolean 1\n"
|
||||
"autobool 0\n"
|
||||
"time 2019-06-14 13:58:51\n"
|
||||
"boolean 1\n"
|
||||
"csv configuration,parsing,system\n"
|
||||
"csv_interval 10\n"
|
||||
"dbl 6.060842\n"
|
||||
"fn /simple/test of the\n"
|
||||
"i 3\n"
|
||||
"interval 300\n"
|
||||
"lines hello\n"
|
||||
"lines world\n"
|
||||
"mem 10\n"
|
||||
"VisibleLineB ABC\n"
|
||||
"LineTypeA i d\n"
|
||||
"LineTypeB i c\n"
|
||||
"msec_interval 300000\n"
|
||||
"pos 77\n"
|
||||
"routerset $FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\n"
|
||||
"VisibleLineB ABC\n");
|
||||
"s this is a\n"
|
||||
"time 2019-06-14 13:58:51\n"
|
||||
"u64 1000000000000\n");
|
||||
|
||||
/* Maximal */
|
||||
tor_free(dumped);
|
||||
dumped = config_dump(mgr, NULL, tst, 0, 0);
|
||||
tt_str_op(dumped, OP_EQ,
|
||||
"s this is a\n"
|
||||
"fn /simple/test of the\n"
|
||||
"pos 77\n"
|
||||
"i 3\n"
|
||||
"deprecated_int 3\n"
|
||||
"u64 1000000000000\n"
|
||||
"interval 300\n"
|
||||
"msec_interval 300000\n"
|
||||
"mem 10\n"
|
||||
"dbl 6.060842\n"
|
||||
"boolean 1\n"
|
||||
"autobool 0\n"
|
||||
"time 2019-06-14 13:58:51\n"
|
||||
"boolean 1\n"
|
||||
"csv configuration,parsing,system\n"
|
||||
"csv_interval 10\n"
|
||||
"dbl 6.060842\n"
|
||||
"deprecated_int 3\n"
|
||||
"fn /simple/test of the\n"
|
||||
"i 3\n"
|
||||
"interval 300\n"
|
||||
"lines hello\n"
|
||||
"lines world\n"
|
||||
"mem 10\n"
|
||||
"VisibleLineB ABC\n"
|
||||
"LineTypeA i d\n"
|
||||
"LineTypeB i c\n"
|
||||
"msec_interval 300000\n"
|
||||
"pos 77\n"
|
||||
"routerset $FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\n"
|
||||
"VisibleLineB ABC\n");
|
||||
"s this is a\n"
|
||||
"time 2019-06-14 13:58:51\n"
|
||||
"u64 1000000000000\n");
|
||||
|
||||
/* commented */
|
||||
tor_free(dumped);
|
||||
dumped = config_dump(mgr, NULL, tst, 0, 1);
|
||||
tt_str_op(dumped, OP_EQ,
|
||||
"s this is a\n"
|
||||
"fn /simple/test of the\n"
|
||||
"pos 77\n"
|
||||
"i 3\n"
|
||||
"# deprecated_int 3\n"
|
||||
"u64 1000000000000\n"
|
||||
"interval 300\n"
|
||||
"msec_interval 300000\n"
|
||||
"mem 10\n"
|
||||
"dbl 6.060842\n"
|
||||
"boolean 1\n"
|
||||
"autobool 0\n"
|
||||
"time 2019-06-14 13:58:51\n"
|
||||
"boolean 1\n"
|
||||
"csv configuration,parsing,system\n"
|
||||
"csv_interval 10\n"
|
||||
"dbl 6.060842\n"
|
||||
"# deprecated_int 3\n"
|
||||
"fn /simple/test of the\n"
|
||||
"i 3\n"
|
||||
"interval 300\n"
|
||||
"lines hello\n"
|
||||
"lines world\n"
|
||||
"mem 10\n"
|
||||
"VisibleLineB ABC\n"
|
||||
"LineTypeA i d\n"
|
||||
"LineTypeB i c\n"
|
||||
"msec_interval 300000\n"
|
||||
"pos 77\n"
|
||||
"routerset $FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\n"
|
||||
"VisibleLineB ABC\n");
|
||||
"s this is a\n"
|
||||
"time 2019-06-14 13:58:51\n"
|
||||
"u64 1000000000000\n");
|
||||
|
||||
done:
|
||||
config_free(mgr, tst);
|
||||
|
Loading…
Reference in New Issue
Block a user