{"object_kind":"push","event_name":"push","before":"c551408ec2f7af6083bfba098092c44a28876a23","after":"a4fb06073c51e125a0948e01d4a8ac18f2c0f163","ref":"refs/heads/master","ref_protected":true,"checkout_sha":"a4fb06073c51e125a0948e01d4a8ac18f2c0f163","message":null,"user_id":3060,"user_name":"Wim Taymans","user_username":"wtaymans","user_email":"","user_avatar":"https://secure.gravatar.com/avatar/1ca1bed246cb9b95b7ead6d6be96bb09f0c112953140c8bb38b41aedf4465270?s=80&d=identicon","project_id":4753,"project":{"id":4753,"name":"pipewire","description":"Multimedia processing graphs","web_url":"https://gitlab.freedesktop.org/pipewire/pipewire","avatar_url":"https://gitlab.freedesktop.org/uploads/-/system/project/avatar/4753/pipewire.png","git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","git_http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git","namespace":"PipeWire","visibility_level":20,"path_with_namespace":"pipewire/pipewire","default_branch":"master","ci_config_path":"","homepage":"https://gitlab.freedesktop.org/pipewire/pipewire","url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git"},"commits":[{"id":"4b64b81d21597602f57533375df8f967a01690e8","message":"security: fix crash and overflow bugs in network-facing modules\n\nmodule-filter-chain: fix NULL pointer dereference when\npw_stream_dequeue_buffer returns NULL and out->requested is\naccessed outside the NULL check.\n\nmodule-zeroconf-discover: add NULL checks for name, type,\nhost_name, address, and port from mDNS lookups that could be\nmissing in malformed announcements.\n\nmodule-raop-sink: cap net.mtu to 9000 to prevent stack overflow\nvia VLA uint32_t out[8 + mtu].\n\nmodule-rtp-sap: fix buffer over-read in SDP \"i=\" line parsing\nthat read past a self-inserted null terminator. Also fix fd leak\nwhen fd is 0 (fd > 0 should be fd >= 0).\n\nCo-Authored-By: Claude Opus 4.7 \n","title":"security: fix crash and overflow bugs in network-facing modules","timestamp":"2026-04-30T18:38:19+02:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/4b64b81d21597602f57533375df8f967a01690e8","author":{"name":"Wim Taymans","email":"wtaymans@redhat.com"},"added":[],"modified":["src/modules/module-filter-chain.c","src/modules/module-raop-sink.c","src/modules/module-rtp-sap.c","src/modules/module-zeroconf-discover.c"],"removed":[]},{"id":"47ca937905bd27a7163b7147f5f909e696b56fcf","message":"fix capture rate assignment using logical NOT instead of copy\n\nThree modules had \"impl->capture_info.rate = !impl->playback_info.rate\"\nwhich evaluates to 0 (logical NOT of a non-zero rate) instead of\ncopying the playback rate. This is a copy-paste typo from the line\nabove which correctly uses \"= impl->capture_info.rate\".\n\nAffects module-filter-chain, module-loopback, module-example-filter.\n\nCo-Authored-By: Claude Opus 4.7 \n","title":"fix capture rate assignment using logical NOT instead of copy","timestamp":"2026-04-30T18:38:26+02:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/47ca937905bd27a7163b7147f5f909e696b56fcf","author":{"name":"Wim Taymans","email":"wtaymans@redhat.com"},"added":[],"modified":["src/modules/module-example-filter.c","src/modules/module-loopback.c"],"removed":[]},{"id":"6cc92c0e2b4ee1bac9da56102850b4ea4d1faaaa","message":"security: add missing NULL checks and fix error handling in modules\n\nmodule-access: add NULL check after pw_properties_new for\nsocket_access.\n\nmodule-pulse-tunnel: add NULL check after 4MB calloc for ring\nbuffer.\n\nmodule-rt: add NULL check after calloc in thread create.\n\nmodule-rtp-session: add goto error after failed\npw_net_parse_address instead of falling through.\n\nmodule-snapcast-discover: fix missing null-termination on\nnetwork-received data before logging it as a string.\n\nCo-Authored-By: Claude Opus 4.7 \n","title":"security: add missing NULL checks and fix error handling in modules","timestamp":"2026-04-30T18:38:32+02:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/6cc92c0e2b4ee1bac9da56102850b4ea4d1faaaa","author":{"name":"Wim Taymans","email":"wtaymans@redhat.com"},"added":[],"modified":["src/modules/module-access.c","src/modules/module-pulse-tunnel.c","src/modules/module-rt.c","src/modules/module-rtp-session.c","src/modules/module-snapcast-discover.c"],"removed":[]},{"id":"a55546c9df0aa89674c87c3f58af40a042a429a4","message":"filter-chain: limit the number of graph in/out\n\nThere is no limit on the number of inputs/outputs of a graph but the\nfilter-chain assumes it is at most 128 and also that there are at most\n128 buffer datas.\n\nIncrease the limit (1024) and clamp and log an error when the\nfilter-graph has more channels. Also clamp the buffer datas so that we\ndon't overflow the stack allocated buffers.\n","title":"filter-chain: limit the number of graph in/out","timestamp":"2026-05-01T12:29:12+02:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/a55546c9df0aa89674c87c3f58af40a042a429a4","author":{"name":"Wim Taymans","email":"wtaymans@redhat.com"},"added":[],"modified":["src/modules/module-filter-chain.c"],"removed":[]},{"id":"6f6b58785e5f2eabc8e580fc020efdada204e270","message":"modules: handle allocation errors\n","title":"modules: handle allocation errors","timestamp":"2026-05-01T12:29:54+02:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/6f6b58785e5f2eabc8e580fc020efdada204e270","author":{"name":"Wim Taymans","email":"wtaymans@redhat.com"},"added":[],"modified":["src/modules/module-pipe-tunnel.c","src/modules/module-roc-sink.c","src/modules/module-roc-source.c","src/modules/module-snapcast-discover.c","src/modules/module-zeroconf-discover.c"],"removed":[]},{"id":"a4fb06073c51e125a0948e01d4a8ac18f2c0f163","message":"modules: protect against invalid input and 0 division\n\nDon't crash when the AEC reported latency is invalid.\n\nCheck that the parsed values make sense and avoid division by 0.\n","title":"modules: protect against invalid input and 0 division","timestamp":"2026-05-01T12:42:53+02:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/a4fb06073c51e125a0948e01d4a8ac18f2c0f163","author":{"name":"Wim Taymans","email":"wtaymans@redhat.com"},"added":[],"modified":["src/modules/module-echo-cancel.c"],"removed":[]}],"total_commits_count":6,"push_options":{},"repository":{"name":"pipewire","url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","description":"Multimedia processing graphs","homepage":"https://gitlab.freedesktop.org/pipewire/pipewire","git_http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git","git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","visibility_level":20}}