Rejects the join with the same identifier of the WTP

This commit is contained in:
vemax78
2013-06-18 22:38:56 +02:00
parent 99b6373cd7
commit 75dcf51496
7 changed files with 135 additions and 13 deletions

View File

@ -568,6 +568,14 @@ int ac_session_release_reference(struct ac_session_t* session) {
while (search != NULL) {
struct ac_session_t* item = (struct ac_session_t*)search->item;
if (session == item) {
#ifdef DEBUG
char sessionname[33];
/* */
capwap_sessionid_printf(&session->sessionid, sessionname);
capwap_logging_debug("Release Session AC %s", sessionname);
#endif
/* Free DTSL Control */
capwap_crypt_freesession(&session->ctrldtls);
@ -591,6 +599,10 @@ int ac_session_release_reference(struct ac_session_t* session) {
capwap_array_free(session->dfa.acipv4list.addresses);
capwap_array_free(session->dfa.acipv6list.addresses);
if (session->wtpid) {
capwap_free(session->wtpid);
}
/* Remove item from list */
remove = 1;
capwap_itemlist_free(capwap_itemlist_remove(g_ac.sessions, search));