From dbb71e66b7905078d6847ca645097c9e266503a2 Mon Sep 17 00:00:00 2001 From: Mike Brady Date: Mon, 30 Jan 2017 08:29:06 +0000 Subject: [PATCH 1/4] Add support for mbed TLS --- RELEASENOTES.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/RELEASENOTES.md b/RELEASENOTES.md index c7a77210..e21a17b3 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -1,3 +1,7 @@ +Version 3.0d17 – Development Version +---- +Add support for mbed TLS and deprecate the use of PolarSSL, as mbed TLS is a development of PolarSSL and PolarSSL itself is not being supported. + Version 3.0d16 – Development Version ---- From f55b1357ba422a4b3b856b9bbf3219ef0dc4de01 Mon Sep 17 00:00:00 2001 From: Mike Brady Date: Mon, 30 Jan 2017 08:30:31 +0000 Subject: [PATCH 2/4] Update RELEASENOTES.md --- RELEASENOTES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASENOTES.md b/RELEASENOTES.md index e21a17b3..733233db 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -1,6 +1,6 @@ Version 3.0d17 – Development Version ---- -Add support for mbed TLS and deprecate the use of PolarSSL, as mbed TLS is a development of PolarSSL and PolarSSL itself is not being supported. +Add support for `mbed TLS` and deprecate the use of `PolarSSL`, as `mbed TLS` is a development of `PolarSSL` and `PolarSSL` itself is not being developed further. Version 3.0d16 – Development Version ---- From fbf9757bc53a280fe9b6d76cbc097931f96d26c8 Mon Sep 17 00:00:00 2001 From: Mike Brady Date: Mon, 30 Jan 2017 17:01:23 +0000 Subject: [PATCH 3/4] Update RELEASENOTES.md --- RELEASENOTES.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 733233db..6959bb50 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -1,9 +1,5 @@ Version 3.0d17 – Development Version ---- -Add support for `mbed TLS` and deprecate the use of `PolarSSL`, as `mbed TLS` is a development of `PolarSSL` and `PolarSSL` itself is not being developed further. - -Version 3.0d16 – Development Version ----- Big Update ==== @@ -17,6 +13,8 @@ The most obvious audible change is if you are using software volume control and * 44,100, 88,200, 176,400 and 352,800 sample per second output. This is done using simple upsampling. * Internal processing including software volume control and interpolation is done after sample size and rate conversion. * Apple ALAC decoder support. This needs the `libalac` library, available at [ALAC](https://github.com/mikebrady/alac). Add the flag `--with-apple-alac` to the `./configure` arguments. Then you can choose the Apple ALAC decoder in the configuration file. +* Support for `mbed TLS` has been added and the use of `PolarSSL` is deprecated, as `mbed TLS` is a development of `PolarSSL` and `PolarSSL` itself is not being developed further. + Pesky Changes You Cannot Ignore ==== From a1001bf7f4a10b2a68ca141a189079a7fab15df2 Mon Sep 17 00:00:00 2001 From: Mike Brady Date: Mon, 30 Jan 2017 17:08:20 +0000 Subject: [PATCH 4/4] Use mbed TLS instead of PolarSSL --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index a66719a3..7af4279c 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,7 @@ The following procedures will install the shairport-sync application into your s To build Shairport Sync from sources on Debian, Ubuntu, Raspbian, etc. follow these instructions. The following libraries are required: -* OpenSSL or PolarSSL +* OpenSSL or mbed TLS (PolarSSL is supported but deprecated) * Avahi * ALSA * libdaemon @@ -73,15 +73,15 @@ The following libraries are required: Optional: * libsoxr -Many Linux distributions have Avahi and OpenSSL already in place, so normally it probably makes sense to choose those options rather than tinysvcmdns or PolarSSL. Libsoxr is available in recent Linux distributions, but it requires lots of processor power — chances are an embedded processor won't be able to keep up. +Many Linux distributions have Avahi and OpenSSL already in place, so normally it probably makes sense to choose those options rather than tinysvcmdns or mbed TLS. The `libsoxr` library is available in recent Linux distributions, but it requires lots of processor power — chances are an embedded processor won't be able to keep up. Debian, Ubuntu and Raspbian users can get the basics with: - `apt-get install build-essential git xmltoman` – these may already be installed. - `apt-get install autoconf automake libtool libdaemon-dev libasound2-dev libpopt-dev libconfig-dev` - `apt-get install avahi-daemon libavahi-client-dev` if you want to use Avahi (recommended). -- `apt-get install libssl-dev` if you want to use OpenSSL and libcrypto, or use PolarSSL otherwise. -- `apt-get install libpolarssl-dev` if you want to use PolarSSL, or use OpenSSL/libcrypto otherwise. +- `apt-get install libssl-dev` if you want to use OpenSSL and libcrypto, or use mbed TLS otherwise. +- `apt-get install libmbedtls-dev` if you want to use mbed TLS, or use OpenSSL/libcrypto otherwise. (You can still use PolarSSL with `apt-get install libpolarssl-dev` if you want to use PolarSSL, but it is deprecated as it's not longer being supported. It is suggested you use mbed TLS instead.) - `apt-get install libsoxr-dev` if you want support for libsoxr-based resampling. This library is in many recent distributions, including Jessie and Raspbian Jessie; if not, instructions for how to build it from source for Rasbpian/Debian Wheezy are available at [LIBSOXR.md](https://github.com/mikebrady/shairport-sync/blob/development/LIBSOXR.md). **Download Shairport Sync:** @@ -102,7 +102,7 @@ $ autoreconf -i -f - `--with-stdout` include an optional backend module to enable raw audio to be output through standard output (stdout). - `--with-pipe` include an optional backend module to enable raw audio to be output through a unix pipe. - `--with-avahi` or `--with-tinysvcmdns` for mdns support. Avahi is a widely-used system-wide zero-configuration networking (zeroconf) service — it may already be in your system. If you don't have Avahi, or similar, then consider including tinysvcmdns, which is a tiny zeroconf service embedded inside the shairport-sync application itself. To enable multicast for `tinysvcmdns`, you may have to add a default route with the following command: `route add -net 224.0.0.0 netmask 224.0.0.0 eth0` (substitute the correct network port for `eth0`). You should not have more than one zeroconf service on the same system — bad things may happen, according to RFC 6762, §15. -- `--with-ssl=openssl` or `--with-ssl=polarssl` for encryption and related utilities using either OpenSSL or PolarSSL. +- `--with-ssl=openssl`, `--with-ssl=mbedtls` or `--with-ssl=polarssl` (deprecated) for encryption and related utilities using either OpenSSL, mbed TLS or PolarSSL. - `--with-soxr` for libsoxr-based resampling. - `--with-piddir` for specifying where the PID file should be stored. This directory is normally chosen automatically. The directory must be writable. If you use this option, you may have to edit the init script to search for the PID file in your new location. - `--with-metadata` to add support for Shairport Sync to pipe metadata to a compatible application of your choice. See https://github.com/mikebrady/shairport-sync-metadata-reader for a sample metadata reader.