Mercurial > hg > freeDiameter
diff freeDiameter/p_psm.c @ 43:2db15632a63d
Added a large part of connection establishment logic, to test
author | Sebastien Decugis <sdecugis@nict.go.jp> |
---|---|
date | Wed, 25 Nov 2009 19:07:09 +0900 |
parents | f4d94bc65e1f |
children | 204718b0fa54 |
line wrap: on
line diff
--- a/freeDiameter/p_psm.c Thu Nov 19 17:51:23 2009 +0900 +++ b/freeDiameter/p_psm.c Wed Nov 25 19:07:09 2009 +0900 @@ -249,15 +249,7 @@ fd_p_cnx_abort(peer, terminate); - if (peer->p_cnxctx) { - fd_cnx_destroy(peer->p_cnxctx); - peer->p_cnxctx = NULL; - } - - if (peer->p_initiator) { - fd_cnx_destroy(peer->p_initiator); - peer->p_initiator = NULL; - } + fd_p_ce_clear_cnx(peer, NULL); if (peer->p_receiver) { fd_cnx_destroy(peer->p_receiver); @@ -593,7 +585,7 @@ if (event == FDEVP_CNX_ESTABLISHED) { struct cnxctx * cnx = ev_data; - /* Release the resources of the thread */ + /* Release the resources of the connecting thread */ CHECK_POSIX_DO( pthread_join( peer->p_ini_thr, NULL), /* ignore, it is not a big deal */); peer->p_ini_thr = (pthread_t)NULL; @@ -641,7 +633,7 @@ fd_p_cnx_abort(peer, 0); /* Handle receiver side */ - CHECK_FCT_DO( fd_p_ce_winelection(peer), goto psm_end ); + CHECK_FCT_DO( fd_p_ce_process_receiver(peer), goto psm_end ); break; } }