diff options
Diffstat (limited to 'src/charon/plugins')
-rw-r--r-- | src/charon/plugins/dbus/dbus.c | 12 | ||||
-rw-r--r-- | src/charon/plugins/smp/smp.c | 6 | ||||
-rw-r--r-- | src/charon/plugins/stroke/stroke_config.c | 2 | ||||
-rw-r--r-- | src/charon/plugins/stroke/stroke_control.c | 23 | ||||
-rw-r--r-- | src/charon/plugins/stroke/stroke_list.c | 28 |
5 files changed, 41 insertions, 30 deletions
diff --git a/src/charon/plugins/dbus/dbus.c b/src/charon/plugins/dbus/dbus.c index ac29db773..97bd3b32f 100644 --- a/src/charon/plugins/dbus/dbus.c +++ b/src/charon/plugins/dbus/dbus.c @@ -203,7 +203,7 @@ static bool start_connection(private_dbus_t *this, DBusMessage* msg) static bool stop_connection(private_dbus_t *this, DBusMessage* msg) { u_int32_t id; - iterator_t *iterator; + enumerator_t *enumerator; ike_sa_t *ike_sa; if (this->name == NULL) @@ -215,8 +215,8 @@ static bool stop_connection(private_dbus_t *this, DBusMessage* msg) set_state(this, NM_VPN_STATE_STOPPING); - iterator = charon->controller->create_ike_sa_iterator(charon->controller); - while (iterator->iterate(iterator, (void**)&ike_sa)) + enumerator = charon->controller->create_ike_sa_enumerator(charon->controller); + while (enumerator->enumerate(enumerator, (void**)&ike_sa)) { child_sa_t *child_sa; iterator_t *children; @@ -224,7 +224,7 @@ static bool stop_connection(private_dbus_t *this, DBusMessage* msg) if (this->name && streq(this->name, ike_sa->get_name(ike_sa))) { id = ike_sa->get_unique_id(ike_sa); - iterator->destroy(iterator); + enumerator->destroy(enumerator); charon->controller->terminate_ike(charon->controller, id, NULL, NULL); set_state(this, NM_VPN_STATE_STOPPED); return TRUE;; @@ -236,7 +236,7 @@ static bool stop_connection(private_dbus_t *this, DBusMessage* msg) { id = child_sa->get_reqid(child_sa); children->destroy(children); - iterator->destroy(iterator); + enumerator->destroy(enumerator); charon->controller->terminate_child(charon->controller, id, NULL, NULL); set_state(this, NM_VPN_STATE_STOPPED); return TRUE; @@ -244,7 +244,7 @@ static bool stop_connection(private_dbus_t *this, DBusMessage* msg) } children->destroy(children); } - iterator->destroy(iterator); + enumerator->destroy(enumerator); set_state(this, NM_VPN_STATE_STOPPED); return TRUE; } diff --git a/src/charon/plugins/smp/smp.c b/src/charon/plugins/smp/smp.c index 959fb9a67..df45b2c6d 100644 --- a/src/charon/plugins/smp/smp.c +++ b/src/charon/plugins/smp/smp.c @@ -216,8 +216,8 @@ static void request_query_ikesa(xmlTextReaderPtr reader, xmlTextWriterPtr writer /* <ikesalist> */ xmlTextWriterStartElement(writer, "ikesalist"); - iterator = charon->ike_sa_manager->create_iterator(charon->ike_sa_manager); - while (iterator->iterate(iterator, (void**)&ike_sa)) + enumerator = charon->controller->create_ike_sa_enumerator(charon->controller); + while (enumerator->enumerate(enumerator, &ike_sa)) { ike_sa_id_t *id; host_t *local, *remote; @@ -283,7 +283,7 @@ static void request_query_ikesa(xmlTextReaderPtr reader, xmlTextWriterPtr writer /* </ikesa> */ xmlTextWriterEndElement(writer); } - iterator->destroy(iterator); + enumerator->destroy(enumerator); /* </ikesalist> */ xmlTextWriterEndElement(writer); diff --git a/src/charon/plugins/stroke/stroke_config.c b/src/charon/plugins/stroke/stroke_config.c index 6b5c20d6e..57349f70f 100644 --- a/src/charon/plugins/stroke/stroke_config.c +++ b/src/charon/plugins/stroke/stroke_config.c @@ -488,7 +488,7 @@ static peer_cfg_t *build_peer_cfg(private_stroke_config_t *this, * uses to serve pool addresses. */ return peer_cfg_create(msg->add_conn.name, msg->add_conn.ikev2 ? 2 : 1, ike_cfg, me, other, - msg->add_conn.me.sendcert, msg->add_conn.auth_method, + msg->add_conn.me.sendcert, UNIQUE_NO, msg->add_conn.auth_method, msg->add_conn.eap_type, msg->add_conn.eap_vendor, msg->add_conn.rekey.tries, rekey, reauth, jitter, over, msg->add_conn.mobike, msg->add_conn.dpd.delay, diff --git a/src/charon/plugins/stroke/stroke_control.c b/src/charon/plugins/stroke/stroke_control.c index f6707b3e2..2956b1576 100644 --- a/src/charon/plugins/stroke/stroke_control.c +++ b/src/charon/plugins/stroke/stroke_control.c @@ -147,7 +147,7 @@ static void terminate(private_stroke_control_t *this, stroke_msg_t *msg, FILE *o bool child; int len; ike_sa_t *ike_sa; - iterator_t *iterator; + enumerator_t *enumerator; stroke_log_info_t info; string = msg->terminate.name; @@ -197,8 +197,8 @@ static void terminate(private_stroke_control_t *this, stroke_msg_t *msg, FILE *o info.out = out; info.level = msg->output_verbosity; - iterator = charon->controller->create_ike_sa_iterator(charon->controller); - while (iterator->iterate(iterator, (void**)&ike_sa)) + enumerator = charon->controller->create_ike_sa_enumerator(charon->controller); + while (enumerator->enumerate(enumerator, &ike_sa)) { child_sa_t *child_sa; iterator_t *children; @@ -213,7 +213,7 @@ static void terminate(private_stroke_control_t *this, stroke_msg_t *msg, FILE *o { id = child_sa->get_reqid(child_sa); children->destroy(children); - iterator->destroy(iterator); + enumerator->destroy(enumerator); charon->controller->terminate_child(charon->controller, id, (controller_cb_t)stroke_log, &info); @@ -227,7 +227,7 @@ static void terminate(private_stroke_control_t *this, stroke_msg_t *msg, FILE *o { id = ike_sa->get_unique_id(ike_sa); /* unlock manager first */ - iterator->destroy(iterator); + enumerator->destroy(enumerator); charon->controller->terminate_ike(charon->controller, id, (controller_cb_t)stroke_log, &info); @@ -235,9 +235,8 @@ static void terminate(private_stroke_control_t *this, stroke_msg_t *msg, FILE *o } } - iterator->destroy(iterator); + enumerator->destroy(enumerator); DBG1(DBG_CFG, "no such SA found"); - } /** @@ -285,7 +284,7 @@ static void unroute(private_stroke_control_t *this, stroke_msg_t *msg, FILE *out { char *name; ike_sa_t *ike_sa; - iterator_t *iterator; + enumerator_t *enumerator; stroke_log_info_t info; name = msg->terminate.name; @@ -293,8 +292,8 @@ static void unroute(private_stroke_control_t *this, stroke_msg_t *msg, FILE *out info.out = out; info.level = msg->output_verbosity; - iterator = charon->controller->create_ike_sa_iterator(charon->controller); - while (iterator->iterate(iterator, (void**)&ike_sa)) + enumerator = charon->controller->create_ike_sa_enumerator(charon->controller); + while (enumerator->enumerate(enumerator, &ike_sa)) { child_sa_t *child_sa; iterator_t *children; @@ -308,7 +307,7 @@ static void unroute(private_stroke_control_t *this, stroke_msg_t *msg, FILE *out { id = child_sa->get_reqid(child_sa); children->destroy(children); - iterator->destroy(iterator); + enumerator->destroy(enumerator); charon->controller->unroute(charon->controller, id, (controller_cb_t)stroke_log, &info); return; @@ -316,7 +315,7 @@ static void unroute(private_stroke_control_t *this, stroke_msg_t *msg, FILE *out } children->destroy(children); } - iterator->destroy(iterator); + enumerator->destroy(enumerator); DBG1(DBG_CFG, "no such SA found"); } diff --git a/src/charon/plugins/stroke/stroke_list.c b/src/charon/plugins/stroke/stroke_list.c index fcb0a52c6..e5c61f9f6 100644 --- a/src/charon/plugins/stroke/stroke_list.c +++ b/src/charon/plugins/stroke/stroke_list.c @@ -184,6 +184,7 @@ static void status(private_stroke_list_t *this, stroke_msg_t *msg, FILE *out, bo child_cfg_t *child_cfg; ike_sa_t *ike_sa; char *name = NULL; + bool found = FALSE; time_t uptime; name = msg->status.name; @@ -240,20 +241,18 @@ static void status(private_stroke_list_t *this, stroke_msg_t *msg, FILE *out, bo enumerator->destroy(enumerator); } - iterator = charon->ike_sa_manager->create_iterator(charon->ike_sa_manager); - if (all && iterator->get_count(iterator) > 0) - { - fprintf(out, "Security Associations:\n"); - } - while (iterator->iterate(iterator, (void**)&ike_sa)) + fprintf(out, "Security Associations:\n"); + enumerator = charon->controller->create_ike_sa_enumerator(charon->controller); + while (enumerator->enumerate(enumerator, &ike_sa)) { bool ike_printed = FALSE; child_sa_t *child_sa; iterator_t *children = ike_sa->create_child_sa_iterator(ike_sa); - + if (name == NULL || streq(name, ike_sa->get_name(ike_sa))) { log_ike_sa(out, ike_sa, all); + found = TRUE; ike_printed = TRUE; } @@ -264,6 +263,7 @@ static void status(private_stroke_list_t *this, stroke_msg_t *msg, FILE *out, bo if (!ike_printed) { log_ike_sa(out, ike_sa, all); + found = TRUE; ike_printed = TRUE; } log_child_sa(out, child_sa, all); @@ -271,7 +271,19 @@ static void status(private_stroke_list_t *this, stroke_msg_t *msg, FILE *out, bo } children->destroy(children); } - iterator->destroy(iterator); + enumerator->destroy(enumerator); + + if (!found) + { + if (name) + { + fprintf(out, " no match\n"); + } + else + { + fprintf(out, " none\n"); + } + } } /** |