From: Max <[email protected]>

Print string representation of Cause IE and PDU type in addition to
numerical value.
---
 src/gb/gprs_bssgp.c     | 28 ++++++++++++++--------------
 src/gb/gprs_bssgp_bss.c |  6 +++---
 2 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/src/gb/gprs_bssgp.c b/src/gb/gprs_bssgp.c
index e3e69c9..e724d00 100644
--- a/src/gb/gprs_bssgp.c
+++ b/src/gb/gprs_bssgp.c
@@ -896,8 +896,8 @@ static int bssgp_rx_ptp(struct msgb *msg, struct tlv_parsed 
*tp,
        case BSSGP_PDUT_CREATE_BSS_PFC_NACK:
        case BSSGP_PDUT_MODIFY_BSS_PFC:
        case BSSGP_PDUT_DELETE_BSS_PFC_ACK:
-               DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx PDU type 0x%02x not [yet] "
-                       "implemented\n", bctx->bvci, pdu_type);
+               DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx PDU type %s not [yet] "
+                      "implemented\n", bctx->bvci, bssgp_pdu_str(pdu_type));
                rc = bssgp_tx_status(BSSGP_CAUSE_PDU_INCOMP_FEAT, NULL, msg);
                break;
        /* those only exist in the SGSN -> BSS direction */
@@ -907,14 +907,14 @@ static int bssgp_rx_ptp(struct msgb *msg, struct 
tlv_parsed *tp,
        case BSSGP_PDUT_RA_CAPA_UPDATE_ACK:
        case BSSGP_PDUT_FLOW_CONTROL_BVC_ACK:
        case BSSGP_PDUT_FLOW_CONTROL_MS_ACK:
-               DEBUGP(DBSSGP, "BSSGP BVCI=%u PDU type 0x%02x only exists "
-                       "in DL\n", bctx->bvci, pdu_type);
+               DEBUGP(DBSSGP, "BSSGP BVCI=%u PDU type 0x%02x (%s) only exists "
+                       "in DL\n", bctx->bvci, pdu_type, 
bssgp_pdu_str(pdu_type));
                bssgp_tx_status(BSSGP_CAUSE_PROTO_ERR_UNSPEC, NULL, msg);
                rc = -EINVAL;
                break;
        default:
-               DEBUGP(DBSSGP, "BSSGP BVCI=%u PDU type 0x%02x unknown\n",
-                       bctx->bvci, pdu_type);
+               DEBUGP(DBSSGP, "BSSGP BVCI=%u PDU type 0x%02x (%s) unknown\n",
+                       bctx->bvci, pdu_type, bssgp_pdu_str(pdu_type));
                rc = bssgp_tx_status(BSSGP_CAUSE_PROTO_ERR_UNSPEC, NULL, msg);
                break;
        }
@@ -999,14 +999,14 @@ static int bssgp_rx_sign(struct msgb *msg, struct 
tlv_parsed *tp,
        case BSSGP_PDUT_BVC_BLOCK_ACK:
        case BSSGP_PDUT_BVC_UNBLOCK_ACK:
        case BSSGP_PDUT_SGSN_INVOKE_TRACE:
-               DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx PDU type 0x%02x only exists "
-                       "in DL\n", bvci, pdu_type);
+               DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx PDU type 0x%02x (%s) only 
exists "
+                       "in DL\n", bvci, pdu_type, bssgp_pdu_str(pdu_type));
                bssgp_tx_status(BSSGP_CAUSE_PROTO_ERR_UNSPEC, NULL, msg);
                rc = -EINVAL;
                break;
        default:
-               DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx PDU type 0x%02x unknown\n",
-                       bvci, pdu_type);
+               DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx PDU type 0x%02x (%s) 
unknown\n",
+                       bvci, pdu_type, bssgp_pdu_str(pdu_type));
                rc = bssgp_tx_status(BSSGP_CAUSE_PROTO_ERR_UNSPEC, NULL, msg);
                break;
        }
@@ -1066,8 +1066,8 @@ int bssgp_rcvmsg(struct msgb *msg)
        if (!bctx && bvci != BVCI_SIGNALLING &&
            pdu_type != BSSGP_PDUT_BVC_RESET) {
                LOGP(DBSSGP, LOGL_NOTICE, "NSEI=%u/BVCI=%u Rejecting PDU "
-                       "type %u for unknown BVCI\n", msgb_nsei(msg), bvci,
-                       pdu_type);
+                       "type %u (%s) for unknown BVCI\n", msgb_nsei(msg), bvci,
+                       pdu_type, bssgp_pdu_str(pdu_type));
                return bssgp_tx_status(BSSGP_CAUSE_UNKNOWN_BVCI, &bvci, msg);
        }

@@ -1079,9 +1079,9 @@ int bssgp_rcvmsg(struct msgb *msg)
                rc = bssgp_rx_ptp(msg, &tp, bctx);
        else
                LOGP(DBSSGP, LOGL_NOTICE,
-                       "NSEI=%u/BVCI=%u Cannot handle PDU type %u for "
+                       "NSEI=%u/BVCI=%u Cannot handle PDU type %u (%s) for "
                        "unknown BVCI, NS BVCI %u\n",
-                       msgb_nsei(msg), bvci, pdu_type, ns_bvci);
+                       msgb_nsei(msg), bvci, pdu_type, 
bssgp_pdu_str(pdu_type), ns_bvci);

        return rc;
 }
diff --git a/src/gb/gprs_bssgp_bss.c b/src/gb/gprs_bssgp_bss.c
index 3a9012e..955e2b4 100644
--- a/src/gb/gprs_bssgp_bss.c
+++ b/src/gb/gprs_bssgp_bss.c
@@ -135,7 +135,7 @@ static struct msgb *common_tx_radio_status(struct 
bssgp_bvc_ctx *bctx)
 static int common_tx_radio_status2(struct msgb *msg, uint8_t cause)
 {
        msgb_tvlv_put(msg, BSSGP_IE_CAUSE, 1, &cause);
-       LOGPC(DBSSGP, LOGL_NOTICE, "CAUSE=%u\n", cause);
+       LOGPC(DBSSGP, LOGL_NOTICE, "CAUSE=%u (%s)\n", cause, 
bssgp_cause_str(cause));

        return gprs_ns_sendmsg(bssgp_nsi, msg);
 }
@@ -247,7 +247,7 @@ int bssgp_tx_bvc_block(struct bssgp_bvc_ctx *bctx, uint8_t 
cause)
        uint16_t _bvci = htons(bctx->bvci);

        LOGP(DBSSGP, LOGL_NOTICE, "BSSGP (BVCI=%u) Tx BVC-BLOCK "
-            "CAUSE=%u\n", bctx->bvci, cause);
+               "CAUSE=%u (%s)\n", bctx->bvci, cause, bssgp_cause_str(cause));

        msgb_nsei(msg) = bctx->nsei;
        msgb_bvci(msg) = 0; /* Signalling */
@@ -287,7 +287,7 @@ int bssgp_tx_bvc_reset(struct bssgp_bvc_ctx *bctx, uint16_t 
bvci, uint8_t cause)
        uint16_t _bvci = htons(bvci);

        LOGP(DBSSGP, LOGL_NOTICE, "BSSGP (BVCI=%u) Tx BVC-RESET "
-            "CAUSE=%u\n", bvci, cause);
+               "CAUSE=%u (%s)\n", bvci, cause, bssgp_cause_str(cause));

        msgb_nsei(msg) = bctx->nsei;
        msgb_bvci(msg) = 0; /* Signalling */
-- 
2.7.3

Reply via email to