New since v3: - Doesn't crash 100% of the time. - Fixed port proplists in the native protocol's card info. - Added pa_proplist_key_valid() to the public API. - Changed pa_tagstruct_get_proplist() to allow NULL proplist. - Added port proplists to the native protocol's sink and source info. - Added support to pactl for printing port proplists. Tanu Kaskinen (9): conf-parser: Pass parser state in a struct instead of function parameters. conf-parser: Pass parser state in a struct also for parse callbacks. conf-parser: Add support for parsing property lists. alsa-mixer: Add support for defining port property lists in the path configuration files. native: Send the actual port proplists with card info. proplist: Change proplist_name_valid() to be public function pa_proplist_key_valid(). tagstruct: Allow NULL proplist with pa_tagstruct_get_proplist(). native: Add a proplist to the sink and source info. pactl: Print port properties with the "list" command. PROTOCOL | 10 +- configure.ac | 2 +- src/daemon/daemon-conf.c | 222 ++++---- src/map-file | 1 + src/modules/alsa/alsa-mixer.c | 594 ++++++++------------ src/modules/alsa/alsa-mixer.h | 1 + .../alsa/mixer/paths/analog-output.conf.common | 4 + src/modules/module-augment-properties.c | 62 +- src/modules/module-tunnel.c | 29 +- src/pulse/client-conf.c | 2 +- src/pulse/introspect.c | 64 ++- src/pulse/introspect.h | 2 + src/pulse/proplist.c | 28 +- src/pulse/proplist.h | 3 + src/pulsecore/conf-parser.c | 223 ++++---- src/pulsecore/conf-parser.h | 48 +- src/pulsecore/protocol-native.c | 8 +- src/pulsecore/tagstruct.c | 8 +- src/utils/pactl.c | 29 +- 19 files changed, 648 insertions(+), 692 deletions(-) -- 1.7.10