summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2016-01-23 14:54:50 +0100
committerPacho Ramos <pacho@gentoo.org>2016-01-23 14:54:50 +0100
commit1a2bb4632e648a7d8ba0f20f14d6167542ef5bef (patch)
treed3c7047afd20cb2254e64d2afc822468091a880a /media-sound/pulseaudio
parentmedia-sound/pulseaudio: Drop old (diff)
downloadgentoo-1a2bb4632e648a7d8ba0f20f14d6167542ef5bef.tar.gz
gentoo-1a2bb4632e648a7d8ba0f20f14d6167542ef5bef.tar.bz2
gentoo-1a2bb4632e648a7d8ba0f20f14d6167542ef5bef.zip
media-sound/pulseaudio: Drop old
Package-Manager: portage-2.2.26
Diffstat (limited to 'media-sound/pulseaudio')
-rw-r--r--media-sound/pulseaudio/files/pulseaudio-5.0-crash-udp.patch53
-rw-r--r--media-sound/pulseaudio/files/pulseaudio-5.0-module-switch.patch35
-rw-r--r--media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-1.patch26
-rw-r--r--media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-2.patch73
-rw-r--r--media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-3.patch77
-rw-r--r--media-sound/pulseaudio/files/svolume-fix_param_loading_undefined_beh.patch37
6 files changed, 0 insertions, 301 deletions
diff --git a/media-sound/pulseaudio/files/pulseaudio-5.0-crash-udp.patch b/media-sound/pulseaudio/files/pulseaudio-5.0-crash-udp.patch
deleted file mode 100644
index d14da07459ff..000000000000
--- a/media-sound/pulseaudio/files/pulseaudio-5.0-crash-udp.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 26b9d22dd24c17eb118d0205bf7b02b75d435e3c Mon Sep 17 00:00:00 2001
-From: Alexander E. Patrakov <patrakov@gmail.com>
-Date: Thu, 05 Jun 2014 16:29:25 +0000
-Subject: rtp-recv: fix crash on empty UDP packets (CVE-2014-3970)
-
-On FIONREAD returning 0 bytes, we cannot return success, as the caller
-(rtpoll_work_cb in module-rtp-recv.c) would then try to
-pa_memblock_unref(chunk.memblock) and, because memblock is NULL, trigger
-an assertion.
-
-Also we have to read out the possible empty packet from the socket, so
-that the kernel doesn't tell us again and again about it.
-
-Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
----
-diff --git a/src/modules/rtp/rtp.c b/src/modules/rtp/rtp.c
-index 570737e..7b75e0e 100644
---- a/src/modules/rtp/rtp.c
-+++ b/src/modules/rtp/rtp.c
-@@ -182,8 +182,29 @@ int pa_rtp_recv(pa_rtp_context *c, pa_memchunk *chunk, pa_mempool *pool, struct
- goto fail;
- }
-
-- if (size <= 0)
-- return 0;
-+ if (size <= 0) {
-+ /* size can be 0 due to any of the following reasons:
-+ *
-+ * 1. Somebody sent us a perfectly valid zero-length UDP packet.
-+ * 2. Somebody sent us a UDP packet with a bad CRC.
-+ *
-+ * It is unknown whether size can actually be less than zero.
-+ *
-+ * In the first case, the packet has to be read out, otherwise the
-+ * kernel will tell us again and again about it, thus preventing
-+ * reception of any further packets. So let's just read it out
-+ * now and discard it later, when comparing the number of bytes
-+ * received (0) with the number of bytes wanted (1, see below).
-+ *
-+ * In the second case, recvmsg() will fail, thus allowing us to
-+ * return the error.
-+ *
-+ * Just to avoid passing zero-sized memchunks and NULL pointers to
-+ * recvmsg(), let's force allocation of at least one byte by setting
-+ * size to 1.
-+ */
-+ size = 1;
-+ }
-
- if (c->memchunk.length < (unsigned) size) {
- size_t l;
---
-cgit v0.9.0.2-2-gbebe
diff --git a/media-sound/pulseaudio/files/pulseaudio-5.0-module-switch.patch b/media-sound/pulseaudio/files/pulseaudio-5.0-module-switch.patch
deleted file mode 100644
index e8ff6e051ae4..000000000000
--- a/media-sound/pulseaudio/files/pulseaudio-5.0-module-switch.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From ef4a41e8b0ef81a53769d853dbc7679b25252327 Mon Sep 17 00:00:00 2001
-From: David Henningsson <david.henningsson@canonical.com>
-Date: Fri, 28 Mar 2014 11:59:09 +0100
-Subject: [PATCH 36/38] module-switch-on-port-available: Don't switch profiles
- on uninitialized cards
-
-This could cause the HDMI port to become the default on some systems
-where analog output was available.
-
-BugLink: https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/1256511
-BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=73375
-Signed-off-by: David Henningsson <david.henningsson@canonical.com>
----
- src/modules/module-switch-on-port-available.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/src/modules/module-switch-on-port-available.c b/src/modules/module-switch-on-port-available.c
-index 2c7ad17..c560306 100644
---- a/src/modules/module-switch-on-port-available.c
-+++ b/src/modules/module-switch-on-port-available.c
-@@ -173,6 +173,11 @@ static pa_hook_result_t port_available_hook_callback(pa_core *c, pa_device_port
- return PA_HOOK_OK;
- }
-
-+ if (pa_idxset_size(card->sinks) == 0 && pa_idxset_size(card->sources) == 0)
-+ /* This card is not initialized yet. We'll handle it in
-+ sink_new / source_new callbacks later. */
-+ return PA_HOOK_OK;
-+
- find_sink_and_source(card, port, &sink, &source);
-
- is_active_profile = card->active_profile == pa_hashmap_get(port->profiles, card->active_profile->name);
---
-1.9.0
-
diff --git a/media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-1.patch b/media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-1.patch
deleted file mode 100644
index d90399be3653..000000000000
--- a/media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-1.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From d03ffdccdb7286021e53876ba5d4adf9a1edd0d0 Mon Sep 17 00:00:00 2001
-From: Tanu Kaskinen <tanu.kaskinen@linux.intel.com>
-Date: Sat, 15 Mar 2014 09:37:05 +0200
-Subject: zeroconf-publish: Add locking around pa_mainloop_api_once()
-
-Commit e1e154c7377779377fa1a36655a10effd693f7b5 added locking around
-pa_mainloop_api_once() everywhere except pa__done(). This fixes that
-omission.
-
-diff --git a/src/modules/module-zeroconf-publish.c b/src/modules/module-zeroconf-publish.c
-index 0110e1d..35277c2 100644
---- a/src/modules/module-zeroconf-publish.c
-+++ b/src/modules/module-zeroconf-publish.c
-@@ -807,7 +807,9 @@ void pa__done(pa_module*m) {
- if (!(u = m->userdata))
- return;
-
-+ pa_threaded_mainloop_lock(u->mainloop);
- pa_mainloop_api_once(u->api, client_free, u);
-+ pa_threaded_mainloop_unlock(u->mainloop);
- pa_asyncmsgq_wait_for(u->thread_mq.outq, AVAHI_MESSAGE_SHUTDOWN_COMPLETE);
-
- pa_threaded_mainloop_stop(u->mainloop);
---
-cgit v0.10.2
-
diff --git a/media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-2.patch b/media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-2.patch
deleted file mode 100644
index 7d4de455941f..000000000000
--- a/media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-2.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From 37e73e10be9e42544a4cc160ff85ccada2cc9aa9 Mon Sep 17 00:00:00 2001
-From: Tanu Kaskinen <tanu.kaskinen@linux.intel.com>
-Date: Sat, 15 Mar 2014 09:37:06 +0200
-Subject: zeroconf-publish: Don't react to messages while shutting down
-
-This fixes a case where pa__done() is called while
-AVAHI_MESSAGE_PUBLISH_ALL is waiting for processing. The
-pa_asyncmsgq_wait_for(AVAHI_MESSAGE_SHUTDOWN_COMPLETE) call will
-process all pending messages, and processing AVAHI_MESSAGE_PUBLISH_ALL
-causes publish_all_services(), and that in turn accesses u->services,
-which has been already freed at this point. If we are shutting down,
-we shouldn't react to any of the messages that the Avahi thread is
-sending to the main thread.
-
-BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=76184
-
-diff --git a/src/modules/module-zeroconf-publish.c b/src/modules/module-zeroconf-publish.c
-index 35277c2..db92850 100644
---- a/src/modules/module-zeroconf-publish.c
-+++ b/src/modules/module-zeroconf-publish.c
-@@ -141,6 +141,8 @@ struct userdata {
- pa_hook_slot *sink_new_slot, *source_new_slot, *sink_unlink_slot, *source_unlink_slot, *sink_changed_slot, *source_changed_slot;
-
- pa_native_protocol *native;
-+
-+ bool shutting_down;
- };
-
- /* Runs in PA mainloop context */
-@@ -638,6 +640,11 @@ static void unpublish_all_services(struct userdata *u, bool rem) {
- static int avahi_process_msg(pa_msgobject *o, int code, void *data, int64_t offset, pa_memchunk *chunk) {
- struct userdata *u = (struct userdata *) data;
-
-+ pa_assert(u);
-+
-+ if (u->shutting_down)
-+ return 0;
-+
- switch (code) {
- case AVAHI_MESSAGE_PUBLISH_ALL:
- publish_all_services(u);
-@@ -647,10 +654,6 @@ static int avahi_process_msg(pa_msgobject *o, int code, void *data, int64_t offs
- pa_module_unload(u->core, u->module, true);
- break;
-
-- case AVAHI_MESSAGE_SHUTDOWN_COMPLETE:
-- /* pa__done() is waiting for this */
-- break;
--
- default:
- pa_assert_not_reached();
- }
-@@ -797,7 +800,7 @@ static void client_free(pa_mainloop_api *api PA_GCC_UNUSED, void *userdata) {
- if (u->avahi_poll)
- pa_avahi_poll_free(u->avahi_poll);
-
-- pa_asyncmsgq_post(u->thread_mq.outq, PA_MSGOBJECT(u->msg), AVAHI_MESSAGE_SHUTDOWN_COMPLETE, NULL, 0, NULL, NULL);
-+ pa_asyncmsgq_post(u->thread_mq.outq, PA_MSGOBJECT(u->msg), AVAHI_MESSAGE_SHUTDOWN_COMPLETE, u, 0, NULL, NULL);
- }
-
- void pa__done(pa_module*m) {
-@@ -807,6 +810,8 @@ void pa__done(pa_module*m) {
- if (!(u = m->userdata))
- return;
-
-+ u->shutting_down = true;
-+
- pa_threaded_mainloop_lock(u->mainloop);
- pa_mainloop_api_once(u->api, client_free, u);
- pa_threaded_mainloop_unlock(u->mainloop);
---
-cgit v0.10.2
-
diff --git a/media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-3.patch b/media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-3.patch
deleted file mode 100644
index 6bdd46415cd2..000000000000
--- a/media-sound/pulseaudio/files/pulseaudio-5.0-zeroconf-crash-3.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From b75a20db10c8605d98324a7782a7da6483ae9f14 Mon Sep 17 00:00:00 2001
-From: Tanu Kaskinen <tanu.kaskinen@linux.intel.com>
-Date: Wed, 19 Mar 2014 09:50:39 +0200
-Subject: zeroconf-publish: Don't assume any particular defer event ordering
-
-Also, initialize userdata with zeros to avoid invalid pointers in
-client_free().
-
-This fixes a crash when client_free() is called before
-create_client(). The whole issue could be avoided by using some other
-mechanism than defer events for running the two functions, but I'll
-do that change later (I have also other cleanups planned for
-zeroconf-publish).
-
-BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=76184
-
-diff --git a/src/modules/module-zeroconf-publish.c b/src/modules/module-zeroconf-publish.c
-index db92850..be8806e 100644
---- a/src/modules/module-zeroconf-publish.c
-+++ b/src/modules/module-zeroconf-publish.c
-@@ -142,7 +142,8 @@ struct userdata {
-
- pa_native_protocol *native;
-
-- bool shutting_down;
-+ bool shutting_down; /* Used in the main thread. */
-+ bool client_freed; /* Used in the Avahi thread. */
- };
-
- /* Runs in PA mainloop context */
-@@ -707,6 +708,16 @@ static void create_client(pa_mainloop_api *api PA_GCC_UNUSED, void *userdata) {
- struct userdata *u = (struct userdata *) userdata;
- int error;
-
-+ /* create_client() and client_free() are called via defer events. If the
-+ * two defer events are created very quickly one after another, we can't
-+ * assume that the defer event that runs create_client() will be dispatched
-+ * before the defer event that runs client_free() (at the time of writing,
-+ * pa_mainloop actually always dispatches queued defer events in reverse
-+ * creation order). For that reason we must be prepared for the case where
-+ * client_free() has already been called. */
-+ if (u->client_freed)
-+ return;
-+
- pa_thread_mq_install(&u->thread_mq);
-
- if (!(u->client = avahi_client_new(u->avahi_poll, AVAHI_CLIENT_NO_FAIL, client_callback, u, &error))) {
-@@ -733,7 +744,7 @@ int pa__init(pa_module*m) {
- goto fail;
- }
-
-- m->userdata = u = pa_xnew(struct userdata, 1);
-+ m->userdata = u = pa_xnew0(struct userdata, 1);
- u->core = m->core;
- u->module = m;
- u->native = pa_native_protocol_get(u->core);
-@@ -757,8 +768,6 @@ int pa__init(pa_module*m) {
- u->source_changed_slot = pa_hook_connect(&m->core->hooks[PA_CORE_HOOK_SOURCE_PROPLIST_CHANGED], PA_HOOK_LATE, (pa_hook_cb_t) device_new_or_changed_cb, u);
- u->source_unlink_slot = pa_hook_connect(&m->core->hooks[PA_CORE_HOOK_SOURCE_UNLINK], PA_HOOK_LATE, (pa_hook_cb_t) device_unlink_cb, u);
-
-- u->main_entry_group = NULL;
--
- un = pa_get_user_name_malloc();
- hn = pa_get_host_name_malloc();
- u->service_name = pa_truncate_utf8(pa_sprintf_malloc("%s@%s", un, hn), AVAHI_LABEL_MAX-1);
-@@ -801,6 +810,8 @@ static void client_free(pa_mainloop_api *api PA_GCC_UNUSED, void *userdata) {
- pa_avahi_poll_free(u->avahi_poll);
-
- pa_asyncmsgq_post(u->thread_mq.outq, PA_MSGOBJECT(u->msg), AVAHI_MESSAGE_SHUTDOWN_COMPLETE, u, 0, NULL, NULL);
-+
-+ u->client_freed = true;
- }
-
- void pa__done(pa_module*m) {
---
-cgit v0.10.2
-
diff --git a/media-sound/pulseaudio/files/svolume-fix_param_loading_undefined_beh.patch b/media-sound/pulseaudio/files/svolume-fix_param_loading_undefined_beh.patch
deleted file mode 100644
index 4e22f5e95d1c..000000000000
--- a/media-sound/pulseaudio/files/svolume-fix_param_loading_undefined_beh.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From: Wim Taymans
-Date: Wed, 7 Jan 2015 11:20:01 +0100
-Subject: [PATCH] svolume.orc: avoid parameter loading undefined behaviour
-
-In some cases, depending on the instruction that performs the load, orc
-ignores the size of the parameter when loading it for the first time.
-Explicitly load the parameter into a temp to make sure it is loaded
-correctly, like we do for the 2ch case.
-
-See https://bugzilla.gnome.org/show_bug.cgi?id=742271
----
- src/pulsecore/svolume.orc | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/src/pulsecore/svolume.orc b/src/pulsecore/svolume.orc
-index 0edbefb..f869893 100644
---- a/src/pulsecore/svolume.orc
-+++ b/src/pulsecore/svolume.orc
-@@ -45,13 +45,15 @@
-
- .function pa_volume_s16ne_orc_1ch
- .dest 2 samples int16_t
--.param 4 v int32_t
-+.param 4 vols int32_t
-+.temp 4 v
- .temp 2 vh
- .temp 4 s
- .temp 4 mh
- .temp 4 ml
- .temp 4 signc
-
-+loadpl v, vols
- convuwl s, samples
- x2 cmpgtsw signc, 0, s
- x2 andw signc, signc, v
---
-1.9.3