diff freeDiameter/p_psm.c @ 22:0b3b46da2c12

Progress on server code
author Sebastien Decugis <sdecugis@nict.go.jp>
date Mon, 19 Oct 2009 18:43:09 +0900
parents 277ec00d793e
children 67ca08d5bc48
line wrap: on
line diff
--- a/freeDiameter/p_psm.c	Thu Oct 08 20:05:16 2009 +0900
+++ b/freeDiameter/p_psm.c	Mon Oct 19 18:43:09 2009 +0900
@@ -54,8 +54,9 @@
 	switch (event) {
 	#define case_str( _val )\
 		case _val : return #_val
+		case_str(FDEVP_DUMP_ALL);
 		case_str(FDEVP_TERMINATE);
-		case_str(FDEVP_DUMP_ALL);
+		case_str(FDEVP_CNX_MSG_RECV);
 		case_str(FDEVP_MSG_INCOMING);
 		case_str(FDEVP_PSM_TIMEOUT);
 		
@@ -240,6 +241,8 @@
 	
 psm_end:
 	pthread_cleanup_pop(1); /* set STATE_ZOMBIE */
+	pthread_detach(peer->p_psm);
+	peer->p_psm = (pthread_t)NULL;
 	return NULL;
 }	
 	
@@ -266,6 +269,7 @@
 {
 	TRACE_ENTRY("%p", peer);
 	CHECK_PARAMS( CHECK_PEER(peer) );
+	
 	if (peer->p_hdr.info.pi_state != STATE_ZOMBIE) {
 		CHECK_FCT( fd_event_send(peer->p_events, FDEVP_TERMINATE, NULL) );
 	} else {
"Welcome to our mercurial repository"