diff options
| author | Andreas Steffen <andreas.steffen@strongswan.org> | 2012-06-08 13:01:08 +0200 |
|---|---|---|
| committer | Andreas Steffen <andreas.steffen@strongswan.org> | 2012-06-08 21:24:41 +0200 |
| commit | 1d315bddd34033fb1679697f90a9294e2ebdcb96 (patch) | |
| tree | 157888b2e984bdc64a05179ccfa9d7353244dd7b /src/libcharon/plugins/stroke | |
| parent | e5f0f9ff969f867faf3fb243468d658c4ab9e154 (diff) | |
| download | strongswan-1d315bddd34033fb1679697f90a9294e2ebdcb96.tar.bz2 strongswan-1d315bddd34033fb1679697f90a9294e2ebdcb96.tar.xz | |
implemented the right|leftallowany feature
Diffstat (limited to 'src/libcharon/plugins/stroke')
| -rw-r--r-- | src/libcharon/plugins/stroke/stroke_config.c | 12 | ||||
| -rw-r--r-- | src/libcharon/plugins/stroke/stroke_list.c | 12 |
2 files changed, 17 insertions, 7 deletions
diff --git a/src/libcharon/plugins/stroke/stroke_config.c b/src/libcharon/plugins/stroke/stroke_config.c index 6b8dc234b..910acf18f 100644 --- a/src/libcharon/plugins/stroke/stroke_config.c +++ b/src/libcharon/plugins/stroke/stroke_config.c @@ -225,9 +225,13 @@ static ike_cfg_t *build_ike_cfg(private_stroke_config_t *this, stroke_msg_t *msg } } ike_cfg = ike_cfg_create(msg->add_conn.other.sendcert != CERT_NEVER_SEND, - msg->add_conn.force_encap, - msg->add_conn.me.address, msg->add_conn.me.ikeport, - msg->add_conn.other.address, msg->add_conn.other.ikeport); + msg->add_conn.force_encap, + msg->add_conn.me.address, + msg->add_conn.me.allow_any, + msg->add_conn.me.ikeport, + msg->add_conn.other.address, + msg->add_conn.other.allow_any, + msg->add_conn.other.ikeport); add_proposals(this, msg->add_conn.algorithms.ike, ike_cfg, NULL); return ike_cfg; } @@ -625,7 +629,7 @@ static peer_cfg_t *build_peer_cfg(private_stroke_config_t *this, } else { - if (strchr(ike_cfg->get_my_addr(ike_cfg), ':')) + if (strchr(ike_cfg->get_my_addr(ike_cfg, NULL), ':')) { vip = host_create_any(AF_INET6); } diff --git a/src/libcharon/plugins/stroke/stroke_list.c b/src/libcharon/plugins/stroke/stroke_list.c index a179adfe0..88523ea46 100644 --- a/src/libcharon/plugins/stroke/stroke_list.c +++ b/src/libcharon/plugins/stroke/stroke_list.c @@ -500,6 +500,9 @@ METHOD(stroke_list_t, status, void, charon->backends, NULL, NULL, NULL, NULL, IKE_ANY); while (enumerator->enumerate(enumerator, &peer_cfg)) { + char *my_addr, *other_addr; + bool my_allow_any, other_allow_any; + if (name && !streq(name, peer_cfg->get_name(peer_cfg))) { continue; @@ -507,9 +510,12 @@ METHOD(stroke_list_t, status, void, ike_cfg = peer_cfg->get_ike_cfg(peer_cfg); ike_version = peer_cfg->get_ike_version(peer_cfg); - fprintf(out, "%12s: %s...%s %N", peer_cfg->get_name(peer_cfg), - ike_cfg->get_my_addr(ike_cfg), ike_cfg->get_other_addr(ike_cfg), - ike_version_names, ike_version); + my_addr = ike_cfg->get_my_addr(ike_cfg, &my_allow_any); + other_addr = ike_cfg->get_other_addr(ike_cfg, &other_allow_any); + fprintf(out, "%12s: %s%s...%s%s %N", peer_cfg->get_name(peer_cfg), + my_allow_any ? "%":"", my_addr, + other_allow_any ? "%":"", other_addr, + ike_version_names, ike_version); if (ike_version == IKEV1 && peer_cfg->use_aggressive(peer_cfg)) { |
