p-cscf: Make sending requests configurable and disable it by default

This commit is contained in:
Tobias Brunner 2016-02-04 18:41:14 +01:00
parent e8262251e1
commit 276acafa2d
3 changed files with 18 additions and 2 deletions

View File

@ -73,6 +73,7 @@ plugins = \
plugins/ntru.opt \
plugins/openssl.opt \
plugins/osx-attr.opt \
plugins/p-cscf.opt \
plugins/pkcs11.opt \
plugins/radattr.opt \
plugins/random.opt \

11
conf/plugins/p-cscf.opt Normal file
View File

@ -0,0 +1,11 @@
charon.plugins.p-cscf.enable {}
Section to enable requesting P-CSCF server addresses for individual
connections.
charon.plugins.p-cscf.enable.<conn> = no
<conn> is the name of a connection with an ePDG from which to request
P-CSCF server addresses.
<conn> is the name of a connection with an ePDG from which to request
P-CSCF server addresses. Requests will be sent for addresses of the same
families for which internal IPs are requested.

View File

@ -135,9 +135,13 @@ METHOD(attribute_handler_t, create_attribute_enumerator, enumerator_t *,
.enumerate = (void*)_enumerate_attrs,
.destroy = (void*)free,
},
.request_ipv4 = has_host_family(vips, AF_INET),
.request_ipv6 = has_host_family(vips, AF_INET6),
);
if (lib->settings->get_bool(lib->settings, "%s.plugins.p-cscf.enable.%s",
FALSE, lib->ns, ike_sa->get_name(ike_sa)))
{
enumerator->request_ipv4 = has_host_family(vips, AF_INET);
enumerator->request_ipv6 = has_host_family(vips, AF_INET6);
}
return &enumerator->public;
}