diff --git a/nlsr_adl.c b/nlsr_adl.c
index 6076f89..3a68ce1 100644
--- a/nlsr_adl.c
+++ b/nlsr_adl.c
@@ -399,11 +399,13 @@
 	if (res == HT_OLD_ENTRY)
 	{
 		struct ndn_neighbor *nbr=e->data;
-		free(nbr->neighbor->name);
+		/*free(nbr->neighbor->name);
 		free(nbr->neighbor);
 		free(nbr->last_lsdb_version);
 		free(nbr->last_info_version);
 		free(nbr->ip_address);
+		*/
+		destroy_nbr_component(nbr);
 		hashtb_delete(e);
 			
 	}
@@ -724,3 +726,45 @@
 }
 
 
+void
+destroy_nbr_component(struct ndn_neighbor *nbr)
+{
+	if ( nbr->neighbor->name )
+		free(nbr->neighbor->name);
+	if ( nbr->neighbor )
+		free(nbr->neighbor);
+	if ( nbr->last_lsdb_version)
+		free(nbr->last_lsdb_version);
+	if ( nbr->last_info_version)
+		free(nbr->last_info_version);
+	if ( nbr->ip_address)
+		free(nbr->ip_address);
+}
+
+void
+destroy_adl(void)
+{	
+	int i, adl_element;
+	struct ndn_neighbor *nbr;
+
+	struct hashtb_enumerator ee;
+    	struct hashtb_enumerator *e = &ee;
+    	
+    	hashtb_start(nlsr->adl, e);
+	adl_element=hashtb_n(nlsr->adl);
+
+	for(i=0;i<adl_element;i++)
+	{
+		nbr=e->data;
+		destroy_nbr_component(nbr);
+		hashtb_next(e);		
+	}
+
+	hashtb_end(e);
+	
+	if( nlsr->adl )
+		hashtb_destroy(&nlsr->adl);
+
+}
+
+
