raop: Add fp_sap25 encryption type

Add support for FairPlay SAP v2.5 (encryption type 5) type devices such as Apple Home Pod Minis.

Apparently only these devices require the `POST /feedback` heartbeat, so fix that.
This commit is contained in:
Christian Glombek 2025-04-10 23:13:46 +02:00
parent 4c51e6518b
commit 9e3f9607a6
2 changed files with 13 additions and 6 deletions

View file

@ -71,7 +71,7 @@
* #raop.domain = ""
* #raop.device = ""
* #raop.transport = "udp" | "tcp"
* #raop.encryption.type = "RSA" | "auth_setup" | "none"
* #raop.encryption.type = "none" | "RSA" | "auth_setup" | "fp_sap25"
* #raop.audio.codec = "PCM" | "ALAC" | "AAC" | "AAC-ELD"
* #audio.channels = 2
* #audio.format = "S16" | "S24" | "S32"
@ -244,10 +244,12 @@ static void pw_properties_from_avahi_string(const char *key, const char *value,
* 3 = FairPlay,
* 4 = MFiSAP (/auth-setup),
* 5 = FairPlay SAPv2.5 */
if (str_in_list(value, ",", "1"))
value = "RSA";
if (str_in_list(value, ",", "5"))
value = "fp_sap25";
else if (str_in_list(value, ",", "4"))
value = "auth_setup";
else if (str_in_list(value, ",", "1"))
value = "RSA";
else
value = "none";
pw_properties_set(props, "raop.encryption.type", value);