Revision b5a2055f src/charon/plugins/attr/attr_provider.c

b/src/charon/plugins/attr/attr_provider.c
61 61
/**
62 62
 * Implementation of attribute_provider_t.create_attribute_enumerator
63 63
 */
64
static enumerator_t* create_attribute_enumerator(
65
					private_attr_provider_t *this, identification_t *id)
64
static enumerator_t* create_attribute_enumerator(private_attr_provider_t *this,
65
											identification_t *id, host_t *vip)
66 66
{
67
	return enumerator_create_filter(
67
	if (vip)
68
	{
69
		return enumerator_create_filter(
68 70
						this->attributes->create_enumerator(this->attributes),
69 71
						(void*)attr_enum_filter, NULL, NULL);
72
	}
73
	return enumerator_create_empty();
70 74
}
71 75

  
72 76
/**
......
138 142

  
139 143
	this->public.provider.acquire_address = (host_t*(*)(attribute_provider_t *this, char*, identification_t *, host_t *))return_null;
140 144
	this->public.provider.release_address = (bool(*)(attribute_provider_t *this, char*,host_t *, identification_t*))return_false;
141
	this->public.provider.create_attribute_enumerator = (enumerator_t*(*)(attribute_provider_t*, identification_t *id))create_attribute_enumerator;
145
	this->public.provider.create_attribute_enumerator = (enumerator_t*(*)(attribute_provider_t*, identification_t *id, host_t *vip))create_attribute_enumerator;
142 146
	this->public.destroy = (void(*)(attr_provider_t*))destroy;
143 147

  
144 148
	this->attributes = linked_list_create();

Also available in: Unified diff