Migrated mediation_manager_t to INIT/METHOD macros.

This commit is contained in:
Tobias Brunner
2011-10-03 18:42:29 +02:00
parent 02846e5e7f
commit b0eb026c05
+31 -40
View File
@@ -53,13 +53,12 @@ static void peer_destroy(peer_t *this)
*/ */
static peer_t *peer_create(identification_t *id, ike_sa_id_t* ike_sa_id) static peer_t *peer_create(identification_t *id, ike_sa_id_t* ike_sa_id)
{ {
peer_t *this = malloc_thing(peer_t); peer_t *this;
INIT(this,
/* clone everything */ .id = id->clone(id),
this->id = id->clone(id); .ike_sa_id = ike_sa_id ? ike_sa_id->clone(ike_sa_id) : NULL,
this->ike_sa_id = ike_sa_id ? ike_sa_id->clone(ike_sa_id) : NULL; .requested_by = linked_list_create(),
this->requested_by = linked_list_create(); );
return this; return this;
} }
@@ -174,10 +173,8 @@ static void unregister_peer(private_mediation_manager_t *this,
enumerator->destroy(enumerator); enumerator->destroy(enumerator);
} }
/** METHOD(mediation_manager_t, remove_sa, void,
* Implementation of mediation_manager_t.remove private_mediation_manager_t *this, ike_sa_id_t *ike_sa_id)
*/
static void remove_sa(private_mediation_manager_t *this, ike_sa_id_t *ike_sa_id)
{ {
enumerator_t *enumerator; enumerator_t *enumerator;
peer_t *peer; peer_t *peer;
@@ -202,10 +199,9 @@ static void remove_sa(private_mediation_manager_t *this, ike_sa_id_t *ike_sa_id)
this->mutex->unlock(this->mutex); this->mutex->unlock(this->mutex);
} }
/** METHOD(mediation_manager_t, update_sa_id, void,
* Implementation of mediation_manager_t.update_sa_id private_mediation_manager_t *this, identification_t *peer_id,
*/ ike_sa_id_t *ike_sa_id)
static void update_sa_id(private_mediation_manager_t *this, identification_t *peer_id, ike_sa_id_t *ike_sa_id)
{ {
enumerator_t *enumerator; enumerator_t *enumerator;
peer_t *peer; peer_t *peer;
@@ -248,11 +244,8 @@ static void update_sa_id(private_mediation_manager_t *this, identification_t *pe
this->mutex->unlock(this->mutex); this->mutex->unlock(this->mutex);
} }
/** METHOD(mediation_manager_t, check, ike_sa_id_t*,
* Implementation of mediation_manager_t.check. private_mediation_manager_t *this, identification_t *peer_id)
*/
static ike_sa_id_t *check(private_mediation_manager_t *this,
identification_t *peer_id)
{ {
peer_t *peer; peer_t *peer;
ike_sa_id_t *ike_sa_id; ike_sa_id_t *ike_sa_id;
@@ -272,11 +265,9 @@ static ike_sa_id_t *check(private_mediation_manager_t *this,
return ike_sa_id; return ike_sa_id;
} }
/** METHOD(mediation_manager_t, check_and_register, ike_sa_id_t*,
* Implementation of mediation_manager_t.check_and_register. private_mediation_manager_t *this, identification_t *peer_id,
*/ identification_t *requester)
static ike_sa_id_t *check_and_register(private_mediation_manager_t *this,
identification_t *peer_id, identification_t *requester)
{ {
peer_t *peer; peer_t *peer;
ike_sa_id_t *ike_sa_id; ike_sa_id_t *ike_sa_id;
@@ -307,10 +298,8 @@ static ike_sa_id_t *check_and_register(private_mediation_manager_t *this,
return ike_sa_id; return ike_sa_id;
} }
/** METHOD(mediation_manager_t, destroy, void,
* Implementation of mediation_manager_t.destroy. private_mediation_manager_t *this)
*/
static void destroy(private_mediation_manager_t *this)
{ {
this->mutex->lock(this->mutex); this->mutex->lock(this->mutex);
@@ -326,16 +315,18 @@ static void destroy(private_mediation_manager_t *this)
*/ */
mediation_manager_t *mediation_manager_create() mediation_manager_t *mediation_manager_create()
{ {
private_mediation_manager_t *this = malloc_thing(private_mediation_manager_t); private_mediation_manager_t *this;
this->public.destroy = (void(*)(mediation_manager_t*))destroy; INIT(this,
this->public.remove = (void(*)(mediation_manager_t*,ike_sa_id_t*))remove_sa; .public = {
this->public.update_sa_id = (void(*)(mediation_manager_t*,identification_t*,ike_sa_id_t*))update_sa_id; .destroy = _destroy,
this->public.check = (ike_sa_id_t*(*)(mediation_manager_t*,identification_t*))check; .remove = _remove_sa,
this->public.check_and_register = (ike_sa_id_t*(*)(mediation_manager_t*,identification_t*,identification_t*))check_and_register; .update_sa_id = _update_sa_id,
.check = _check,
this->peers = linked_list_create(); .check_and_register = _check_and_register,
this->mutex = mutex_create(MUTEX_TYPE_DEFAULT); },
.peers = linked_list_create(),
return (mediation_manager_t*)this; .mutex = mutex_create(MUTEX_TYPE_DEFAULT),
);
return &this->public;
} }