aboutsummaryrefslogtreecommitdiffstats
path: root/src/libcharon/attributes/attribute_manager.c
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2014-11-04 15:38:07 +0100
committerMartin Willi <martin@revosec.ch>2015-02-20 13:34:56 +0100
commitbc9ded9dbf39d064c3ff2239d9904566ff5888d6 (patch)
tree32004452b8ebec1d5706d84b7c1a701566ecf7e1 /src/libcharon/attributes/attribute_manager.c
parenta12f357b40c75987965ee0ea9ff4f8ad5573fc5a (diff)
downloadstrongswan-bc9ded9dbf39d064c3ff2239d9904566ff5888d6.tar.bz2
strongswan-bc9ded9dbf39d064c3ff2239d9904566ff5888d6.tar.xz
attribute-provider: Pass full IKE_SA to provider backends
Diffstat (limited to 'src/libcharon/attributes/attribute_manager.c')
-rw-r--r--src/libcharon/attributes/attribute_manager.c15
1 files changed, 3 insertions, 12 deletions
diff --git a/src/libcharon/attributes/attribute_manager.c b/src/libcharon/attributes/attribute_manager.c
index b6afd9a4b..ad9a63964 100644
--- a/src/libcharon/attributes/attribute_manager.c
+++ b/src/libcharon/attributes/attribute_manager.c
@@ -65,16 +65,13 @@ METHOD(attribute_manager_t, acquire_address, host_t*,
{
enumerator_t *enumerator;
attribute_provider_t *current;
- identification_t *id;
host_t *host = NULL;
- id = ike_sa->get_other_eap_id(ike_sa);
-
this->lock->read_lock(this->lock);
enumerator = this->providers->create_enumerator(this->providers);
while (enumerator->enumerate(enumerator, &current))
{
- host = current->acquire_address(current, pools, id, requested);
+ host = current->acquire_address(current, pools, ike_sa, requested);
if (host)
{
break;
@@ -92,16 +89,13 @@ METHOD(attribute_manager_t, release_address, bool,
{
enumerator_t *enumerator;
attribute_provider_t *current;
- identification_t *id;
bool found = FALSE;
- id = ike_sa->get_other_eap_id(ike_sa);
-
this->lock->read_lock(this->lock);
enumerator = this->providers->create_enumerator(this->providers);
while (enumerator->enumerate(enumerator, &current))
{
- if (current->release_address(current, pools, address, id))
+ if (current->release_address(current, pools, address, ike_sa))
{
found = TRUE;
break;
@@ -119,11 +113,8 @@ METHOD(attribute_manager_t, release_address, bool,
static enumerator_t *responder_enum_create(attribute_provider_t *provider,
enum_data_t *data)
{
- identification_t *id;
-
- id = data->ike_sa->get_other_eap_id(data->ike_sa);
return provider->create_attribute_enumerator(provider, data->pools,
- id, data->vips);
+ data->ike_sa, data->vips);
}
METHOD(attribute_manager_t, create_responder_enumerator, enumerator_t*,