{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":106237802,"defaultBranch":"master","name":"osmo-mgw","ownerLogin":"osmocom","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2017-10-09T04:51:31.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/1415806?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1726209525.0","currentOid":""},"activityList":{"items":[{"before":"227a800d2658c5381a098666f6e0203a3eff7057","after":"9c3fad2c427a13698307d142e1be241ec7b3c731","ref":"refs/heads/master","pushedAt":"2024-09-13T06:38:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"Bump version: 1.13.0.3-227a → 1.13.1\n\nChange-Id: I8ebbaf6bff440cb233088f4bc226b80db0fd3922","shortMessageHtmlLink":"Bump version: 1.13.0.3-227a → 1.13.1"}},{"before":"aad5d51de64e565d1dc31314722ec2b41c9fff7f","after":"032f03116382e67006af2c2b9a4a0acdcfcd1754","ref":"refs/heads/neels/sdp2","pushedAt":"2024-09-03T03:52:23.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"add libosmo-sdp: add sdp_msg.h,.c\n\nChange-Id: Id53c2c6eea3726f63a1399ae985f8aa3344e32c8","shortMessageHtmlLink":"add libosmo-sdp: add sdp_msg.h,.c"}},{"before":"24cae67f3ec98a7390069ba52b13532a0dcef00c","after":"227a800d2658c5381a098666f6e0203a3eff7057","ref":"refs/heads/master","pushedAt":"2024-08-21T21:42:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"tests/mgcp/mgcp_test: Add some extra asserts in code\n\nThis makes it easier to catch possible failures while running the test,\nplus makes gcc on OpenSUSE_Factory happy and not warn.\n\nRelated: OS#5044\nChange-Id: I01c3c84e58a11055f0e0a6955016dc2489c73379","shortMessageHtmlLink":"tests/mgcp/mgcp_test: Add some extra asserts in code"}},{"before":"58be6e9ec3ccfdd71a7885ac37132e01349a7950","after":"aad5d51de64e565d1dc31314722ec2b41c9fff7f","ref":"refs/heads/neels/sdp2","pushedAt":"2024-08-13T01:42:51.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"add libosmo-sdp: add sdp_msg.h,.c\n\nChange-Id: Id53c2c6eea3726f63a1399ae985f8aa3344e32c8","shortMessageHtmlLink":"add libosmo-sdp: add sdp_msg.h,.c"}},{"before":"0d47c408ac57f81fd966e74dc51c4acfee57fc5f","after":"24cae67f3ec98a7390069ba52b13532a0dcef00c","ref":"refs/heads/master","pushedAt":"2024-08-07T13:20:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"mgcp_network: add missing ntohs\n\nWe must use ntohs before passing the RTCP port to osmo_sockaddr_port\n\nRelated: OS#6527\nChange-Id: I9773c7b1fda8c9b429723ef9f0db0b58894b28fe","shortMessageHtmlLink":"mgcp_network: add missing ntohs"}},{"before":"f1b557988db61bb501db82793d7623ed7bd2d39f","after":"0d47c408ac57f81fd966e74dc51c4acfee57fc5f","ref":"refs/heads/master","pushedAt":"2024-08-07T13:19:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"mgcp_network: use an uint16_t to store the port number\n\nThe comment in struct mgcp_rtp_end says that the RTCP port number has to\nbe stored in network byte order. Such a port number is 16 bit long, so\nlet's use an uint16_t instead of an int here.\n\nRelated: OS#6527\nChange-Id: I392b07b243389a78d4ad1d784cdfdc28ec59b487","shortMessageHtmlLink":"mgcp_network: use an uint16_t to store the port number"}},{"before":"180887f1716eb92fa520fa60614e1328da607f1b","after":"58be6e9ec3ccfdd71a7885ac37132e01349a7950","ref":"refs/heads/neels/sdp2","pushedAt":"2024-08-05T06:08:22.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"add libosmo-sdp: add sdp_msg.h,.c\n\nChange-Id: Id53c2c6eea3726f63a1399ae985f8aa3344e32c8","shortMessageHtmlLink":"add libosmo-sdp: add sdp_msg.h,.c"}},{"before":null,"after":"180887f1716eb92fa520fa60614e1328da607f1b","ref":"refs/heads/neels/sdp2","pushedAt":"2024-08-05T06:08:02.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"add libosmo-sdp: add sdp_msg.h,.c\n\nChange-Id: Id53c2c6eea3726f63a1399ae985f8aa3344e32c8","shortMessageHtmlLink":"add libosmo-sdp: add sdp_msg.h,.c"}},{"before":"95e504aa9791a3f4f9e8d57a6789a07b27852baa","after":"f1b557988db61bb501db82793d7623ed7bd2d39f","ref":"refs/heads/master","pushedAt":"2024-07-25T09:19:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"Bump version: 1.12.1.58-95e50-dirty → 1.13.0\n\nChange-Id: I46cabfda147bf700fb29a0b8eecf54560a1d378d","shortMessageHtmlLink":"Bump version: 1.12.1.58-95e50-dirty → 1.13.0"}},{"before":"a5ae091fddc15663b1688003e24c71270bf21df7","after":"95e504aa9791a3f4f9e8d57a6789a07b27852baa","ref":"refs/heads/master","pushedAt":"2024-07-23T14:24:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"fix E1 TS output when used with osmo-e1d\n\nThe original code did E1 raw TS output by posting directly to\n&ts->raw.tx_queue instead of calling e1inp_ts_send_raw();\ndoing so bypasses the call to driver->want_write performed in\ne1inp layer. This approach worked for DAHDI where no\nselect-for-write is used; however, e1inp interface to osmo-e1d\ndoes use select-for-write, hence applications like osmo-mgw\ndo need to use e1inp_ts_send_raw() API in order to work\ncorrectly.\n\nChange-Id: I6ce9a1dea6834632faf75059e85ca9a0c25d57c2","shortMessageHtmlLink":"fix E1 TS output when used with osmo-e1d"}},{"before":"e6398d886b86ad475f3997ccf99c44df99a84a35","after":"a5ae091fddc15663b1688003e24c71270bf21df7","ref":"refs/heads/master","pushedAt":"2024-07-02T01:55:02.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"do not FAIL on CRCX in sendrecv mode\n\nCurrently, a CRCX in sendrecv mode results in:\n\n DLMGCP ERROR endpoint:rtpbridge/2@mgw CI:7F4C8EDD CRCX: selected connection mode type requires an opposite end! (mgcp_protocol.c:1090)\n\nBut it is not actually practical, nor logical to require another conn\nfor the 'sendrecv' ConnectionMode.\n\nImpractical: If I want to create two conns on an endpoint that both are\nin 'sendrecv' mode, I have to send two CRCX, one for each conn. At the\ntime of the first CRCX, there cannot be any other conn, so I am\ncurrently forced to send a different ConnectionMode in the CRCX,\nfollowed by another MDCX later, just to change the first conn to\nsendrecv.\n\nIllogical: In a situation where two conns are currently in sendrecv\nmode, if I now DLCX one of them, I can legally reach a state with a\nsingle conn in sendrecv mode, just as currently forbidden for CRCX.\n\nIn general, MGCP is not forcing any particular number of connections.\n\nSimply start forwarding RTP as soon as there is a remote conn, and not\nrequire another explicit MDCX.\n\nRelated: SYS#6974 SYS#6907\nRelated: osmo-ttcn3-hacks I00fd854f058f7f53e2f579e8481ca2b9253f08e3\nChange-Id: Ic089485543c5c97a35c7ae24fe0f622bf57d1976","shortMessageHtmlLink":"do not FAIL on CRCX in sendrecv mode"}},{"before":"23140d6f94ecc0e7cc9e1dc2372efdcaa97b15fe","after":"e6398d886b86ad475f3997ccf99c44df99a84a35","ref":"refs/heads/master","pushedAt":"2024-06-29T22:23:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"E1: support HRv1 codec on both 16k and 8k subslots\n\nHRv1 support in OsmoMGW-E1 was previously broken (couldn't work\non either 16k or 8k subslots) because of inconsistency: the TRAU\nframe type was set to OSMO_TRAU16_FT_HR, but the TRAU sync pattern\nwas set to OSMO_TRAU_SYNCP_8_HR. However, now that libosmotrau\nhas proper support for HRv1 TRAU frame encoding and RTP conversion\nin both 16k and 8k formats, drive it correctly in OsmoMGW-E1.\n\nWhile at it, change the code structure to avoid else-after-return.\nWas the original code written and merged in a time before strict\nlinter checks?\n\nChange-Id: Ifadbdc68905178c6ffdd673a6fb71c18610c9847","shortMessageHtmlLink":"E1: support HRv1 codec on both 16k and 8k subslots"}},{"before":"7084bede58153332ea600d19c1b1a5fcbcb67585","after":"e5ac26212a92b5115143aa894062781baabe008b","ref":"refs/heads/neels/sdp","pushedAt":"2024-06-24T02:35:33.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"sdp strs fu\n\nChange-Id: Id8ab7f870067d793a2b8934f2cca51cf06ee5dc2","shortMessageHtmlLink":"sdp strs fu"}},{"before":"ea56ad965148c9cf954fc9424e105fa1851963e4","after":"7084bede58153332ea600d19c1b1a5fcbcb67585","ref":"refs/heads/neels/sdp","pushedAt":"2024-06-21T15:36:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"sdp strs fu\n\nChange-Id: Id8ab7f870067d793a2b8934f2cca51cf06ee5dc2","shortMessageHtmlLink":"sdp strs fu"}},{"before":"33cf4047fffbb603a38992ab1e60be9ebf7741bf","after":"ea56ad965148c9cf954fc9424e105fa1851963e4","ref":"refs/heads/neels/sdp","pushedAt":"2024-06-19T13:00:16.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"wip\n\nChange-Id: I4e3fbcf85f3e1867aeb577681c7e32a01e56f2c4","shortMessageHtmlLink":"wip"}},{"before":"36c823eef150a4d25957ae3149dea2cb6d9d8590","after":"23140d6f94ecc0e7cc9e1dc2372efdcaa97b15fe","ref":"refs/heads/master","pushedAt":"2024-06-15T15:39:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"mgcp_test.c: verify osmo-mgw accepts m=audio 0\n\nWhen osmo-hnbgw does not yet know the remote port, it wants to send a\nCRCX to set up IuUP at the MGW, with the audio port set to zero.\nMake sure osmo-mgw accepts port == 0.\n\nRelated: SYS#6907 SYS#6974\nChange-Id: I42011c2e7256d372a37b6a2fe86af0153038e2d0","shortMessageHtmlLink":"mgcp_test.c: verify osmo-mgw accepts m=audio 0"}},{"before":"36c70b54aaaf33da8b5b4e8245a36424c8edd184","after":"33cf4047fffbb603a38992ab1e60be9ebf7741bf","ref":"refs/heads/neels/sdp","pushedAt":"2024-06-15T03:20:44.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"wip\n\nChange-Id: I4e3fbcf85f3e1867aeb577681c7e32a01e56f2c4","shortMessageHtmlLink":"wip"}},{"before":"39273525d7d76432e05a6ce406c034f24796de24","after":"23140d6f94ecc0e7cc9e1dc2372efdcaa97b15fe","ref":"refs/heads/neels/m_audio","pushedAt":"2024-06-15T03:19:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"mgcp_test.c: verify osmo-mgw accepts m=audio 0\n\nWhen osmo-hnbgw does not yet know the remote port, it wants to send a\nCRCX to set up IuUP at the MGW, with the audio port set to zero.\nMake sure osmo-mgw accepts port == 0.\n\nRelated: SYS#6907 SYS#6974\nChange-Id: I42011c2e7256d372a37b6a2fe86af0153038e2d0","shortMessageHtmlLink":"mgcp_test.c: verify osmo-mgw accepts m=audio 0"}},{"before":"fa393fa1e9bd75047f48eeea42d20f8c61f8866b","after":"36c823eef150a4d25957ae3149dea2cb6d9d8590","ref":"refs/heads/master","pushedAt":"2024-06-15T01:56:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"mgcp-client: always send 'm=audio' line\n\nRe-add the m=audio line to SDP emitted from libosmo-mgcp-client, even if\nthe audio port is not set yet\n\nPatch a5acaa68db4cc26e342069ad2ef37c1b09e1efc2 introduced a presence\nflag for the RTP audio port number. This flag, when unset, also omitted\nthe 'm=audio...' line completely, dropping the PT number definitions.\n\nCorrect:\n\n m=audio 1234 RTP/AVP 96 <--- anounce 96\n a=rtpmap:96 VND.3GPP.IUFP/16000 <--- further specify 96\n a=fmtp:96 ... <--- further specify 96\n\nWhen m=audio is missing, we only have orphaned rtpmap and fmtp entries.\nThey are supposed to further specify the 96 listed in 'RTP/AVP 96',\ninstead they are without context:\n\n a=rtpmap:96 VND.3GPP.IUFP/16000\n a=fmtp:96 ...\n\nWhen the presence map indicates no port known, we still need to emit the\nlist of PT numbers; so we're forced to send a port of 0:\n\n m=audio 0 RTP/AVP 96\n a=rtpmap:96 VND.3GPP.IUFP/16000\n a=fmtp:96 ...\n\nThis is an important fix for osmo-hnbgw, which sends the first CRCX with\nan IUFP codec, at a time when the remote port is not yet known. osmo-mgw\nrequires an m=audio line to accept incoming IuUP Initializaition\nrequests. When m=audio is missing, osmo-mgw does not parse the IUFP\ncodec, and 3G voice fails completely. This mgcp-client patch will emit\nvalid codec config also when port == 0, fixing osmo-hnbgw voice, because\nosmo-mgw will know about IUFP from the start.\n\nRelated: SYS#6907 SYS#6974\nRelated: osmo-mgw a5acaa68db4cc26e342069ad2ef37c1b09e1efc2\nChange-Id: Id95b629453aec999100b5af821c6a0b9562bb597","shortMessageHtmlLink":"mgcp-client: always send 'm=audio' line"}},{"before":"e0fc37a437a80e50a6044706ad3367c5f4c7e4f4","after":"fa393fa1e9bd75047f48eeea42d20f8c61f8866b","ref":"refs/heads/master","pushedAt":"2024-05-15T11:59:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"doc: example configs: fix deprecation warnings\n\nFix for:\n range must end at an odd port number, autocorrecting port (16000) to: 16001\n % Deprecated 'sdp audio-payload number <0-255>' config no longer has any effect\n % Deprecated 'sdp audio-payload name NAME' config no longer has any effect\n % Deprecated 'loop (0|1)' config no longer has any effect\n\nChange-Id: I62a4fd119de48039c3c450d5323d8f9b7de8120f","shortMessageHtmlLink":"doc: example configs: fix deprecation warnings"}},{"before":"4aa2b0e35b0e9d840dae1e10fb001c7360307d66","after":"e0fc37a437a80e50a6044706ad3367c5f4c7e4f4","ref":"refs/heads/master","pushedAt":"2024-05-15T06:48:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"contrib/systemd: run as osmocom user\n\nI have verified that with AmbientCapabilities=CAP_SYS_NICE, setting\nscheduling policy as described in the manual still works as expected.\n\nRelated: OS#4107\nChange-Id: Ibb83c231231b39dc6732c0f375aeb3b21f3938ef","shortMessageHtmlLink":"contrib/systemd: run as osmocom user"}},{"before":"e01f6e7f3333c35e3d9677191a9e7fa92d1407b5","after":"4aa2b0e35b0e9d840dae1e10fb001c7360307d66","ref":"refs/heads/master","pushedAt":"2024-05-13T08:39:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"contrib: remove rpm spec file\n\nRelated: https://osmocom.org/news/255\nRelated: OS#6446\nChange-Id: I703e115a426ac1012c80d2e1576ee6dcfbe191a5","shortMessageHtmlLink":"contrib: remove rpm spec file"}},{"before":"24c09fbacbc93a60dfbb932e1a985931249d4f7b","after":"36c70b54aaaf33da8b5b4e8245a36424c8edd184","ref":"refs/heads/neels/sdp","pushedAt":"2024-05-02T22:22:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"wip\n\nChange-Id: I4e3fbcf85f3e1867aeb577681c7e32a01e56f2c4","shortMessageHtmlLink":"wip"}},{"before":null,"after":"39273525d7d76432e05a6ce406c034f24796de24","ref":"refs/heads/neels/m_audio","pushedAt":"2024-04-24T23:09:07.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"mgcp-client: always send 'm=audio' line\n\nRe-add the m=audio line to SDP emitted from libosmo-mgcp-client, even if\nthe audio port is not set yet\n\nPatch a5acaa68db4cc26e342069ad2ef37c1b09e1efc2 introduced a presence\nflag for the RTP audio port number. This flag, when unset, also omitted\nthe 'm=audio...' line completely, dropping the PT number definitions.\n\nCorrect:\n\n m=audio 1234 RTP/AVP 96 <--- anounce 96\n a=rtpmap:96 VND.3GPP.IUFP/16000 <--- further specify 96\n a=fmtp:96 ... <--- further specify 96\n\nWhen m=audio is missing, we only have orphaned rtpmap and fmtp entries.\nThey are supposed to further specify the 96 listed in 'RTP/AVP 96',\ninstead they are without context:\n\n a=rtpmap:96 VND.3GPP.IUFP/16000\n a=fmtp:96 ...\n\nWhen the presence map indicates no port known, we still need to emit the\nlist of PT numbers; so we're forced to send a port of 0:\n\n m=audio 0 RTP/AVP 96\n a=rtpmap:96 VND.3GPP.IUFP/16000\n a=fmtp:96 ...\n\nThis is an important fix for osmo-hnbgw, which sends the first CRCX with\nan IUFP codec. osmo-mgw requires this to accept incoming IuUP\nInitializaition requests. When m=audio is missing, osmo-mgw does not\nparse the IUFP codec, and 3G voice fails completely. This mgcp-client\npatch will emit valid codec config also when port == 0, fixing\nosmo-hnbgw voice, because osmo-mgw will know about IUFP from the start.\n\nRelated: SYS#6907\nRelated: osmo-mgw a5acaa68db4cc26e342069ad2ef37c1b09e1efc2\nChange-Id: Id95b629453aec999100b5af821c6a0b9562bb597","shortMessageHtmlLink":"mgcp-client: always send 'm=audio' line"}},{"before":"352b967d1bee4b3bc51ecc383306bad0fc5b7fbf","after":"e01f6e7f3333c35e3d9677191a9e7fa92d1407b5","ref":"refs/heads/master","pushedAt":"2024-04-24T18:53:17.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"iuup: Increment RTP hdr seqnr even if Tx over UDP fails\n\nThis way holes can be detected. In practice it's not much important\nsince it would be really strange that UDP fails for a while and then it\nstarts working out of the blue...\n\nRelated: SYS#6907\nChange-Id: I8095f3505c859650c0b83abce405067bef745975","shortMessageHtmlLink":"iuup: Increment RTP hdr seqnr even if Tx over UDP fails"}},{"before":"8a27e165d18345324502e20d8c9d3f36d6cef1a5","after":null,"ref":"refs/heads/pespin/iuup","pushedAt":"2024-04-24T09:23:48.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"}},{"before":"5d2a415f5db1857da9f2b26d14fa67705052c1d7","after":"78a93c3710ff2b8711b0bd8422a2c400857208b2","ref":"refs/heads/rhizomatica/production","pushedAt":"2024-04-04T18:46:58.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"mgcp_test: fix false negatives in test output\n\nIf one test fails, do not print failure for all following tests as well.\n\nChange-Id: I196880b4b34a672ef45042c25f89bc1684363567","shortMessageHtmlLink":"mgcp_test: fix false negatives in test output"}},{"before":"ed4da25f2f7b45145a894b1b99a373818eb68da8","after":"352b967d1bee4b3bc51ecc383306bad0fc5b7fbf","ref":"refs/heads/master","pushedAt":"2024-04-02T17:43:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"Convert RTP/RTCP/OSMUX I/O from osmo_fd to osmo_io\n\nConverting from osmo_fd to osmo_io allows us to switch to the new\nio_uring backend and benefit from related performance benefits.\n\nIn a benchmark running 200 concurrent bi-directional voice calls with\nGSM-EFR codec, I am observing:\n\n* the code before this patch uses 40..42% of a single core on a\n Ryzen 5950X at 200 calls (=> 200 endpoints with each two connections)\n\n* no increase in CPU utilization before/after this patch, i.e. the\n osmo_io overhead for the osmo_fd backend is insignificant compared\n to the direct osmo_fd mode before\n\n* an almost exactly 50% reduction of CPU utilization when running the\n same osmo-mgw build with LIBOSMO_IO_BACKEND=IO_URING - top shows\n 19..21% for the same workload instead of 40..42% with the OSMO_FD\n default backend.\n\n* An increase of about 4 Megabytes in both RSS and VIRT size when\n enabling the OSMO_IO backend. This is likely the memory-mapped rings.\n\nNo memory leakage is observed when using either of the backends.\n\nChange-Id: I8471960d5d8088a70cf105f2f40dfa5d5458169a","shortMessageHtmlLink":"Convert RTP/RTCP/OSMUX I/O from osmo_fd to osmo_io"}},{"before":null,"after":"5d2a415f5db1857da9f2b26d14fa67705052c1d7","ref":"refs/heads/rhizomatica/production","pushedAt":"2024-04-01T16:24:17.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"fix possible NULL deref on early media\n\nend.codec may be NULL, depending on whether a single matching codec\ncould be found or not, i.e. based on external input. So let's not crash\nif an RTP packet arrives while end.codec == NULL.\n\nChange-Id: I9bfb55a343b3f2b1459e0aba4ee71a6133b992b3","shortMessageHtmlLink":"fix possible NULL deref on early media"}},{"before":"8b663e4d7c1fe277fc732065f0757034b4ced939","after":"ed4da25f2f7b45145a894b1b99a373818eb68da8","ref":"refs/heads/rhizomatica/testing","pushedAt":"2024-04-01T16:14:17.000Z","pushType":"push","commitsCount":41,"pusher":{"login":"osmocom-gerrit","name":"Osmocom Gerrit Code Review","path":"/osmocom-gerrit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/32628598?s=80&v=4"},"commit":{"message":"cosmetic: make linter happy\n\nChange-Id: Iec8404061588b848f9e597bf4112d6df9597de95","shortMessageHtmlLink":"cosmetic: make linter happy"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xM1QwNjozODoyOS4wMDAwMDBazwAAAAS1J00n","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNC0wMVQxNjoxNDoxNy4wMDAwMDBazwAAAAQko3Y-"}},"title":"Activity · osmocom/osmo-mgw"}