Shairport Sync 4.3.3
This update contains enhancements and minor bug fixes and is recommended for all users.
Pesky Changes You Should Not Ignore
-
The
man
entry for Shairport Sync has moved from Section 7 (Miscellaneous information
) to where it should be: Section 1 (General commands (tools and utilities)
).For this reason, before running the
make install
step, please delete the file/usr/local/share/man/man7/shairport-sync.7
if it exists -- you will need superuser privileges.FYI, the
man
entry will now be placed at/usr/local/share/man/man1/shairport-sync.1
at themake install
step.
Thanks to Klemens Nanni.
Bug Fixes
- Use
pthread_rwlock_wrlock
instead ofpthread_rdlock_wrlock
when tearing down a connection. - Fix some OpenBSD-specific issues. Thanks to Klemens Nanni.
Enhancements
- Add support for the
mbedtls3
library. Thanks to orangepizza. - If a network interface is specified in the configuration file, limit addresses used for
PTP
to that network interface only. Thanks to Ryan Mounce. - Make Shairport Sync terminate if the configuration file exists but can not be opened. Thanks to Klemens Nanni.
- Start using the
pledge(2)
facilities to improve security in OpenBSD: limit the set of system calls Shairport Sync is allowed to make, most importantly, permitfork(2)
/execve(2)
if and only if user defined commands are run. Thanks to Klemens Nanni.
Docker Enhancements
- Set
S6_KEEP_ENV = 1
to enable the passing of environment variables from the docker compose file into the image. Thanks to HNKNTA.
Minor Enhancements
- Use
PKG_CHECK_MODULES
, if available, to find theao
lib. - Remove some almost-never-used and therefore untested code, and remove a potentially misleading comment from the ALSA backend.
- Look for
DACP-ID
andActive-Remote
in theGET /info
request, where it sometimes appears in an AirPlay 2 session originating from an Intel Mac. - Do not print the password in debug logs. Thanks to Klemens Nanni.
- If a string argument is a
NULL
in some debug messages, output the string(null)
. Thanks to Klemens Nanni. - Add a separate
install-config-files
Makefile
target to selectively enable or disable the installation of configuration files atmake install
. Thanks to Zane van Iperen. - Add a configuration option
--without-create-user-group
to optionally disable the creation of theshairport-sync
user and group during amake install
. This makes packaging easier for some systems, e.g. Yocto. Thanks to hvilleneuve29. - Implement the idea in Issue 1808 to make Fedora package-building easier. Thanks to Bill Peck.
Documentation Updates
- Update and streamline the CAR INSTALL guide, with updates for Bookworm, which uses
NetworkManager
and does not usedhcpcd
. Should also make updating easier. - General updates. Thanks to Ambrose Li and porg.
- Update MQTT documentation. Thanks to Craig Lockwood.
- Updates to documentation regarding OpenBSD. Thanks to Klemens Nanni.
Maintenance
- Update the Classic Mac workflow: use
macos-13
, add extraCFLAG
settings toconfigure.ac
forlibconfig
,libpopt
,openssl
andlibcrypto
to enable compilation on macOS without extra flag settings.