Mercurial > hg > freeDiameter
changeset 725:8b03c672261f
Fix a small bug in peers validation process
author | Sebastien Decugis <sdecugis@nict.go.jp> |
---|---|
date | Tue, 22 Feb 2011 15:50:45 +0900 |
parents | 42b7d6614678 |
children | c0c0a7781b09 |
files | libfdcore/p_ce.c libfdcore/peers.c |
diffstat | 2 files changed, 6 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/libfdcore/p_ce.c Tue Feb 22 15:50:29 2011 +0900 +++ b/libfdcore/p_ce.c Tue Feb 22 15:50:45 2011 +0900 @@ -819,6 +819,11 @@ } } + /* Save the credentials if handshake already occurred */ + if ( fd_cnx_getTLS(peer->p_cnxctx) ) { + CHECK_FCT( fd_cnx_getcred(peer->p_cnxctx, &peer->p_hdr.info.runtime.pir_cert_list, &peer->p_hdr.info.runtime.pir_cert_list_size) ); + } + /* Validate the peer if needed */ if (peer->p_flags.pf_responder) { int res = fd_peer_validate( peer );
--- a/libfdcore/peers.c Tue Feb 22 15:50:29 2011 +0900 +++ b/libfdcore/peers.c Tue Feb 22 15:50:45 2011 +0900 @@ -456,7 +456,7 @@ /* First, check if the Origin-Host value */ if (!fd_os_is_valid_DiameterIdentity(avp_hdr->avp_value->os.data, avp_hdr->avp_value->os.len)) { - TRACE_DEBUG(INFO, "Received new CER with invalid \\0 in its Origin-Host"); + TRACE_DEBUG(INFO, "Received new CER with invalid Origin-Host"); CHECK_FCT( fd_msg_new_answer_from_req ( fd_g_config->cnf_dict, cer, MSGFL_ANSW_ERROR ) ); CHECK_FCT( fd_msg_rescode_set(*cer, "ER_DIAMETER_INVALID_AVP_VALUE", "Your Origin-Host contains invalid characters.", avp_oh, 1 ) );