comparison libfdcore/p_ce.c @ 1230:e72c9dad62ac

Fix issue with generating Failed-AVP when the error is DIAMETER_MISSING_AVP. Also fix a memory leak in that case
author Sebastien Decugis <sdecugis@freediameter.net>
date Sun, 21 Jul 2013 11:57:39 +0200
parents 60e7b02a3ce7
children 8f9684264fe0
comparison
equal deleted inserted replaced
1229:4e52f009861a 1230:e72c9dad62ac
634 /* Create and send the CEA with appropriate error code */ 634 /* Create and send the CEA with appropriate error code */
635 CHECK_FCT_DO( fd_msg_new_answer_from_req ( fd_g_config->cnf_dict, cer, MSGFL_ANSW_ERROR ), goto destroy ); 635 CHECK_FCT_DO( fd_msg_new_answer_from_req ( fd_g_config->cnf_dict, cer, MSGFL_ANSW_ERROR ), goto destroy );
636 CHECK_FCT_DO( fd_msg_rescode_set(*cer, error->pei_errcode, error->pei_message, error->pei_avp, 1 ), goto destroy ); 636 CHECK_FCT_DO( fd_msg_rescode_set(*cer, error->pei_errcode, error->pei_message, error->pei_avp, 1 ), goto destroy );
637 CHECK_FCT_DO( fd_out_send(cer, *recv_cnx, NULL), goto destroy ); 637 CHECK_FCT_DO( fd_out_send(cer, *recv_cnx, NULL), goto destroy );
638 638
639 if (error->pei_avp_free) {
640 fd_msg_free(error->pei_avp);
641 }
642
639 /* And now destroy this connection */ 643 /* And now destroy this connection */
640 destroy: 644 destroy:
641 fd_cnx_destroy(*recv_cnx); 645 fd_cnx_destroy(*recv_cnx);
642 *recv_cnx = NULL; 646 *recv_cnx = NULL;
643 if (*cer) { 647 if (*cer) {
"Welcome to our mercurial repository"