client/server: log failed attempts to transmit/encode RSPRO

Change-Id: Iac56ddf7417fdee637660db34a7f0e6bdb9c4ab5
This commit is contained in:
Harald Welte 2019-03-31 14:59:20 +02:00
parent 24a3e32db7
commit a8b86ceff2
2 changed files with 18 additions and 3 deletions

View File

@ -59,6 +59,8 @@ int ipa_client_conn_send_rspro(struct ipa_client_conn *ipa, RsproPDU_t *rspro)
{
struct msgb *msg = rspro_enc_msg(rspro);
if (!msg) {
LOGP(DMAIN, LOGL_ERROR, "Error encoding RSPRO: %s\n", rspro_msgt_name(rspro));
osmo_log_backtrace(DMAIN, LOGL_ERROR);
ASN_STRUCT_FREE(asn_DEF_RsproPDU, rspro);
return -1;
}
@ -68,6 +70,11 @@ int ipa_client_conn_send_rspro(struct ipa_client_conn *ipa, RsproPDU_t *rspro)
int server_conn_send_rspro(struct rspro_server_conn *srvc, RsproPDU_t *rspro)
{
if (!rspro) {
LOGPFSML(srvc->fi, LOGL_ERROR, "Attempt to transmit NULL\n");
osmo_log_backtrace(DMAIN, LOGL_ERROR);
return -EINVAL;
}
LOGPFSM(srvc->fi, "Tx RSPRO %s\n", rspro_msgt_name(rspro));
return ipa_client_conn_send_rspro(srvc->conn, rspro);
}

View File

@ -44,12 +44,20 @@ static RsproPDU_t *slotmap2RemoveMappingReq(const struct slot_mapping *slotmap)
static void client_conn_send(struct rspro_client_conn *conn, RsproPDU_t *pdu)
{
struct msgb *msg_tx = rspro_enc_msg(pdu);
if (!msg_tx) {
ASN_STRUCT_FREE(asn_DEF_RsproPDU, pdu);
if (!pdu) {
LOGPFSML(conn->fi, LOGL_ERROR, "Attempt to transmit NULL\n");
osmo_log_backtrace(DMAIN, LOGL_ERROR);
return;
}
LOGPFSM(conn->fi, "Tx RSPRO %s\n", rspro_msgt_name(pdu));
struct msgb *msg_tx = rspro_enc_msg(pdu);
if (!msg_tx) {
LOGPFSML(conn->fi, LOGL_ERROR, "Error encdoing RSPRO %s\n", rspro_msgt_name(pdu));
osmo_log_backtrace(DMAIN, LOGL_ERROR);
ASN_STRUCT_FREE(asn_DEF_RsproPDU, pdu);
return;
}
ipa_prepend_header_ext(msg_tx, IPAC_PROTO_EXT_RSPRO);
ipa_msg_push_header(msg_tx, IPAC_PROTO_OSMO);
ipa_server_conn_send(conn->peer, msg_tx);