diff --git a/Makefile.am b/Makefile.am
index 3ced4f8..f639f7f 100644
--- a/Makefile.am
+++ b/Makefile.am
doc/org.bluez.obex.Image.5
endif
manual_pages += src/bluetoothd.8
-manual_pages += doct/hci.7 doc/l2cap.7 doc/rfcomm.7
+manual_pages += doc/hci.7 doc/l2cap.7 doc/rfcomm.7
manual_pages += doc/org.bluez.Adapter.5 doc/org.bluez.Device.5 \
doc/org.bluez.DeviceSet.5 doc/org.bluez.AgentManager.5 \
doc/org.bluez.Agent.5 doc/org.bluez.ProfileManager.5 \
diff --git a/src/btd.h b/src/btd.h
index 147b61f..07205aa 100644
--- a/src/btd.h
+++ b/src/btd.h
struct btd_avrcp_opts {
bool volume_without_target;
+ bool volume_category;
};
struct btd_advmon_opts {
diff --git a/src/main.c b/src/main.c
index 5bd3a03..89ee689 100644
--- a/src/main.c
+++ b/src/main.c
static const char *avrcp_options[] = {
"VolumeWithoutTarget",
+ "VolumeCategory",
NULL
};
parse_config_bool(config, "AVRCP",
"VolumeWithoutTarget",
&btd_opts.avrcp.volume_without_target);
+ parse_config_bool(config, "AVRCP",
+ "VolumeCategory",
+ &btd_opts.avrcp.volume_category);
}
static void parse_advmon(GKeyFile *config)
btd_opts.avdtp.stream_mode = BT_IO_MODE_BASIC;
btd_opts.avrcp.volume_without_target = false;
+ btd_opts.avrcp.volume_category = true;
btd_opts.advmon.rssi_sampling_period = 0xFF;
btd_opts.csis.encrypt = true;
diff --git a/src/main.conf b/src/main.conf
index 5d206b9..fff13ed 100644
--- a/src/main.conf
+++ b/src/main.conf
# version is ignored.
#VolumeWithoutTarget = false
+# Validate that remote AVRCP profiles advertise the category-2 bit before
+# allowing SetAbsoluteVolume calls or registering for EVENT_VOLUME_CHANGED
+# notifications.
+#VolumeCategory = true
+
[Policy]
#
# The ReconnectUUIDs defines the set of remote services that should try