This is an automated email from the git hooks/post-receive script. themuso-guest pushed a commit to branch ubuntu in repository pulseaudio.
commit 6a279003486c58051b4a44080b584e4de7988f26 Author: Luke Yelavich <[email protected]> Date: Tue Jan 5 10:14:00 2016 +1100 Refresh patches --- ...rapper-Quit-daemon-if-pid-file-is-removed.patch | 4 +- ...nd_mixer_poll_descriptors_count_when_zero.patch | 4 +- ...onf-parser-add-support-for-.d-directories.patch | 184 --------------------- ...nt-conf-daemon-conf-enable-.d-directories.patch | 127 -------------- debian/patches/0202-dont-probe-ucm.patch | 2 +- ...0203-card-Add-hook-before-profile-changes.patch | 4 +- debian/patches/0207-Enable-pulseaudio-droid.patch | 12 +- ...tooth-device-Allow-leaving-transport-runn.patch | 16 +- .../0407-access-Add-access-control-hooks.patch | 6 +- debian/patches/0409-Trust-store-patch.patch | 105 +++++------- ...-thread-to-activate-trust-store-interface.patch | 4 +- .../0417-increase-timeout-check-apparmor.patch | 14 +- debian/patches/series | 4 - 13 files changed, 73 insertions(+), 413 deletions(-) diff --git a/debian/patches/0022-inotify-wrapper-Quit-daemon-if-pid-file-is-removed.patch b/debian/patches/0022-inotify-wrapper-Quit-daemon-if-pid-file-is-removed.patch index 64bc62b..3826118 100644 --- a/debian/patches/0022-inotify-wrapper-Quit-daemon-if-pid-file-is-removed.patch +++ b/debian/patches/0022-inotify-wrapper-Quit-daemon-if-pid-file-is-removed.patch @@ -29,7 +29,7 @@ Index: pulseaudio/src/Makefile.am =================================================================== --- pulseaudio.orig/src/Makefile.am +++ pulseaudio/src/Makefile.am -@@ -933,6 +933,7 @@ libpulsecore_@PA_MAJORMINOR@_la_SOURCES +@@ -938,6 +938,7 @@ libpulsecore_@PA_MAJORMINOR@_la_SOURCES pulsecore/core-subscribe.c pulsecore/core-subscribe.h \ pulsecore/core.c pulsecore/core.h \ pulsecore/hook-list.c pulsecore/hook-list.h \ @@ -91,7 +91,7 @@ Index: pulseaudio/src/daemon/main.c c->default_sample_spec = conf->default_sample_spec; c->alternate_sample_rate = conf->alternate_sample_rate; c->default_channel_map = conf->default_channel_map; -@@ -1154,6 +1167,9 @@ finish: +@@ -1162,6 +1175,9 @@ finish: pa_autospawn_lock_done(false); } diff --git a/debian/patches/0023-fixing_snd_mixer_poll_descriptors_count_when_zero.patch b/debian/patches/0023-fixing_snd_mixer_poll_descriptors_count_when_zero.patch index 0adff37..3e9e71f 100644 --- a/debian/patches/0023-fixing_snd_mixer_poll_descriptors_count_when_zero.patch +++ b/debian/patches/0023-fixing_snd_mixer_poll_descriptors_count_when_zero.patch @@ -12,5 +12,5 @@ Index: pulseaudio/src/modules/alsa/alsa-mixer.c + pa_log("snd_mixer_poll_descriptors_count() equal 0"); + return; } - num_fds = (unsigned) n; - + else if (n == 0) { + pa_log_warn("Mixer has no poll descriptors. Please control mixer from PulseAudio only."); diff --git a/debian/patches/0101-conf-parser-add-support-for-.d-directories.patch b/debian/patches/0101-conf-parser-add-support-for-.d-directories.patch deleted file mode 100644 index d3bb73e..0000000 --- a/debian/patches/0101-conf-parser-add-support-for-.d-directories.patch +++ /dev/null @@ -1,184 +0,0 @@ -From 1d7ce901398b4e65bfac991aa7a351ac15c4910e Mon Sep 17 00:00:00 2001 -From: Tanu Kaskinen <[email protected]> -Date: Mon, 7 Dec 2015 23:22:41 +0200 -Subject: [PATCH 2/2] conf-parser: add support for .d directories - -This allows a configuration scheme where after loading configuration -from "somefile", the parser loads configuration from files in -directory "somefile.d". This feature needs to be enabled on a per-file -basis, though, and this patch doesn't yet enable the feature for any -files. ---- - src/daemon/daemon-conf.c | 2 +- - src/modules/alsa/alsa-mixer.c | 4 ++-- - src/modules/module-augment-properties.c | 2 +- - src/pulse/client-conf.c | 2 +- - src/pulsecore/conf-parser.c | 42 +++++++++++++++++++++++++++++++-- - src/pulsecore/conf-parser.h | 8 ++++++- - 6 files changed, 52 insertions(+), 8 deletions(-) - -diff --git a/src/daemon/daemon-conf.c b/src/daemon/daemon-conf.c -index f94cdeb..306c8cb 100644 ---- a/src/daemon/daemon-conf.c -+++ b/src/daemon/daemon-conf.c -@@ -617,7 +617,7 @@ int pa_daemon_conf_load(pa_daemon_conf *c, const char *filename) { - ci.default_channel_map_set = ci.default_sample_spec_set = false; - ci.conf = c; - -- r = f ? pa_config_parse(c->config_file, f, table, NULL, NULL) : 0; -+ r = f ? pa_config_parse(c->config_file, f, table, NULL, false, NULL) : 0; - - if (r >= 0) { - -diff --git a/src/modules/alsa/alsa-mixer.c b/src/modules/alsa/alsa-mixer.c -index 515b285..1fe2a02 100644 ---- a/src/modules/alsa/alsa-mixer.c -+++ b/src/modules/alsa/alsa-mixer.c -@@ -2594,7 +2594,7 @@ pa_alsa_path* pa_alsa_path_new(const char *paths_dir, const char *fname, pa_alsa - - fn = pa_maybe_prefix_path(fname, paths_dir); - -- r = pa_config_parse(fn, NULL, items, p->proplist, p); -+ r = pa_config_parse(fn, NULL, items, p->proplist, false, p); - pa_xfree(fn); - - if (r < 0) -@@ -4411,7 +4411,7 @@ pa_alsa_profile_set* pa_alsa_profile_set_new(const char *fname, const pa_channel - pa_run_from_build_tree() ? PA_SRCDIR "/modules/alsa/mixer/profile-sets/" : - PA_ALSA_PROFILE_SETS_DIR); - -- r = pa_config_parse(fn, NULL, items, NULL, ps); -+ r = pa_config_parse(fn, NULL, items, NULL, false, ps); - pa_xfree(fn); - - if (r < 0) -diff --git a/src/modules/module-augment-properties.c b/src/modules/module-augment-properties.c -index 42b6fd9..541f0e7 100644 ---- a/src/modules/module-augment-properties.c -+++ b/src/modules/module-augment-properties.c -@@ -204,7 +204,7 @@ static void update_rule(struct rule *r) { - table[0].data = &r->application_name; - table[1].data = &r->icon_name; - -- if (pa_config_parse(fn, NULL, table, NULL, r) < 0) -+ if (pa_config_parse(fn, NULL, table, NULL, false, r) < 0) - pa_log_warn("Failed to parse .desktop file %s.", fn); - - pa_xfree(fn); -diff --git a/src/pulse/client-conf.c b/src/pulse/client-conf.c -index 47fe183..c2ece90 100644 ---- a/src/pulse/client-conf.c -+++ b/src/pulse/client-conf.c -@@ -149,7 +149,7 @@ void pa_client_conf_load(pa_client_conf *c, bool load_from_x11, bool load_from_e - - f = pa_open_config_file(DEFAULT_CLIENT_CONFIG_FILE, DEFAULT_CLIENT_CONFIG_FILE_USER, ENV_CLIENT_CONFIG_FILE, &fn); - if (f) { -- pa_config_parse(fn, f, table, NULL, NULL); -+ pa_config_parse(fn, f, table, NULL, false, NULL); - pa_xfree(fn); - fclose(f); - } -diff --git a/src/pulsecore/conf-parser.c b/src/pulsecore/conf-parser.c -index 2dcd45a..60345ad 100644 ---- a/src/pulsecore/conf-parser.c -+++ b/src/pulsecore/conf-parser.c -@@ -21,6 +21,7 @@ - #include <config.h> - #endif - -+#include <dirent.h> - #include <string.h> - #include <stdio.h> - #include <errno.h> -@@ -103,7 +104,7 @@ static int parse_line(pa_config_parser_state *state) { - } - } - -- r = pa_config_parse(fn, NULL, state->item_table, state->proplist, state->userdata); -+ r = pa_config_parse(fn, NULL, state->item_table, state->proplist, false, state->userdata); - pa_xfree(path); - return r; - } -@@ -152,8 +153,13 @@ static int parse_line(pa_config_parser_state *state) { - return normal_assignment(state); - } - -+static int conf_filter(const struct dirent *entry) { -+ return pa_endswith(entry->d_name, ".conf"); -+} -+ - /* Go through the file and parse each line */ --int pa_config_parse(const char *filename, FILE *f, const pa_config_item *t, pa_proplist *proplist, void *userdata) { -+int pa_config_parse(const char *filename, FILE *f, const pa_config_item *t, pa_proplist *proplist, bool use_dot_d, -+ void *userdata) { - int r = -1; - bool do_close = !f; - pa_config_parser_state state; -@@ -211,6 +217,38 @@ finish: - if (do_close && f) - fclose(f); - -+ if (use_dot_d) { -+ char *dir_name; -+ int n; -+ struct dirent **entries = NULL; -+ -+ dir_name = pa_sprintf_malloc("%s.d", filename); -+ -+ n = scandir(dir_name, &entries, conf_filter, alphasort); -+ if (n >= 0) { -+ int i; -+ -+ for (i = 0; i < n; i++) { -+ char *filename2; -+ -+ filename2 = pa_sprintf_malloc("%s" PA_PATH_SEP "%s", dir_name, entries[i]->d_name); -+ pa_config_parse(filename2, NULL, t, proplist, false, userdata); -+ pa_xfree(filename2); -+ -+ free(entries[i]); -+ } -+ -+ free(entries); -+ } else { -+ if (errno == ENOENT) -+ pa_log_debug("%s does not exist, ignoring.", dir_name); -+ else -+ pa_log_warn("scandir(\"%s\") failed: %s", dir_name, pa_cstrerror(errno)); -+ } -+ -+ pa_xfree(dir_name); -+ } -+ - return r; - } - -diff --git a/src/pulsecore/conf-parser.h b/src/pulsecore/conf-parser.h -index dbb6f5c..7dc0ff9 100644 ---- a/src/pulsecore/conf-parser.h -+++ b/src/pulsecore/conf-parser.h -@@ -59,6 +59,11 @@ struct pa_config_parser_state { - * pa_config_items in *t that is terminated by an item where lvalue is - * NULL. - * -+ * If use_dot_d is true, then after parsing the file named by the filename -+ * argument, the function will parse all files ending with ".conf" in -+ * alphabetical order from a directory whose name is filename + ".d", if such -+ * directory exists. -+ * - * Some configuration files may contain a Properties section, which - * is a bit special. Normally all accepted lvalues must be predefined - * in the pa_config_item table, but in the Properties section the -@@ -68,7 +73,8 @@ struct pa_config_parser_state { - * properties, and those properties will be merged into the given - * proplist. If proplist is NULL, then sections named "Properties" - * are not allowed at all in the configuration file. */ --int pa_config_parse(const char *filename, FILE *f, const pa_config_item *t, pa_proplist *proplist, void *userdata); -+int pa_config_parse(const char *filename, FILE *f, const pa_config_item *t, pa_proplist *proplist, bool use_dot_d, -+ void *userdata); - - /* Generic parsers for integers, size_t, booleans and strings */ - int pa_config_parse_int(pa_config_parser_state *state); --- -2.6.4 - diff --git a/debian/patches/0102-client-conf-daemon-conf-enable-.d-directories.patch b/debian/patches/0102-client-conf-daemon-conf-enable-.d-directories.patch deleted file mode 100644 index 5df2848..0000000 --- a/debian/patches/0102-client-conf-daemon-conf-enable-.d-directories.patch +++ /dev/null @@ -1,127 +0,0 @@ -From 7b9fcc01f62558a6f517e2a23408e98c2688bd9e Mon Sep 17 00:00:00 2001 -From: Tanu Kaskinen <[email protected]> -Date: Mon, 7 Dec 2015 23:22:42 +0200 -Subject: [PATCH] client-conf, daemon-conf: enable .d directories - -I want to enable client.conf.d, because in OpenEmbedded-core we have -a graphical environment called Sato that runs as root. Sato needs to -set allow-autospawn-for-root=true in client.conf, but the default -configuration in OpenEmbedded-core should not set that option. With -this patch, I can create a Sato-specific package that simply installs -50-sato.conf in /etc/pulse/client.conf.d without conflicting with the -main client.conf coming from a different package. - -daemon.conf.d is enabled just because it would be strange to not -support it while client.conf.d is supported. ---- - man/pulse-client.conf.5.xml.in | 19 +++++++++++++++---- - man/pulse-daemon.conf.5.xml.in | 25 ++++++++++++++++++------- - src/daemon/daemon-conf.c | 2 +- - src/pulse/client-conf.c | 2 +- - 4 files changed, 35 insertions(+), 13 deletions(-) - -diff --git a/man/pulse-client.conf.5.xml.in b/man/pulse-client.conf.5.xml.in -index 1002dbe..cca2219 100644 ---- a/man/pulse-client.conf.5.xml.in -+++ b/man/pulse-client.conf.5.xml.in -@@ -23,15 +23,26 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>. - - <synopsis> - <p><file>~/.config/pulse/client.conf</file></p> -- -+ <p><file>~/.config/pulse/client.conf.d/*.conf</file></p> - <p><file>@PA_DEFAULT_CONFIG_DIR@/client.conf</file></p> -+ <p><file>@PA_DEFAULT_CONFIG_DIR@/client.conf.d/*.conf</file></p> - </synopsis> - - <description> - <p>The PulseAudio client library reads configuration directives from -- a file <file>~/.config/pulse/client.conf</file> on startup and when that -- file doesn't exist from -- <file>@PA_DEFAULT_CONFIG_DIR@/client.conf</file>.</p> -+ a configuration file on startup. If the per-user file -+ <file>~/.config/pulse/client.conf</file> exists, it is used, otherwise the -+ system configuration file <file>@PA_DEFAULT_CONFIG_DIR@/client.conf</file> -+ is used. In addition to those main files, configuration directives can also -+ be put in files under directories -+ <file>~/.config/pulse/client.conf.d/</file> and -+ <file>@PA_DEFAULT_CONFIG_DIR@/client.conf.d/</file>. Those files have to -+ have the .conf file name extension, but otherwise the file names can be -+ chosen freely. The files under client.conf.d are processed in alphabetical -+ order. In case the same option is set in multiple files, the last file to -+ set an option overrides earlier files. The main client.conf file is -+ processed first, so options set in files under client.conf.d override the -+ main file.</p> - - <p>The configuration file is a simple collection of variable - declarations. If the configuration file parser encounters either ; -diff --git a/man/pulse-daemon.conf.5.xml.in b/man/pulse-daemon.conf.5.xml.in -index d221585..0367b1f 100644 ---- a/man/pulse-daemon.conf.5.xml.in -+++ b/man/pulse-daemon.conf.5.xml.in -@@ -23,18 +23,29 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>. - - <synopsis> - <p><file>~/.config/pulse/daemon.conf</file></p> -- -+ <p><file>~/.config/pulse/daemon.conf.d/*.conf</file></p> - <p><file>@PA_DEFAULT_CONFIG_DIR@/daemon.conf</file></p> -+ <p><file>@PA_DEFAULT_CONFIG_DIR@/daemon.conf.d/*.conf</file></p> - </synopsis> - - <description> - <p>The PulseAudio sound server reads configuration directives from -- a file <file>~/.config/pulse/daemon.conf</file> on startup and when that -- file doesn't exist from -- <file>@PA_DEFAULT_CONFIG_DIR@/daemon.conf</file>. Please note that the -- server also reads a configuration script on startup -- <file>default.pa</file> which also contains runtime configuration -- directives.</p> -+ a configuration file on startup. If the per-user file -+ <file>~/.config/pulse/daemon.conf</file> exists, it is used, otherwise the -+ system configuration file <file>@PA_DEFAULT_CONFIG_DIR@/daemon.conf</file> -+ is used. In addition to those main files, configuration directives can also -+ be put in files under directories -+ <file>~/.config/pulse/daemon.conf.d/</file> and -+ <file>@PA_DEFAULT_CONFIG_DIR@/daemon.conf.d/</file>. Those files have to -+ have the .conf file name extension, but otherwise the file names can be -+ chosen freely. The files under daemon.conf.d are processed in alphabetical -+ order. In case the same option is set in multiple files, the last file to -+ set an option overrides earlier files. The main daemon.conf file is -+ processed first, so options set in files under daemon.conf.d override the -+ main file.</p> -+ -+ <p>Please note that the server also reads a configuration script on -+ startup. See <manref name="default.pa" section="5"/>.</p> - - <p>The configuration file is a simple collection of variable - declarations. If the configuration file parser encounters either ; -diff --git a/src/daemon/daemon-conf.c b/src/daemon/daemon-conf.c -index 306c8cb..288aed2 100644 ---- a/src/daemon/daemon-conf.c -+++ b/src/daemon/daemon-conf.c -@@ -617,7 +617,7 @@ int pa_daemon_conf_load(pa_daemon_conf *c, const char *filename) { - ci.default_channel_map_set = ci.default_sample_spec_set = false; - ci.conf = c; - -- r = f ? pa_config_parse(c->config_file, f, table, NULL, false, NULL) : 0; -+ r = f ? pa_config_parse(c->config_file, f, table, NULL, true, NULL) : 0; - - if (r >= 0) { - -diff --git a/src/pulse/client-conf.c b/src/pulse/client-conf.c -index c2ece90..c23aa6b 100644 ---- a/src/pulse/client-conf.c -+++ b/src/pulse/client-conf.c -@@ -149,7 +149,7 @@ void pa_client_conf_load(pa_client_conf *c, bool load_from_x11, bool load_from_e - - f = pa_open_config_file(DEFAULT_CLIENT_CONFIG_FILE, DEFAULT_CLIENT_CONFIG_FILE_USER, ENV_CLIENT_CONFIG_FILE, &fn); - if (f) { -- pa_config_parse(fn, f, table, NULL, false, NULL); -+ pa_config_parse(fn, f, table, NULL, true, NULL); - pa_xfree(fn); - fclose(f); - } --- -2.6.4 - diff --git a/debian/patches/0202-dont-probe-ucm.patch b/debian/patches/0202-dont-probe-ucm.patch index bed2ee4..dd8c1b9 100644 --- a/debian/patches/0202-dont-probe-ucm.patch +++ b/debian/patches/0202-dont-probe-ucm.patch @@ -2,7 +2,7 @@ Index: pulseaudio/src/modules/alsa/alsa-ucm.c =================================================================== --- pulseaudio.orig/src/modules/alsa/alsa-ucm.c +++ pulseaudio/src/modules/alsa/alsa-ucm.c -@@ -1620,7 +1620,8 @@ pa_alsa_profile_set* pa_alsa_ucm_add_pro +@@ -1619,7 +1619,8 @@ pa_alsa_profile_set* pa_alsa_ucm_add_pro ucm_create_profile(ucm, ps, verb, verb_name, verb_desc); } diff --git a/debian/patches/0203-card-Add-hook-before-profile-changes.patch b/debian/patches/0203-card-Add-hook-before-profile-changes.patch index c3800f7..5af5223 100644 --- a/debian/patches/0203-card-Add-hook-before-profile-changes.patch +++ b/debian/patches/0203-card-Add-hook-before-profile-changes.patch @@ -14,7 +14,7 @@ Index: pulseaudio/src/pulsecore/card.c =================================================================== --- pulseaudio.orig/src/pulsecore/card.c +++ pulseaudio/src/pulsecore/card.c -@@ -276,6 +276,8 @@ int pa_card_set_profile(pa_card *c, pa_c +@@ -291,6 +291,8 @@ int pa_card_set_profile(pa_card *c, pa_c return 0; } @@ -27,7 +27,7 @@ Index: pulseaudio/src/pulsecore/core.h =================================================================== --- pulseaudio.orig/src/pulsecore/core.h +++ pulseaudio/src/pulsecore/core.h -@@ -122,6 +122,7 @@ typedef enum pa_core_hook { +@@ -121,6 +121,7 @@ typedef enum pa_core_hook { PA_CORE_HOOK_CARD_PUT, PA_CORE_HOOK_CARD_UNLINK, PA_CORE_HOOK_CARD_PROFILE_CHANGED, diff --git a/debian/patches/0207-Enable-pulseaudio-droid.patch b/debian/patches/0207-Enable-pulseaudio-droid.patch index 585b9a1..373c7d8 100644 --- a/debian/patches/0207-Enable-pulseaudio-droid.patch +++ b/debian/patches/0207-Enable-pulseaudio-droid.patch @@ -2,7 +2,7 @@ Index: pulseaudio/configure.ac =================================================================== --- pulseaudio.orig/configure.ac +++ pulseaudio/configure.ac -@@ -807,6 +807,21 @@ AM_CONDITIONAL([HAVE_ALSA], [test "x$HAV +@@ -808,6 +808,21 @@ AM_CONDITIONAL([HAVE_ALSA], [test "x$HAV AS_IF([test "x$HAVE_ALSA" = "x1"], AC_DEFINE([HAVE_ALSA], 1, [Have ALSA?])) AS_IF([test "x$HAVE_ALSA_UCM" = "x1"], AC_DEFINE([HAVE_ALSA_UCM], 1, [Have ALSA UCM?])) @@ -24,7 +24,7 @@ Index: pulseaudio/configure.ac #### EsounD support (optional) #### AC_ARG_ENABLE([esound], -@@ -1521,6 +1536,7 @@ AS_IF([test "x$HAVE_X11" = "x1"], ENABLE +@@ -1522,6 +1537,7 @@ AS_IF([test "x$HAVE_X11" = "x1"], ENABLE AS_IF([test "x$HAVE_OSS_OUTPUT" = "x1"], ENABLE_OSS_OUTPUT=yes, ENABLE_OSS_OUTPUT=no) AS_IF([test "x$HAVE_OSS_WRAPPER" = "x1"], ENABLE_OSS_WRAPPER=yes, ENABLE_OSS_WRAPPER=no) AS_IF([test "x$HAVE_ALSA" = "x1"], ENABLE_ALSA=yes, ENABLE_ALSA=no) @@ -32,7 +32,7 @@ Index: pulseaudio/configure.ac AS_IF([test "x$HAVE_COREAUDIO" = "x1"], ENABLE_COREAUDIO=yes, ENABLE_COREAUDIO=no) AS_IF([test "x$HAVE_SOLARIS" = "x1"], ENABLE_SOLARIS=yes, ENABLE_SOLARIS=no) AS_IF([test "x$HAVE_WAVEOUT" = "x1"], ENABLE_WAVEOUT=yes, ENABLE_WAVEOUT=no) -@@ -1583,6 +1599,7 @@ echo " +@@ -1584,6 +1600,7 @@ echo " Enable OSS Wrapper: ${ENABLE_OSS_WRAPPER} Enable EsounD: ${ENABLE_ESOUND} Enable Alsa: ${ENABLE_ALSA} @@ -44,7 +44,7 @@ Index: pulseaudio/src/Makefile.am =================================================================== --- pulseaudio.orig/src/Makefile.am +++ pulseaudio/src/Makefile.am -@@ -1268,6 +1268,16 @@ modlibexec_LTLIBRARIES += \ +@@ -1273,6 +1273,16 @@ modlibexec_LTLIBRARIES += \ module-alsa-source.la \ module-alsa-card.la @@ -61,7 +61,7 @@ Index: pulseaudio/src/Makefile.am dist_alsaprofilesets_DATA = \ modules/alsa/mixer/profile-sets/default.conf \ modules/alsa/mixer/profile-sets/force-speaker.conf \ -@@ -1538,6 +1548,13 @@ SYMDEF_FILES = \ +@@ -1543,6 +1553,13 @@ SYMDEF_FILES = \ module-filter-apply-symdef.h \ module-filter-heuristics-symdef.h @@ -75,7 +75,7 @@ Index: pulseaudio/src/Makefile.am if HAVE_ESOUND SYMDEF_FILES += \ module-esound-protocol-tcp-symdef.h \ -@@ -1847,6 +1864,44 @@ libalsa_util_la_LIBADD += $(DBUS_LIBS) +@@ -1852,6 +1869,44 @@ libalsa_util_la_LIBADD += $(DBUS_LIBS) libalsa_util_la_CFLAGS += $(DBUS_CFLAGS) endif diff --git a/debian/patches/0208-module-bluetooth-device-Allow-leaving-transport-runn.patch b/debian/patches/0208-module-bluetooth-device-Allow-leaving-transport-runn.patch index c7d2b29..43790e7 100644 --- a/debian/patches/0208-module-bluetooth-device-Allow-leaving-transport-runn.patch +++ b/debian/patches/0208-module-bluetooth-device-Allow-leaving-transport-runn.patch @@ -77,7 +77,7 @@ Index: pulseaudio/src/modules/bluetooth/module-bluez4-device.c =================================================================== --- pulseaudio.orig/src/modules/bluetooth/module-bluez4-device.c +++ pulseaudio/src/modules/bluetooth/module-bluez4-device.c -@@ -187,6 +187,9 @@ struct userdata { +@@ -184,6 +184,9 @@ struct userdata { pa_modargs *modargs; int stream_write_type; @@ -87,7 +87,7 @@ Index: pulseaudio/src/modules/bluetooth/module-bluez4-device.c }; enum { -@@ -380,6 +383,67 @@ static int bt_transport_acquire(struct u +@@ -377,6 +380,67 @@ static int bt_transport_acquire(struct u return 0; } @@ -155,7 +155,7 @@ Index: pulseaudio/src/modules/bluetooth/module-bluez4-device.c /* Run from IO thread */ static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offset, pa_memchunk *chunk) { struct userdata *u = PA_SINK(o)->userdata; -@@ -1428,6 +1492,10 @@ static int sco_over_pcm_state_update(str +@@ -1425,6 +1489,10 @@ static int sco_over_pcm_state_update(str if (u->stream_fd < 0) return 0; @@ -166,7 +166,7 @@ Index: pulseaudio/src/modules/bluetooth/module-bluez4-device.c pa_log_debug("Closing SCO over PCM"); bt_transport_release(u); -@@ -1471,6 +1539,11 @@ static pa_hook_result_t transport_nrec_c +@@ -1468,6 +1536,11 @@ static pa_hook_result_t transport_nrec_c if (t != u->transport) return PA_HOOK_OK; @@ -178,7 +178,7 @@ Index: pulseaudio/src/modules/bluetooth/module-bluez4-device.c p = pa_proplist_new(); pa_proplist_sets(p, "bluetooth.nrec", t->nrec ? "1" : "0"); pa_source_update_proplist(u->source, PA_UPDATE_REPLACE, p); -@@ -1833,7 +1906,7 @@ static int setup_transport(struct userda +@@ -1830,7 +1903,7 @@ static int setup_transport(struct userda pa_bluez4_transport *t; pa_assert(u); @@ -187,7 +187,7 @@ Index: pulseaudio/src/modules/bluetooth/module-bluez4-device.c pa_assert(u->profile != PA_BLUEZ4_PROFILE_OFF); /* check if profile has a transport */ -@@ -1913,7 +1986,8 @@ static void stop_thread(struct userdata +@@ -1910,7 +1983,8 @@ static void stop_thread(struct userdata if (u->transport) { bt_transport_release(u); @@ -197,7 +197,7 @@ Index: pulseaudio/src/modules/bluetooth/module-bluez4-device.c } if (u->sink) { -@@ -2518,6 +2592,10 @@ int pa__init(pa_module *m) { +@@ -2509,6 +2583,10 @@ int pa__init(pa_module *m) { pa_hook_connect(pa_bluez4_discovery_hook(u->discovery, PA_BLUEZ4_HOOK_TRANSPORT_SPEAKER_GAIN_CHANGED), PA_HOOK_NORMAL, (pa_hook_cb_t) transport_speaker_gain_changed_cb, u); @@ -208,7 +208,7 @@ Index: pulseaudio/src/modules/bluetooth/module-bluez4-device.c /* Add the card structure. This will also initialize the default profile */ if (add_card(u) < 0) goto fail; -@@ -2597,6 +2675,9 @@ void pa__done(pa_module *m) { +@@ -2588,6 +2666,9 @@ void pa__done(pa_module *m) { if (u->transport_speaker_changed_slot) pa_hook_slot_free(u->transport_speaker_changed_slot); diff --git a/debian/patches/0407-access-Add-access-control-hooks.patch b/debian/patches/0407-access-Add-access-control-hooks.patch index 2a27cd9..21b33e5 100644 --- a/debian/patches/0407-access-Add-access-control-hooks.patch +++ b/debian/patches/0407-access-Add-access-control-hooks.patch @@ -16,7 +16,7 @@ Index: pulseaudio/src/Makefile.am =================================================================== --- pulseaudio.orig/src/Makefile.am +++ pulseaudio/src/Makefile.am -@@ -637,6 +637,7 @@ pkglib_LTLIBRARIES = \ +@@ -641,6 +641,7 @@ commonlib_LTLIBRARIES = \ # to the existing libpulse being linked to libpulsecommon). Duplicating the # code allows us to prevent this circular linking. libpulsecommon_@PA_MAJORMINOR@_la_SOURCES = \ @@ -158,7 +158,7 @@ Index: pulseaudio/src/pulsecore/core.h =================================================================== --- pulseaudio.orig/src/pulsecore/core.h +++ pulseaudio/src/pulsecore/core.h -@@ -50,6 +50,7 @@ typedef enum pa_suspend_cause { +@@ -49,6 +49,7 @@ typedef enum pa_suspend_cause { #include <pulsecore/source.h> #include <pulsecore/core-subscribe.h> #include <pulsecore/msgobject.h> @@ -166,7 +166,7 @@ Index: pulseaudio/src/pulsecore/core.h typedef enum pa_server_type { PA_SERVER_TYPE_UNSET, -@@ -207,6 +208,8 @@ struct pa_core { +@@ -206,6 +207,8 @@ struct pa_core { /* hooks */ pa_hook hooks[PA_CORE_HOOK_MAX]; diff --git a/debian/patches/0409-Trust-store-patch.patch b/debian/patches/0409-Trust-store-patch.patch index 539891d..958095e 100644 --- a/debian/patches/0409-Trust-store-patch.patch +++ b/debian/patches/0409-Trust-store-patch.patch @@ -12,7 +12,6 @@ Signed-off-by: David Henningsson <[email protected]> src/modules/trust-store/module-trust-store.c | 221 +++++++++++++++++++++++++++ src/modules/trust-store/truststore.cc | 74 +++++++++ src/modules/trust-store/truststore.h | 41 +++++ - src/pulsecore/client.c | 6 +- src/pulsecore/client.h | 4 + src/pulsecore/creds.h | 1 + src/pulsecore/iochannel.c | 2 + @@ -26,9 +25,9 @@ Signed-off-by: David Henningsson <[email protected]> Index: pulseaudio/configure.ac =================================================================== ---- pulseaudio.orig/configure.ac 2015-11-30 16:38:21.788316586 +0100 -+++ pulseaudio/configure.ac 2015-11-30 16:38:21.776316368 +0100 -@@ -1399,6 +1399,19 @@ +--- pulseaudio.orig/configure.ac ++++ pulseaudio/configure.ac +@@ -1400,6 +1400,19 @@ AS_IF([test "x$enable_adrian_aec" != "xn [HAVE_ADRIAN_EC=1]) AM_CONDITIONAL([HAVE_ADRIAN_EC], [test "x$HAVE_ADRIAN_EC" = "x1"]) @@ -48,7 +47,7 @@ Index: pulseaudio/configure.ac ################################### -@@ -1568,6 +1581,7 @@ +@@ -1569,6 +1582,7 @@ AS_IF([test "x$HAVE_ADRIAN_EC" = "x1"], AS_IF([test "x$HAVE_SPEEX" = "x1"], ENABLE_SPEEX=yes, ENABLE_SPEEX=no) AS_IF([test "x$HAVE_SOXR" = "x1"], ENABLE_SOXR=yes, ENABLE_SOXR=no) AS_IF([test "x$HAVE_WEBRTC" = "x1"], ENABLE_WEBRTC=yes, ENABLE_WEBRTC=no) @@ -56,7 +55,7 @@ Index: pulseaudio/configure.ac AS_IF([test "x$HAVE_TDB" = "x1"], ENABLE_TDB=yes, ENABLE_TDB=no) AS_IF([test "x$HAVE_GDBM" = "x1"], ENABLE_GDBM=yes, ENABLE_GDBM=no) AS_IF([test "x$HAVE_SIMPLEDB" = "x1"], ENABLE_SIMPLEDB=yes, ENABLE_SIMPLEDB=no) -@@ -1632,6 +1646,7 @@ +@@ -1633,6 +1647,7 @@ echo " Enable speex (resampler, AEC): ${ENABLE_SPEEX} Enable soxr (resampler): ${ENABLE_SOXR} Enable WebRTC echo canceller: ${ENABLE_WEBRTC} @@ -66,9 +65,9 @@ Index: pulseaudio/configure.ac Database Index: pulseaudio/src/Makefile.am =================================================================== ---- pulseaudio.orig/src/Makefile.am 2015-11-30 16:38:21.788316586 +0100 -+++ pulseaudio/src/Makefile.am 2015-11-30 16:38:44.000000000 +0100 -@@ -1072,6 +1072,10 @@ +--- pulseaudio.orig/src/Makefile.am ++++ pulseaudio/src/Makefile.am +@@ -1077,6 +1077,10 @@ if HAVE_WEBRTC modlibexec_LTLIBRARIES += libwebrtc-util.la endif @@ -79,7 +78,7 @@ Index: pulseaudio/src/Makefile.am if HAVE_ESOUND modlibexec_LTLIBRARIES += \ libprotocol-esound.la -@@ -1196,6 +1200,11 @@ +@@ -1201,6 +1205,11 @@ modlibexec_LTLIBRARIES += \ module-filter-heuristics.la \ module-role-ducking.la @@ -91,7 +90,7 @@ Index: pulseaudio/src/Makefile.am if HAVE_ESOUND modlibexec_LTLIBRARIES += \ module-esound-protocol-tcp.la \ -@@ -1522,6 +1531,7 @@ +@@ -1527,6 +1536,7 @@ SYMDEF_FILES = \ module-intended-roles-symdef.h \ module-suspend-on-idle-symdef.h \ module-echo-cancel-symdef.h \ @@ -99,7 +98,7 @@ Index: pulseaudio/src/Makefile.am module-hal-detect-symdef.h \ module-udev-detect-symdef.h \ module-systemd-login-symdef.h \ -@@ -2114,6 +2124,20 @@ +@@ -2119,6 +2129,20 @@ module_echo_cancel_la_CFLAGS += -DHAVE_W module_echo_cancel_la_LIBADD += libwebrtc-util.la endif @@ -122,8 +121,8 @@ Index: pulseaudio/src/Makefile.am module_rtp_send_la_LDFLAGS = $(MODULE_LDFLAGS) Index: pulseaudio/src/modules/trust-store/module-trust-store.c =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ pulseaudio/src/modules/trust-store/module-trust-store.c 2015-11-30 16:41:04.603244932 +0100 +--- /dev/null ++++ pulseaudio/src/modules/trust-store/module-trust-store.c @@ -0,0 +1,228 @@ +/*** + This file is part of PulseAudio. @@ -355,8 +354,8 @@ Index: pulseaudio/src/modules/trust-store/module-trust-store.c +} Index: pulseaudio/src/modules/trust-store/truststore.cc =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ pulseaudio/src/modules/trust-store/truststore.cc 2015-11-30 16:38:47.000000000 +0100 +--- /dev/null ++++ pulseaudio/src/modules/trust-store/truststore.cc @@ -0,0 +1,74 @@ +#ifdef HAVE_CONFIG_H +#include <config.h> @@ -434,8 +433,8 @@ Index: pulseaudio/src/modules/trust-store/truststore.cc +} Index: pulseaudio/src/modules/trust-store/truststore.h =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ pulseaudio/src/modules/trust-store/truststore.h 2015-11-30 16:38:21.780316440 +0100 +--- /dev/null ++++ pulseaudio/src/modules/trust-store/truststore.h @@ -0,0 +1,41 @@ +/*** + This file is part of PulseAudio. @@ -478,35 +477,11 @@ Index: pulseaudio/src/modules/trust-store/truststore.h +#endif + +#endif -Index: pulseaudio/src/pulsecore/client.c -=================================================================== ---- pulseaudio.orig/src/pulsecore/client.c 2015-11-30 16:38:21.788316586 +0100 -+++ pulseaudio/src/pulsecore/client.c 2015-11-30 16:38:21.780316440 +0100 -@@ -60,7 +60,7 @@ - if (pa_hook_fire(&core->hooks[PA_CORE_HOOK_CLIENT_NEW], data) < 0) - return NULL; - -- c = pa_xnew(pa_client, 1); -+ c = pa_xnew0(pa_client, 1); - c->core = core; - c->proplist = pa_proplist_copy(data->proplist); - c->driver = pa_xstrdup(pa_path_get_filename(data->driver)); -@@ -69,10 +69,6 @@ - c->sink_inputs = pa_idxset_new(NULL, NULL); - c->source_outputs = pa_idxset_new(NULL, NULL); - -- c->userdata = NULL; -- c->kill = NULL; -- c->send_event = NULL; -- - pa_assert_se(pa_idxset_put(core->clients, c, &c->index) >= 0); - - pa_log_info("Created %u \"%s\"", c->index, pa_strnull(pa_proplist_gets(c->proplist, PA_PROP_APPLICATION_NAME))); Index: pulseaudio/src/pulsecore/client.h =================================================================== ---- pulseaudio.orig/src/pulsecore/client.h 2015-11-30 16:38:21.788316586 +0100 -+++ pulseaudio/src/pulsecore/client.h 2015-11-30 16:38:21.780316440 +0100 -@@ -27,6 +27,7 @@ +--- pulseaudio.orig/src/pulsecore/client.h ++++ pulseaudio/src/pulsecore/client.h +@@ -26,6 +26,7 @@ #include <pulse/proplist.h> #include <pulsecore/core.h> #include <pulsecore/module.h> @@ -514,7 +489,7 @@ Index: pulseaudio/src/pulsecore/client.h /* Every connection to the server should have a pa_client * attached. That way the user may generate a listing of all connected -@@ -36,6 +37,9 @@ +@@ -35,6 +36,9 @@ struct pa_client { uint32_t index; pa_core *core; @@ -526,9 +501,9 @@ Index: pulseaudio/src/pulsecore/client.h char *driver; Index: pulseaudio/src/pulsecore/creds.h =================================================================== ---- pulseaudio.orig/src/pulsecore/creds.h 2015-11-30 16:38:21.788316586 +0100 -+++ pulseaudio/src/pulsecore/creds.h 2015-11-30 16:38:21.780316440 +0100 -@@ -41,6 +41,7 @@ +--- pulseaudio.orig/src/pulsecore/creds.h ++++ pulseaudio/src/pulsecore/creds.h +@@ -41,6 +41,7 @@ typedef struct pa_cmsg_ancil_data pa_cms struct pa_creds { gid_t gid; uid_t uid; @@ -538,9 +513,9 @@ Index: pulseaudio/src/pulsecore/creds.h /* Struct for handling ancillary data, i e, extra data that can be sent together with a message Index: pulseaudio/src/pulsecore/iochannel.c =================================================================== ---- pulseaudio.orig/src/pulsecore/iochannel.c 2015-11-30 16:38:21.788316586 +0100 -+++ pulseaudio/src/pulsecore/iochannel.c 2015-11-30 16:38:21.780316440 +0100 -@@ -323,6 +323,7 @@ +--- pulseaudio.orig/src/pulsecore/iochannel.c ++++ pulseaudio/src/pulsecore/iochannel.c +@@ -323,6 +323,7 @@ ssize_t pa_iochannel_write_with_creds(pa u = (struct ucred*) CMSG_DATA(&cmsg.hdr); @@ -548,7 +523,7 @@ Index: pulseaudio/src/pulsecore/iochannel.c u->pid = getpid(); if (ucred) { u->uid = ucred->uid; -@@ -437,6 +438,7 @@ +@@ -437,6 +438,7 @@ ssize_t pa_iochannel_read_with_ancil_dat ancil_data->creds.gid = u.gid; ancil_data->creds.uid = u.uid; @@ -558,9 +533,9 @@ Index: pulseaudio/src/pulsecore/iochannel.c else if (cmh->cmsg_type == SCM_RIGHTS) { Index: pulseaudio/src/pulsecore/protocol-native.c =================================================================== ---- pulseaudio.orig/src/pulsecore/protocol-native.c 2015-11-30 16:38:21.788316586 +0100 -+++ pulseaudio/src/pulsecore/protocol-native.c 2015-11-30 16:38:21.784316513 +0100 -@@ -2814,6 +2814,13 @@ +--- pulseaudio.orig/src/pulsecore/protocol-native.c ++++ pulseaudio/src/pulsecore/protocol-native.c +@@ -2814,6 +2814,13 @@ static void command_auth(pa_pdispatch *p do_shm = false; #ifdef HAVE_CREDS @@ -574,7 +549,7 @@ Index: pulseaudio/src/pulsecore/protocol-native.c if (do_shm) { /* Only enable SHM if both sides are owned by the same * user. This is a security measure because otherwise data -@@ -5623,6 +5630,7 @@ +@@ -5623,6 +5630,7 @@ typedef struct pa_protocol_native_access } pa_protocol_native_access_data; static void check_access_finish_cb(pa_access_data *data, bool res) { @@ -582,7 +557,7 @@ Index: pulseaudio/src/pulsecore/protocol-native.c pa_protocol_native_access_data *d = (pa_protocol_native_access_data *) data; pa_native_connection *c = PA_NATIVE_CONNECTION(d->userdata); -@@ -5631,6 +5639,11 @@ +@@ -5631,6 +5639,11 @@ static void check_access_finish_cb(pa_ac goto finish; } @@ -596,9 +571,9 @@ Index: pulseaudio/src/pulsecore/protocol-native.c command_table[d->command](d->pd, d->command, d->tag, d->tc, d->userdata); Index: pulseaudio/src/tests/connect-stress.c =================================================================== ---- pulseaudio.orig/src/tests/connect-stress.c 2015-11-30 16:38:21.788316586 +0100 -+++ pulseaudio/src/tests/connect-stress.c 2015-11-30 16:38:21.784316513 +0100 -@@ -63,7 +63,7 @@ +--- pulseaudio.orig/src/tests/connect-stress.c ++++ pulseaudio/src/tests/connect-stress.c +@@ -63,7 +63,7 @@ static const pa_sample_spec sample_spec static void context_state_callback(pa_context *c, void *userdata); @@ -607,7 +582,7 @@ Index: pulseaudio/src/tests/connect-stress.c int ret; pa_mainloop_api *api; -@@ -201,7 +201,7 @@ +@@ -201,7 +201,7 @@ START_TEST (connect_stress_test) { streams[i] = NULL; for (i = 0; i < NTESTS; i++) { @@ -618,9 +593,9 @@ Index: pulseaudio/src/tests/connect-stress.c usleep(rand() % 500000); Index: pulseaudio/po/POTFILES.in =================================================================== ---- pulseaudio.orig/po/POTFILES.in 2015-11-30 16:38:21.788316586 +0100 -+++ pulseaudio/po/POTFILES.in 2015-11-30 16:38:21.784316513 +0100 -@@ -23,6 +23,7 @@ +--- pulseaudio.orig/po/POTFILES.in ++++ pulseaudio/po/POTFILES.in +@@ -23,6 +23,7 @@ src/modules/gconf/module-gconf.c src/modules/jack/module-jack-sink.c src/modules/jack/module-jack-source.c src/modules/macosx/module-coreaudio-device.c diff --git a/debian/patches/0410-Add-thread-to-activate-trust-store-interface.patch b/debian/patches/0410-Add-thread-to-activate-trust-store-interface.patch index b58bc08..311a0fe 100644 --- a/debian/patches/0410-Add-thread-to-activate-trust-store-interface.patch +++ b/debian/patches/0410-Add-thread-to-activate-trust-store-interface.patch @@ -20,7 +20,7 @@ Index: pulseaudio/src/modules/trust-store/module-trust-store.c #include <pulse/mainloop-api.h> #include "module-trust-store-symdef.h" -@@ -170,18 +171,6 @@ static pa_hook_result_t connect_record_h +@@ -173,18 +174,6 @@ static pa_hook_result_t connect_record_h return PA_HOOK_CANCEL; } @@ -39,7 +39,7 @@ Index: pulseaudio/src/modules/trust-store/module-trust-store.c int pa__init(pa_module *m) { struct userdata *u; pa_trust_store *ts = pa_trust_store_new(); -@@ -201,7 +190,6 @@ int pa__init(pa_module *m) { +@@ -204,7 +193,6 @@ int pa__init(pa_module *m) { pa_fdsem_get(u->fdsem), PA_IO_EVENT_INPUT, check_fdsem, u)); pa_fdsem_before_poll(u->fdsem); diff --git a/debian/patches/0417-increase-timeout-check-apparmor.patch b/debian/patches/0417-increase-timeout-check-apparmor.patch index f99a476..c48bede 100644 --- a/debian/patches/0417-increase-timeout-check-apparmor.patch +++ b/debian/patches/0417-increase-timeout-check-apparmor.patch @@ -1,7 +1,7 @@ Index: pulseaudio/src/modules/trust-store/module-trust-store.c =================================================================== ---- pulseaudio.orig/src/modules/trust-store/module-trust-store.c 2015-11-30 16:41:22.583564451 +0100 -+++ pulseaudio/src/modules/trust-store/module-trust-store.c 2015-11-30 16:43:09.701454805 +0100 +--- pulseaudio.orig/src/modules/trust-store/module-trust-store.c ++++ pulseaudio/src/modules/trust-store/module-trust-store.c @@ -31,6 +31,8 @@ #include <pulsecore/dynarray.h> #include <pulse/mainloop-api.h> @@ -11,7 +11,7 @@ Index: pulseaudio/src/modules/trust-store/module-trust-store.c #include "module-trust-store-symdef.h" PA_MODULE_AUTHOR("David Henningsson"); -@@ -77,9 +79,37 @@ +@@ -77,9 +79,37 @@ static struct per_client *per_client_new } pc = pa_xnew0(struct per_client, 1); @@ -52,7 +52,7 @@ Index: pulseaudio/src/modules/trust-store/module-trust-store.c pc->index = client_index; pc->uid = client->creds.uid; pc->pid = client->creds.pid; -@@ -103,13 +133,28 @@ +@@ -103,13 +133,28 @@ static void per_client_free_from_hashmap static void thread_func(void *data) { struct per_client *pc = data; @@ -89,9 +89,9 @@ Index: pulseaudio/src/modules/trust-store/module-trust-store.c Index: pulseaudio/src/Makefile.am =================================================================== ---- pulseaudio.orig/src/Makefile.am 2015-11-30 16:41:22.583564451 +0100 -+++ pulseaudio/src/Makefile.am 2015-11-30 16:41:22.579564380 +0100 -@@ -2133,7 +2133,7 @@ +--- pulseaudio.orig/src/Makefile.am ++++ pulseaudio/src/Makefile.am +@@ -2138,7 +2138,7 @@ libtruststore_util_la_LIBADD = libpulsec libtruststore_util_la_LDFLAGS = -avoid-version module_trust_store_la_SOURCES = modules/trust-store/module-trust-store.c diff --git a/debian/patches/series b/debian/patches/series index 0e2e707..0d57f62 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -7,10 +7,6 @@ 0022-inotify-wrapper-Quit-daemon-if-pid-file-is-removed.patch 0023-fixing_snd_mixer_poll_descriptors_count_when_zero.patch -# Patches cherrypicked from upstream -0101-conf-parser-add-support-for-.d-directories.patch -0102-client-conf-daemon-conf-enable-.d-directories.patch - # Ubuntu touch stuff 0202-dont-probe-ucm.patch 0203-card-Add-hook-before-profile-changes.patch -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-pulseaudio/pulseaudio.git _______________________________________________ pkg-pulseaudio-devel mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-pulseaudio-devel

