Skip to content

Enhancements and Minor Bug Fixes

Latest
Compare
Choose a tag to compare
@mikebrady mikebrady released this 29 May 14:22

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 the make install step.
    Thanks to Klemens Nanni.

Bug Fixes

  • Use pthread_rwlock_wrlock instead of pthread_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, permit fork(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 the ao lib.
  • Remove some almost-never-used and therefore untested code, and remove a potentially misleading comment from the ALSA backend.
  • Look for DACP-ID and Active-Remote in the GET /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 at make install. Thanks to Zane van Iperen.
  • Add a configuration option --without-create-user-group to optionally disable the creation of the shairport-sync user and group during a make 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 use dhcpcd. 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 extra CFLAG settings to configure.ac for libconfig, libpopt, openssl and libcrypto to enable compilation on macOS without extra flag settings.