mirror of
https://gitea.osmocom.org/cellular-infrastructure/osmo-mgw.git
synced 2025-10-23 08:12:01 +00:00
7c6dd3c2c3cda37159d742ab2f7bd06a11077b8c
Remove various OSMO_ASSERT() on size of incoming packets. Doing an assert on incoming data is a DoS attack vector, absolute no-go. Instead, return -EINVAL and keep running. Change some return values to be able to distinguish successful operation from invalid RTP sizes. In rtp_data_net(), make sure to return negative if the RTP packet was invalid. Some of the error return codes implemented here will only be used in upcoming patch Iba115a0b1d74e7cefba5dcdd777e98ddea9eba8c. Change-Id: I6bc6ee950ce07bcc2c585c30fad02b81153bdde2
About OsmoMGW ============= OsmoMGW originated from the OpenBSC project, which started as a minimalistic all-in-one implementation of the GSM Network. In 2017, OpenBSC had reached maturity and diversity (including M3UA SIGTRAN and 3G support in the form of IuCS and IuPS interfaces) that naturally lead to a separation of the all-in-one approach to fully independent separate programs as in typical GSM networks. OsmoMGW was one of the parts split off from the old openbsc.git. It originated as a solution to merely navigate RTP streams through a NAT, but has since matured to a Media Gateway implementation that is capable of streaming RTP for 2G (AoIP) and 3G (IuCS) GSM networks as well as (still not implemented at time of writing) transcoding between TRAU, various RTP payloads and IuUP. The OsmoMGW program exposes an MGCP interface towards clients like OsmoMSC and OsmoBSC, and receives and sends RTP streams as configured via MGCP. The libosmo-mgcp-client library exposes utilities used by e.g. OsmoMSC (found in osmo-msc.git) to instruct OsmoMGW via its MGCP service. Find OsmoMGW issue tracker and wiki online at https://osmocom.org/projects/osmo-mgw https://osmocom.org/projects/osmo-mgw/wiki
Description
Languages
C
95.1%
Python
1.6%
Makefile
1.2%
M4
1%
Shell
1%