Include manual policy priorities and restriction to interfaces in vici list-conn command

This commit is contained in:
Andreas Steffen
2016-04-09 16:51:02 +02:00
parent c26e4330e7
commit e9704e90cf
2 changed files with 27 additions and 1 deletions
+14 -1
View File
@@ -682,7 +682,8 @@ CALLBACK(list_conns, vici_message_t*,
peer_cfg_t *peer_cfg;
ike_cfg_t *ike_cfg;
child_cfg_t *child_cfg;
char *ike, *str;
char *ike, *str, *interface;
uint32_t manual_prio;
linked_list_t *list;
traffic_selector_t *ts;
vici_builder_t *b;
@@ -761,6 +762,18 @@ CALLBACK(list_conns, vici_message_t*,
list->destroy_offset(list, offsetof(traffic_selector_t, destroy));
b->end_list(b /* remote-ts */);
interface = child_cfg->get_interface(child_cfg);
if (interface)
{
b->add_kv(b, "interface", "%s", interface);
}
manual_prio = child_cfg->get_manual_prio(child_cfg);
if (manual_prio)
{
b->add_kv(b, "priority", "%u", manual_prio);
}
b->end_section(b);
}
children->destroy(children);
+13
View File
@@ -80,6 +80,7 @@ CALLBACK(children_sn, int,
hashtable_t *ike, vici_res_t *res, char *name)
{
hashtable_t *child;
char *interface, *priority;
int ret;
child = hashtable_create(hashtable_hash_str, hashtable_equals_str, 1);
@@ -89,6 +90,18 @@ CALLBACK(children_sn, int,
printf(" %s: %s\n", name, child->get(child, "mode"));
printf(" local: %s\n", child->get(child, "local-ts"));
printf(" remote: %s\n", child->get(child, "remote-ts"));
interface = child->get(child, "interface");
if (interface)
{
printf(" interface: %s\n", interface);
}
priority = child->get(child, "priority");
if (priority)
{
printf(" priority: %s\n", priority);
}
}
free_hashtable(child);
return ret;