This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
laforge gerrit-no-reply at lists.osmocom.orglaforge has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-abis/+/19505 ) Change subject: osmo_trau_frame_encode(): Check for sufficiently sized output buffer ...................................................................... osmo_trau_frame_encode(): Check for sufficiently sized output buffer Change-Id: Ie14399b2271aba9ff81f62d593a0ddd9d3e83d98 --- M src/trau/trau_frame.c 1 file changed, 37 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-abis refs/changes/05/19505/1 diff --git a/src/trau/trau_frame.c b/src/trau/trau_frame.c index d5233f6..aae725e 100644 --- a/src/trau/trau_frame.c +++ b/src/trau/trau_frame.c @@ -1223,6 +1223,43 @@ * \return 0 number of unpacked output bits generated; negative in case of error */ int osmo_trau_frame_encode(ubit_t *bits, size_t n_bits, const struct osmo_trau_frame *fr) { + /* check for sufficient space provided by caller in output buffer */ + switch (fr->type) { + case OSMO_TRAU16_FT_FR: + case OSMO_TRAU16_FT_EFR: + case OSMO_TRAU16_FT_HR: + case OSMO_TRAU16_FT_AMR: + /* timing alignment may happen: increased space requirement */ + if (n_bits < 2 * 40 * 8 - 1) + return -ENOSPC; + break; + case OSMO_TRAU16_FT_OAM: + case OSMO_TRAU16_FT_IDLE: + case OSMO_TRAU16_FT_DATA_HR: + case OSMO_TRAU16_FT_DATA: + case OSMO_TRAU16_FT_D145_SYNC: + case OSMO_TRAU16_FT_EDATA: + if (n_bits < 1 * 40 * 8) + return -ENOSPC; + break; + case OSMO_TRAU8_SPEECH: + case OSMO_TRAU8_AMR_LOW: + case OSMO_TRAU8_AMR_6k7: + case OSMO_TRAU8_AMR_7k4: + /* timing alignment may happen: increased space requirement */ + if (n_bits < 2 * 20 * 8 - 1) + return -ENOSPC; + case OSMO_TRAU8_DATA: + case OSMO_TRAU8_OAM: + if (n_bits < 1 * 20 * 8) + return -ENOSPC; + break; + case OSMO_TRAU_FT_NONE: + break; + default: + return -EINVAL; + } + switch (fr->type) { case OSMO_TRAU16_FT_FR: case OSMO_TRAU16_FT_EFR: -- To view, visit https://gerrit.osmocom.org/c/libosmo-abis/+/19505 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-abis Gerrit-Branch: master Gerrit-Change-Id: Ie14399b2271aba9ff81f62d593a0ddd9d3e83d98 Gerrit-Change-Number: 19505 Gerrit-PatchSet: 1 Gerrit-Owner: laforge <laforge at osmocom.org> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200802/ffca94b4/attachment.htm>