diff options
author | Harald Welte <laforge@gnumonks.org> | 2016-11-26 10:14:53 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2016-11-26 13:47:14 +0000 |
commit | 1fa78567e4e1963a28711b9b47111b840b50cfdb (patch) | |
tree | 0f602348234aa6ea7d0a8fd47a9c3f36943f58b7 | |
parent | 9533631e531671e7029bbe7bc2e264d9080f56c7 (diff) |
osmo_gsup_encode(): Make coverity happy by invariant checking
gsm48_encode_bcd_number() can theoretically return a length in excess of
the size of the bcd_buf, but only in case an overly-long IMSI is passed
into the function (which would be illegal in the first place).
Change-Id: If3dc68ee13ff784b487bbc686b777cec9057d537
Fixes: Coverity CID 135216
-rw-r--r-- | src/gsm/gsup.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gsm/gsup.c b/src/gsm/gsup.c index d6b49753..c90244aa 100644 --- a/src/gsm/gsup.c +++ b/src/gsm/gsup.c @@ -442,6 +442,7 @@ void osmo_gsup_encode(struct msgb *msg, const struct osmo_gsup_message *gsup_msg gsup_msg->imsi); OSMO_ASSERT(bcd_len > 1); + OSMO_ASSERT(bcd_len <= sizeof(bcd_buf)); /* Note that gsm48_encode_bcd_number puts the length into the first * octet. Since msgb_tlv_put will add this length byte, we'll have to |