Merge branch 'shout_tls' of git://github.com/JakobOvrum/MPD
This commit is contained in:
commit
d1bdea8edb
2
NEWS
2
NEWS
|
@ -1,6 +1,8 @@
|
||||||
ver 0.21.5 (not yet released)
|
ver 0.21.5 (not yet released)
|
||||||
* tags
|
* tags
|
||||||
- ape: map "Album Artist"
|
- ape: map "Album Artist"
|
||||||
|
* output
|
||||||
|
- shout: add support for TLS
|
||||||
|
|
||||||
ver 0.21.4 (2019/01/04)
|
ver 0.21.4 (2019/01/04)
|
||||||
* database
|
* database
|
||||||
|
|
|
@ -974,6 +974,8 @@ You must set a format.
|
||||||
- Set the timeout for the shout connection in seconds. Defaults to 2 seconds.
|
- Set the timeout for the shout connection in seconds. Defaults to 2 seconds.
|
||||||
* - **protocol icecast2|icecast1|shoutcast**
|
* - **protocol icecast2|icecast1|shoutcast**
|
||||||
- Specifies the protocol that wil be used to connect to the server. The default is "icecast2".
|
- Specifies the protocol that wil be used to connect to the server. The default is "icecast2".
|
||||||
|
* - **tls disabled|auto|auto_no_plain|rfc2818|rfc2817**
|
||||||
|
- Specifies what kind of TLS to use. The default is "disabled" (no TLS).
|
||||||
* - **mount URI**
|
* - **mount URI**
|
||||||
- Mounts the :program:`MPD` stream in the specified URI.
|
- Mounts the :program:`MPD` stream in the specified URI.
|
||||||
* - **user USERNAME**
|
* - **user USERNAME**
|
||||||
|
|
|
@ -141,6 +141,25 @@ ShoutOutput::ShoutOutput(const ConfigBlock &block)
|
||||||
protocol = SHOUT_PROTOCOL_HTTP;
|
protocol = SHOUT_PROTOCOL_HTTP;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unsigned tls;
|
||||||
|
value = block.GetBlockValue("tls");
|
||||||
|
if (value != nullptr) {
|
||||||
|
if (0 == strcmp(value, "disabled"))
|
||||||
|
tls = SHOUT_TLS_DISABLED;
|
||||||
|
else if(0 == strcmp(value, "auto"))
|
||||||
|
tls = SHOUT_TLS_AUTO;
|
||||||
|
else if(0 == strcmp(value, "auto_no_plain"))
|
||||||
|
tls = SHOUT_TLS_AUTO_NO_PLAIN;
|
||||||
|
else if(0 == strcmp(value, "rfc2818"))
|
||||||
|
tls = SHOUT_TLS_RFC2818;
|
||||||
|
else if(0 == strcmp(value, "rfc2817"))
|
||||||
|
tls = SHOUT_TLS_RFC2817;
|
||||||
|
else
|
||||||
|
throw FormatRuntimeError("invalid shout TLS option \"%s\"", value);
|
||||||
|
} else {
|
||||||
|
tls = SHOUT_TLS_DISABLED;
|
||||||
|
}
|
||||||
|
|
||||||
if (shout_set_host(shout_conn, host) != SHOUTERR_SUCCESS ||
|
if (shout_set_host(shout_conn, host) != SHOUTERR_SUCCESS ||
|
||||||
shout_set_port(shout_conn, port) != SHOUTERR_SUCCESS ||
|
shout_set_port(shout_conn, port) != SHOUTERR_SUCCESS ||
|
||||||
shout_set_password(shout_conn, passwd) != SHOUTERR_SUCCESS ||
|
shout_set_password(shout_conn, passwd) != SHOUTERR_SUCCESS ||
|
||||||
|
@ -151,6 +170,7 @@ ShoutOutput::ShoutOutput(const ConfigBlock &block)
|
||||||
shout_set_format(shout_conn, shout_format)
|
shout_set_format(shout_conn, shout_format)
|
||||||
!= SHOUTERR_SUCCESS ||
|
!= SHOUTERR_SUCCESS ||
|
||||||
shout_set_protocol(shout_conn, protocol) != SHOUTERR_SUCCESS ||
|
shout_set_protocol(shout_conn, protocol) != SHOUTERR_SUCCESS ||
|
||||||
|
shout_set_tls(shout_conn, tls) != SHOUTERR_SUCCESS ||
|
||||||
shout_set_agent(shout_conn, "MPD") != SHOUTERR_SUCCESS)
|
shout_set_agent(shout_conn, "MPD") != SHOUTERR_SUCCESS)
|
||||||
throw std::runtime_error(shout_get_error(shout_conn));
|
throw std::runtime_error(shout_get_error(shout_conn));
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue