From 497ce2cf51d3e80302e24e5bdf7df566d80b4828 Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Fri, 24 Aug 2012 12:31:24 +0000 Subject: Support multiple address pools configured on a peer_cfg --- src/libhydra/attributes/attribute_manager.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/libhydra/attributes/attribute_manager.h') diff --git a/src/libhydra/attributes/attribute_manager.h b/src/libhydra/attributes/attribute_manager.h index 56afef7c6..37e872a10 100644 --- a/src/libhydra/attributes/attribute_manager.h +++ b/src/libhydra/attributes/attribute_manager.h @@ -54,8 +54,9 @@ struct attribute_manager_t { * @param pool pool name from which the address was acquired * @param address address to release * @param id peer identity to get address for + * @return TRUE if address released to pool */ - void (*release_address)(attribute_manager_t *this, + bool (*release_address)(attribute_manager_t *this, char *pool, host_t *address, identification_t *id); /** -- cgit v1.2.3 From feb8550401c85218523c007f0d52a1c9bf006342 Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Mon, 27 Aug 2012 14:09:47 +0200 Subject: Pass a list instead of a single virtual IP to attribute enumerators --- src/libhydra/attributes/attribute_manager.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/libhydra/attributes/attribute_manager.h') diff --git a/src/libhydra/attributes/attribute_manager.h b/src/libhydra/attributes/attribute_manager.h index 37e872a10..385580e56 100644 --- a/src/libhydra/attributes/attribute_manager.h +++ b/src/libhydra/attributes/attribute_manager.h @@ -64,11 +64,11 @@ struct attribute_manager_t { * * @param pool pool name to get attributes from * @param id peer identity to hand out attributes to - * @param vip virtual IP to assign to peer, if any + * @param vip list of virtual IPs (host_t*) to assign to peer * @return enumerator (configuration_attribute_type_t, chunk_t) */ enumerator_t* (*create_responder_enumerator)(attribute_manager_t *this, - char *pool, identification_t *id, host_t *vip); + char *pool, identification_t *id, linked_list_t *vips); /** * Register an attribute provider to the manager. @@ -115,11 +115,11 @@ struct attribute_manager_t { * Create an enumerator over attributes to request from server. * * @param id server identity to hand out attributes to - * @param vip virtual IP going to request, if any + * @param vip list of virtual IPs (host_t*) going to request * @return enumerator (attribute_handler_t, ca_type_t, chunk_t) */ enumerator_t* (*create_initiator_enumerator)(attribute_manager_t *this, - identification_t *id, host_t *vip); + identification_t *id, linked_list_t *vips); /** * Register an attribute handler to the manager. -- cgit v1.2.3 From d55fe264d1dd33a2751aa75a6f814e153f6354d4 Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Mon, 27 Aug 2012 14:48:41 +0200 Subject: Pass all configured pool names to attribute provider enumerator --- src/libhydra/attributes/attribute_manager.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/libhydra/attributes/attribute_manager.h') diff --git a/src/libhydra/attributes/attribute_manager.h b/src/libhydra/attributes/attribute_manager.h index 385580e56..8bc80ca11 100644 --- a/src/libhydra/attributes/attribute_manager.h +++ b/src/libhydra/attributes/attribute_manager.h @@ -62,13 +62,14 @@ struct attribute_manager_t { /** * Create an enumerator over attributes to hand out to a peer. * - * @param pool pool name to get attributes from + * @param pool list of pools names (char*) to query attributes from * @param id peer identity to hand out attributes to * @param vip list of virtual IPs (host_t*) to assign to peer * @return enumerator (configuration_attribute_type_t, chunk_t) */ enumerator_t* (*create_responder_enumerator)(attribute_manager_t *this, - char *pool, identification_t *id, linked_list_t *vips); + linked_list_t *pool, identification_t *id, + linked_list_t *vips); /** * Register an attribute provider to the manager. -- cgit v1.2.3