Icecast-Server issueshttps://gitlab.xiph.org/xiph/icecast-server/-/issues2022-04-12T11:55:18Zhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2436Icecast2 server poll infinitly2022-04-12T11:55:18ZDorianNicolasIcecast2 server poll infinitlyHello,
I tried to start a icecast2 server with the command
`icecast2 -c test.xml`
Where test.xml is an unmodified configuration file of icecast2.
Here my logs when i start the command :
```
[2022-04-12 11:34:35] WARN CONFIG/_parse...Hello,
I tried to start a icecast2 server with the command
`icecast2 -c test.xml`
Where test.xml is an unmodified configuration file of icecast2.
Here my logs when i start the command :
```
[2022-04-12 11:34:35] WARN CONFIG/_parse_root Warning, <hostname> not configured, using default value "localhost". This will cause problems, e.g. with YP directory listings.
[2022-04-12 11:34:35] WARN CONFIG/_parse_root Warning, <location> not configured, using default value "Earth".
[2022-04-12 11:34:35] WARN CONFIG/_parse_root Warning, <admin> contact not configured, using default value "icemaster@localhost".
```
Only warnings and nothing happens. I can access the icecast2 page (localhost:3000), I can access admin page with logs and it works. But no mountpoint are printed even if I modified the list. The list is empty.
So I looked why the icecast2 server doesn't load mountpoints. And i found this with strace command :
```
read(7, "\2\232\337wPP|spA`\226\275'Z\20\33m\337\2XkW\352~\255\5\30$\232\360D"..., 52) = 52
close(7) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2960, ...}) = 0
write(5, "[2022-04-12 11:33:01] INFO conn"..., 101) = 101
poll([{fd=4, events=POLLIN}], 1, 300) = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 300) = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 300) = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 300) = 0 (Timeout)
```
And nothing more, except this infinite message like if it were waiting something. I'm working on WSL2 (Ubuntu) on Windows. I tried on Windows the same steps in the same way but I have exactly the same for both, so I don't think the problem comes from Windows or WSL. Moreover, I can access to the Icecast2 link server and I can connect to the admin panel, but it doesn't load my mountpoints.
Any help would be appreciate,
Thankshttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2435URL Auth does not post good port2022-04-07T17:32:54ZRa LawaURL Auth does not post good portHi,
URL Auth always posts the first listen-socket port configured in icecast.xml. When both http (port 80) and https (port 443) are enabled, url auth always send port=80 in the post request.
I think, it should send port=80 when the cli...Hi,
URL Auth always posts the first listen-socket port configured in icecast.xml. When both http (port 80) and https (port 443) are enabled, url auth always send port=80 in the post request.
I think, it should send port=80 when the client uses an http request and 443 when it uses an https request.
For url redirection, this would help to produce an url which depends on method used by the client. Redirection to an https url when client uses an https url and http otherwise.
Currently I use an other method to know which method is used. I patched url_add_client to send also tlsmode to the post request.Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2434Error GPG key sign for repository (update needed on icecast.org)2022-04-12T12:00:45ZNicolas DerambureError GPG key sign for repository (update needed on icecast.org)Hello,
I've installed the icecast2 package from the opensuse repository some weeks ago doing this :
`sh -c "echo deb http://download.opensuse.org/repositories/multimedia:/xiph/Debian_10/ ./ >>/etc/apt/sources.list.d/icecast.list"`
and...Hello,
I've installed the icecast2 package from the opensuse repository some weeks ago doing this :
`sh -c "echo deb http://download.opensuse.org/repositories/multimedia:/xiph/Debian_10/ ./ >>/etc/apt/sources.list.d/icecast.list"`
and :
`wget -qO - http://icecast.org/multimedia-obs.key | sudo apt-key add -`
Then I gave more weight to the package from opensuse repository using APT pinning in order to download from opensuse and not from debian official repositories.
But today, doing apt update, I get this error :
`W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://download.opensuse.org/repositories/multimedia:/xiph/Debian_10 ./ InRelease: The following signatures were invalid: EXPKEYSIG 77EC2301F23C6AA3 multimedia OBS Project <multimedia@build.opensuse.org>
W: Failed to fetch http://download.opensuse.org/repositories/multimedia:/xiph/Debian_10/./InRelease The following signatures were invalid: EXPKEYSIG 77EC2301F23C6AA3 multimedia OBS Project <multimedia@build.opensuse.org>`
It seems the key is not signing correctly the repository now.
I've done again the command :
`wget -qO - http://icecast.org/multimedia-obs.key | sudo apt-key add -`, but the error still persists.
Any change on your side ?
Side question : do you plan to make an icecast package for Debian 11 too ? We need to keep an old server on Debian 10 only for Icecast, and we'll be enchanted to switch it off ;)
Thx !https://gitlab.xiph.org/xiph/icecast-server/-/issues/2433Icecast2.5 beta3 crash with FLAC relay2023-06-07T13:00:21ZSySERRIcecast2.5 beta3 crash with FLAC relayOne of Icecast2 servers is playing a stream in FLAC format in an OGG container. If I configure this as a relay on another Icecast2 2.5 beta3 server, it crashes immediately after Icecast2 2.5 beta3 startup.
The stream with the problem, wh...One of Icecast2 servers is playing a stream in FLAC format in an OGG container. If I configure this as a relay on another Icecast2 2.5 beta3 server, it crashes immediately after Icecast2 2.5 beta3 startup.
The stream with the problem, which plays without any problems.
The configuration for the relay is as follows:
```
<mount>
<mount-name>/oxygenmusic_flac</mount-name>
<relay>
<upstream type="normal">
<uri>http://oxygenmusic.hu:8000/oxygenmusic_flac</uri>
</upstream>
</relay>
</mount>
```
error.log:
```
[2022-03-20 08:46:24] INFO stats/_stats_thread stats thread started
[2022-03-20 08:46:24] INFO fserve/fserve_initialize file serving started
[2022-03-20 08:46:24] INFO main/main Icecast 2.4.99.3 server started
[2022-03-20 08:46:24] INFO main/main Server's PID is 13519
[2022-03-20 08:46:24] INFO main/__log_system_name Running on mscppro-dev; OS: Linux 4.9.0-15-amd64, mscppro-dev, #1 SMP Debian 4.9.258-1 (2021-03-08), x86_64; Address Bits: 64
[2022-03-20 08:46:24] INFO main/__log_system_name From configuration: Our hostname is "dev2.mscp.pro", located "MSCP", with admin contact "mscp@localhost"
[2022-03-20 08:46:24] DBUG yp/yp_recheck_config Updating YP configuration
[2022-03-20 08:46:24] INFO yp/yp_update_thread YP update thread started
[2022-03-20 08:46:24] INFO connection/get_tls_certificate No TLS capability on any configured ports
[2022-03-20 08:46:24] DBUG listensocket/listensocket_accept Client (sock=8, ip="::ffff:127.0.0.1") on socket 0x5556491a7fc0 (-).
[2022-03-20 08:46:24] DBUG client/client_create Client 0x5556491b7bc0 created on connection 0x5556491b7b40 (connection ID: 0, sock=8, socket real: 0x5556491a7fc0 (-), socket effective: 0x5556491a7fc0 (-); global: 1 of 2000)
[2022-03-20 08:46:24] DBUG listensocket/listensocket_accept Client (sock=9, ip="::ffff:127.0.0.1") on socket 0x5556491a7fc0 (-).
[2022-03-20 08:46:24] DBUG client/client_create Client 0x5556491b7ff0 created on connection 0x5556491b7f70 (connection ID: 1, sock=9, socket real: 0x5556491a7fc0 (-), socket effective: 0x5556491a7fc0 (-); global: 2 of 2000)
[2022-03-20 08:46:24] DBUG client/client_destroy Called to destroy client 0x5556491b7bc0 on connection 0x5556491b7b40 (connection ID: 0, sock=8)
[2022-03-20 08:46:24] DBUG connection/connection_close Closing connection 0x5556491b7b40 (connection ID: 0, sock=8)
[2022-03-20 08:46:24] DBUG client/client_destroy Called to destroy client 0x5556491b7ff0 on connection 0x5556491b7f70 (connection ID: 1, sock=9)
[2022-03-20 08:46:24] DBUG connection/connection_close Closing connection 0x5556491b7f70 (connection ID: 1, sock=9)
[2022-03-20 08:46:25] DBUG stats/modify_node_event update global clients (1)
[2022-03-20 08:46:25] DBUG stats/modify_node_event update global connections (1)
[2022-03-20 08:46:25] DBUG stats/modify_node_event update global clients (2)
[2022-03-20 08:46:25] DBUG stats/modify_node_event update global connections (2)
[2022-03-20 08:46:25] DBUG stats/modify_node_event update global clients (1)
[2022-03-20 08:46:25] DBUG stats/modify_node_event update global clients (0)
[2022-03-20 08:46:25] DBUG slave/_slave_thread checking master stream list
[2022-03-20 08:46:25] DBUG slave/check_relay_stream Adding relay source at mountpoint "/oxygenmusic_flac"
[2022-03-20 08:46:25] INFO slave/start_relay_stream Starting relayed source at mountpoint "/oxygenmusic_flac"
[2022-03-20 08:46:25] DBUG slave/start_relay_stream For relay on mount "/oxygenmusic_flac", trying upstream #0
[2022-03-20 08:46:25] INFO slave/open_relay_connection connecting to oxygenmusic.hu:8000
[2022-03-20 08:46:25] DBUG client/client_create Client 0x7fac880015b0 created on connection 0x7fac88001340 (connection ID: 2, sock=8, socket real: (nil) (-), socket effective: (nil) (-); global: 1 of 2000)
[2022-03-20 08:46:25] DBUG client/client_complete Client 0x7fac880015b0 has request_body_length=-1
[2022-03-20 08:46:25] DBUG connection/connection_complete_source sources count is 0
[2022-03-20 08:46:25] DBUG source/source_apply_mount Applying mount information for "/oxygenmusic_flac"
[2022-03-20 08:46:25] DBUG source/source_apply_mount YP changed to 1
[2022-03-20 08:46:25] DBUG source/source_update_settings public set to 1
[2022-03-20 08:46:25] DBUG source/source_update_settings max listeners to -1
[2022-03-20 08:46:25] DBUG source/source_update_settings queue size to 524288
[2022-03-20 08:46:25] DBUG source/source_update_settings burst size to 196608
[2022-03-20 08:46:25] DBUG source/source_update_settings source timeout to 2
[2022-03-20 08:46:25] DBUG source/source_update_settings fallback_when_full to 0
[2022-03-20 08:46:25] DBUG connection/connection_complete_source source is ready to start
[2022-03-20 08:46:25] DBUG source/source_init Source creation complete
[2022-03-20 08:46:25] DBUG format-vorbis/initial_vorbis_page checking for vorbis codec
[2022-03-20 08:46:25] DBUG format-theora/initial_theora_page checking for theora codec
[2022-03-20 08:46:25] DBUG format-midi/initial_midi_page checking for MIDI codec
[2022-03-20 08:46:25] DBUG format-flac/initial_flac_page checking for FLAC codec
[2022-03-20 08:46:25] INFO format-flac/initial_flac_page seen initial FLAC header
[2022-03-20 08:46:25] DBUG format-ogg/format_ogg_attach_header attaching BOS page
[2022-03-20 08:46:25] DBUG format-ogg/format_ogg_attach_header attaching header page
```Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/24322.4.99 beta 3 - OPENSSL - still support for TLS 1.0 and TLS 1.1 - compared t...2024-01-20T23:54:11ZTom Zet2.4.99 beta 3 - OPENSSL - still support for TLS 1.0 and TLS 1.1 - compared to 2.4.4The current **2.4.99 beta 3** still offers TLS 1.0 and TLS 1.1. The SSL test on https://www.ssllabs.com/ shows the following result
![Image_2022-03-18_at_11.28.01_PM](/uploads/dfa1d62d8672e72cf0bcb167575ddbff/Image_2022-03-18_at_11.28.01...The current **2.4.99 beta 3** still offers TLS 1.0 and TLS 1.1. The SSL test on https://www.ssllabs.com/ shows the following result
![Image_2022-03-18_at_11.28.01_PM](/uploads/dfa1d62d8672e72cf0bcb167575ddbff/Image_2022-03-18_at_11.28.01_PM.jpeg)
On a Debian sid System with `OpenSSL 1.1.1n 15 Mar 2022` the icecast has been compiled with `./configure --prefix=/home/zumbi/icecast-2.4.99-beta-3 --with-curl --with-openssl`
The following ciphers are configured in the xml. at the end I excluded `!TLSv1:!TLSv1.1`.Even if standard in openssl, this cyphers has not been ignored.
`<ssl-allowed-ciphers>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:!TLSv1:!TLSv1.1</ssl-allowed-ciphers>`
While on a productive Debian 11 with `OpenSSL 1.1.1k 25 Mar 2021` and **icecast 2.4.4** the test on https://www.ssllabs.com/ shows the following result
![Image_2022-03-18_at_11.30.33_PM](/uploads/43b55bf7d48f5dcda944f398c48200b5/Image_2022-03-18_at_11.30.33_PM.jpeg)
The following ciphers are configured in the xml
`<ssl-allowed-ciphers>ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256</ssl-allowed-ciphers>`
I tried to change the source code in the file `src/tls.c` on row 91 from `TLS1_VERSION` to `TLS1_3_VERSION` but get a compile error
**Original code**
```
#if OPENSSL_VERSION_NUMBER < 0x10100000L
ctx->ctx = SSL_CTX_new(SSLv23_server_method());
ssl_opts = SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3; // Disable SSLv2 and SSLv3
#else
ctx->ctx = SSL_CTX_new(TLS_server_method());
SSL_CTX_set_min_proto_version(ctx->ctx, TLS1_VERSION);
#endif
```
**Compile (make) error**
```
In file included from tls.c:18:
tls.c: In function ‘tls_ctx_new’:
tls.c:91:45: error: ‘TL1_3_VERSION’ undeclared (first use in this function); did you mean ‘TLS1_3_VERSION’?
91 | SSL_CTX_set_min_proto_version(ctx->ctx, TL1_3_VERSION);
^~~~~~~~~~~~
```
**Proposal**
1. Change the code this way, that TLS 1.0 and 1.1 (and older) are not offered anymore. Only offer TLS 1.2 and newer. Same way as in 2.4.4
and/or
2. Implement an option as used in advanced webservers like nginx, that the TLS version can be set in the config.
Example for nginx `ssl_protocols TLSv1.2 TLSv1.3;`. Even if the icecast developers move from openssl to another solution, such a option will be helpful and shows best practice.Icecast 2.5 rc1Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2431max listeners per one mountpoint2022-11-09T10:39:36ZCYBimax listeners per one mountpointHi, it looks like, there is limit for 20000 concurrent users per one mountpoint. Is that correct?
Thanks
Icecast 2.4.4Hi, it looks like, there is limit for 20000 concurrent users per one mountpoint. Is that correct?
Thanks
Icecast 2.4.4https://gitlab.xiph.org/xiph/icecast-server/-/issues/2430The Playlist does not display the time the song was played.2022-03-15T15:11:37ZPhilipp SchafftThe Playlist does not display the time the song was played.The playlist currently adheres XSPF fully, so there are no timestamps. However it might be useful. It may be added using extentions (likely using a `<meta>` element).
See also parent ticket #2428.The playlist currently adheres XSPF fully, so there are no timestamps. However it might be useful. It may be added using extentions (likely using a `<meta>` element).
See also parent ticket #2428.https://gitlab.xiph.org/xiph/icecast-server/-/issues/2429/admin/version.xsl is not installed2022-03-15T10:23:11ZPhilipp Schafft/admin/version.xsl is not installed`/admin/version.xsl` is not installed. (Missing in `nobase_dist_admin_DATA`.)`/admin/version.xsl` is not installed. (Missing in `nobase_dist_admin_DATA`.)Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2428issues Icecast version 2.5 beta32023-01-03T10:13:09ZMichelissues Icecast version 2.5 beta3Test on Debian 9
So far, the following issues / missing things:
- The Playlist does not display the time the song was played.
- Last song number cannot be set.
- It still does not display the song title in Opus and FLAC formats. (Tested...Test on Debian 9
So far, the following issues / missing things:
- The Playlist does not display the time the song was played.
- Last song number cannot be set.
- It still does not display the song title in Opus and FLAC formats. (Tested with MPD and RadioBOSS)
- /admin/version.xsl site: Could not parse XSLT file, Error code: f86b5b28-c1f8-49f6-a4cd-a18e2a6a44fd
- If the number of listeners reaches the number of allowed connections, then the admin page will display an error message, so it cannot be used either.https://gitlab.xiph.org/xiph/icecast-server/-/issues/2426Icecast fluttery audio2022-03-21T09:37:02ZcrunchysteveIcecast fluttery audiohttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2425Don't hardcode the pkg-config architecture, allowing crossbuilds2021-12-17T23:25:49ZUnit 193Don't hardcode the pkg-config architecture, allowing crossbuildsHowdy,
In Debian, there's a concerted effort to ensure crossbuilding works, the person that puts in the most effort on that submitted this patch:
```
Author: Helmut Grohne <helmutg@debian.org>
Description: FTCBFS: m4/shout.m4 hard code...Howdy,
In Debian, there's a concerted effort to ensure crossbuilding works, the person that puts in the most effort on that submitted this patch:
```
Author: Helmut Grohne <helmutg@debian.org>
Description: FTCBFS: m4/shout.m4 hard codes the build architecture pkg-config
ices2 fails to cross build from source, because it uses the build
architecture pkg-config. The cause is a bad macro in m4/shout.m4. After
fixing it, ices2 cross builds successfully. Please consider applying the
attached patch.
.
Note: I had to remove the setting of PKG_CONFIG_PATH, because Debian's
cross wrapper does not work when PKG_CONFIG_PATH is set. Anyway,
/usr/local/lib/pkgconfig is part of the default search path of
pkg-config, so that should not be a problem.
--- ices2-2.0.2.orig/m4/shout.m4
+++ ices2-2.0.2/m4/shout.m4
@@ -19,22 +19,18 @@
# NB: PKG_CHECK_MODULES exits if pkg-config is unavailable on the target
# system, so we can't use it.
-# seed pkg-config with the default libshout location
-PKG_CONFIG_PATH=${PKG_CONFIG_PATH:-/usr/local/lib/pkgconfig}
-export PKG_CONFIG_PATH
-
# Step 1: Use pkg-config if available
-AC_PATH_PROG([PKGCONFIG], [pkg-config], [no])
-if test "$PKGCONFIG" != "no" && `$PKGCONFIG --exists shout`
+PKG_PROG_PKG_CONFIG
+if test "x$PKG_CONFIG" != x && `$PKG_CONFIG --exists shout`
then
- SHOUT_CFLAGS=`$PKGCONFIG --variable=cflags_only shout`
- SHOUT_CPPFLAGS=`$PKGCONFIG --variable=cppflags shout`
- SHOUT_LIBS=`$PKGCONFIG --libs shout`
+ SHOUT_CFLAGS=`$PKG_CONFIG --variable=cflags_only shout`
+ SHOUT_CPPFLAGS=`$PKG_CONFIG --variable=cppflags shout`
+ SHOUT_LIBS=`$PKG_CONFIG --libs shout`
xt_have_shout="maybe"
else
- if test "$PKGCONFIG" != "no"
+ if test "x$PKG_CONFIG" != x
then
- AC_MSG_NOTICE([$PKGCONFIG couldn't find libshout. Try adjusting PKG_CONFIG_PATH.])
+ AC_MSG_NOTICE([$PKG_CONFIG couldn't find libshout. Try adjusting PKG_CONFIG_PATH.])
fi
# pkg-config unavailable, try shout-config
AC_PATH_PROG([SHOUTCONFIG], [shout-config], [no])
```
This technically applies to the m4 module, which is to have issues filed in icecast-server.
Thanks!Marvin ScholzMarvin Scholzhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2424WARN connection/get_ssl_certificate Invalid cert file /home/icecast/icecast.c...2021-12-03T20:32:49ZAlex SirroshWARN connection/get_ssl_certificate Invalid cert file /home/icecast/icecast.certkeyVersion: icecast-2.4.4-2.1.x86_64 (opensuse)
Cert issuer: LetsEncrypt
File icecast.certkey is world-readable and contains concatenated fullchain.pem and a private key.
P.S.: Found a somewhat related issue on [github](https://github.com...Version: icecast-2.4.4-2.1.x86_64 (opensuse)
Cert issuer: LetsEncrypt
File icecast.certkey is world-readable and contains concatenated fullchain.pem and a private key.
P.S.: Found a somewhat related issue on [github](https://github.com/AzuraCast/AzuraCast/issues/2692)https://gitlab.xiph.org/xiph/icecast-server/-/issues/2423Allow setting the charset globally, not only on per-mount basis2021-11-15T18:41:48ZVadim UshakovAllow setting the charset globally, not only on per-mount basisHi! In my setup, I use a script that manages the sources dynamically, creating, starting and stopping mount points by user request. The icecast config is static, and all the sources share the same login/password. So no need to declare mo...Hi! In my setup, I use a script that manages the sources dynamically, creating, starting and stopping mount points by user request. The icecast config is static, and all the sources share the same login/password. So no need to declare mount points in icecast.xml in that case.
Unfortunately, IceCast uses the charset ISO8859-1 by default, and the only way to override it is declare mount point for each single source and specify `<charset>UTF-8</charset>` for each. This is extremely inconvenient.
I tried the following simple patch and seems to work. It allows to set the charset at the upper level so it takes effect for every mount point that doesn't explicitly override the value. If no charset is set at all, the default ISO8859-1 is used as the last resort.
Could you please merge it?
[global-charset.diff](/uploads/a1b7d890b0ea73d1d12fdf19b7b58209/global-charset.diff)https://gitlab.xiph.org/xiph/icecast-server/-/issues/2422Programmatically set the fallback-override value2021-10-31T22:11:44Zisaac-codeProgrammatically set the fallback-override valueAs advised Mr Philip, I am creating this issue.
I have been able to programmatically create a mountpoint and also update the fallback mount on the new online radio I am building.
But after the stream stops the mount switches to the fall...As advised Mr Philip, I am creating this issue.
I have been able to programmatically create a mountpoint and also update the fallback mount on the new online radio I am building.
But after the stream stops the mount switches to the fallback, but immediately the mountpoint is back, I cannot programmatically switch back to the mountpoint
Switching back to the former mountpoint is only possible when the fallback-override value is set to 1, but I cannot achieve that because there is no way to programmatically achieve that, which is weird.
P.S. I want users to create mountpoints via an exposed endpoint, so I don't create it manually inside the icecase.xml filehttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2421admin/includes/confirm.xsl missing -> Confirmation in admin webGUI cannot be ...2021-10-26T10:06:39ZThomas Schlienadmin/includes/confirm.xsl missing -> Confirmation in admin webGUI cannot be doneHi.
When installing with `./autogen.sh && ./configure && make -j5 install` the file admin/includes/confirm.xsl is missing and therefore, if a confirmation is needed in the admin webGUI, it cannot be done.
I fixed this by adding `includ...Hi.
When installing with `./autogen.sh && ./configure && make -j5 install` the file admin/includes/confirm.xsl is missing and therefore, if a confirmation is needed in the admin webGUI, it cannot be done.
I fixed this by adding `includes/confirm.xsl` in the `nobase_dist_admin_DATA` part of https://gitlab.xiph.org/xiph/icecast-server/-/blob/master/admin/Makefile.am.
Is there a proper way to do merge requests for this project? If I try to clone the repo in this Gitlab I only get the error that I do not have the rights to do that.Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2420Cannot connect to icecast-radio on external sources (winamp), browser-based c...2021-10-31T13:29:41Zsuper sleepyCannot connect to icecast-radio on external sources (winamp), browser-based connection works fineI'm at my wits' end, here. I've tried listening from a different proxy, assuming that there's something wrong with my connection - anyway.
The source audio is [here](https://play.squid-radio.net/clouds). I get an access denied notifica...I'm at my wits' end, here. I've tried listening from a different proxy, assuming that there's something wrong with my connection - anyway.
The source audio is [here](https://play.squid-radio.net/clouds). I get an access denied notification - at best! - from winamp, or at worst it just rapidly tries to connect and fails without displaying any messages. Listening through the browser is a pretty strain on my memory, I want to see if this is an icecast issue, or if there's *any* ideas you might on what could be causing this. Any advice, and I do mean any advice, would be appreciated!https://gitlab.xiph.org/xiph/icecast-server/-/issues/2419"listenurl" protocol does not match protocol used to request /status-json.xsl2023-09-01T17:53:06ZHenry van Megen"listenurl" protocol does not match protocol used to request /status-json.xslIt's probably because I'm doing something completely stupid, but when I request my /status-json.xsl over https, I see 'http' in the listenurl which I can't seem to change to https instead. This is causing me all kinds of issues with unse...It's probably because I'm doing something completely stupid, but when I request my /status-json.xsl over https, I see 'http' in the listenurl which I can't seem to change to https instead. This is causing me all kinds of issues with unsecure content, CORSS stuff and other nightmares when trying to build something that can actually read this feed.
Content of: https://domain.tld:8000/status-json.xsl (actual values replaced)
```
{
"icestats": {
"admin": "email@domain.tld",
"host": "domain.tld",
"location": "location",
"server_id": "Icecast 2.4.4",
"server_start": "Mon, 09 Aug 2021 17:00:00 +0200",
"server_start_iso8601": "2021-08-09T17:00:00+0200",
"source": {
"audio_bitrate": 192000,
"audio_channels": 2,
"audio_info": "ice-bitrate=192;ice-channels=2;ice-samplerate=44100",
"audio_samplerate": 44100,
"genre": "(NULL)",
"ice-bitrate": 192,
"ice-channels": 2,
"ice-samplerate": 44100,
"listener_peak": 1,
"listeners": 1,
"listenurl": "http://domain.tld:8000/stream.ogg",
"server_description": "Description",
"server_name": "Server name",
"server_type": "audio/ogg",
"server_url": "(NULL)",
"stream_start": "Mon, 09 Aug 2021 17:01:00 +0200",
"stream_start_iso8601": "2021-08-09T17:01:00+0200",
"subtype": "Vorbis",
"dummy": null
}
}
}
```
This is my configuration file `/etc/icecast2/icecast2.xml` : (actual values replaced)
```
<icecast>
<location>location</location>
<admin>email@domain.tld</admin>
<limits>
<clients>1000</clients>
<sources>5</sources>
<queue-size>262144</queue-size>
<client-timeout>30</client-timeout>
<header-timeout>15</header-timeout>
<source-timeout>10</source-timeout>
<burst-on-connect>0</burst-on-connect>
<burst-size>4096</burst-size>
</limits>
<authentication>
<source-password>password</source-password>
<relay-password>password</relay-password>
<admin-user>user</admin-user>
<admin-password>password</admin-password>
</authentication>
<hostname>mydomain.tld</hostname>
<listen-socket>
<port>8000</port>
<ssl>1</ssl>
</listen-socket>
<listen-socket>
<port>8443</port>
<ssl>1</ssl>
</listen-socket>
<http-headers>
<header name="Access-Control-Allow-Origin" value="*" />
</http-headers>
<fileserve>1</fileserve>
<paths>
<basedir>/usr/share/icecast2</basedir>
<logdir>/var/log/icecast2</logdir>
<webroot>/usr/share/icecast2/web</webroot>
<adminroot>/usr/share/icecast2/admin</adminroot>
<pidfile>/usr/share/icecast2/icecast.pid</pidfile>
<alias source="/" destination="/"/>
<ssl-certificate>/usr/share/icecast2/letsencrypt-domain-tld-icecast.pem</ssl-certificate>
</paths>
<logging>
<accesslog>access.log</accesslog>
<errorlog>error.log</errorlog>
<playlistlog>playlist.log</playlistlog>
<loglevel>3</loglevel>
<logsize>100000</logsize>
<logarchive>1</logarchive>
</logging>
<security>
<chroot>1</chroot>
<changeowner>
<user>icecast2</user>
<group>icecast2</group>
</changeowner>
</security>
</icecast>
```
is there a way of fixing this by changing something in the configuration, or do I have to parse the json by some external script, fix the replace the protocol itself and then serve the changed version it to my webpage? I would love to just use the content of the json and have it be correct insteadhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2418Linking fails with "multiple definition of `global_client_list'"2021-10-26T00:32:54ZThomas SchlienLinking fails with "multiple definition of `global_client_list'"Hi,
the linking, at least on Ubuntu 21.04 and Alpine Linux (docker latest), fails with:
```
CCLD icecast
/usr/bin/ld: icecast-logging.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_li...Hi,
the linking, at least on Ubuntu 21.04 and Alpine Linux (docker latest), fails with:
```
CCLD icecast
/usr/bin/ld: icecast-logging.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-sighandler.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-connection.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-global.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-util.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-slave.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-source.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-stats.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-client.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-xslt.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-fserve.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-admin.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-format.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-format_ogg.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-format_mp3.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-format_midi.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-format_flac.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-format_ebml.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-format_kate.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-format_skeleton.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-format_opus.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-event.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-event_exec.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-auth.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-auth_htpasswd.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-auth_anonymous.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-auth_static.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-auth_enforce_auth.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-auth_url.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-yp.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
/usr/bin/ld: icecast-format_vorbis.o:/home/schlien/devel/icecast-server/src/client.h:146: multiple definition of `global_client_list'; icecast-main.o:/home/schlien/devel/icecast-server/src/client.h:146: first defined here
collect2: error: ld returned 1 exit status
```
I used `./autogen.sh && ./configure && make -j5 install` to compile.
If I can provide any more information, please let me know.
Best regards,
Thomashttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2417After working days without problem Icecast 2.4.4 not trying to update relays ...2022-02-19T09:59:17ZdanielsoheilAfter working days without problem Icecast 2.4.4 not trying to update relays from master serverthis my icecast.xml config:
```
<icecast>
<location>Iran</location>
<admin>info@myts3.ir</admin>
<limits>
<clients>50000</clients>
<sources>1000</sources>
<queue-size>307200</queue-size>
<...this my icecast.xml config:
```
<icecast>
<location>Iran</location>
<admin>info@myts3.ir</admin>
<limits>
<clients>50000</clients>
<sources>1000</sources>
<queue-size>307200</queue-size>
<client-timeout>30</client-timeout>
<header-timeout>600</header-timeout>
<source-timeout>600</source-timeout>
<burst-on-connect>1</burst-on-connect>
<burst-size>196608</burst-size>
</limits>
<authentication>
<source-password>removed</source-password>
<relay-password>removed</relay-password>
<admin-user>admin</admin-user>
<admin-password>removed</admin-password>
</authentication>
<hostname>radio.myts3.ir</hostname>
<listen-socket>
<port>18000</port>
</listen-socket>
<http-headers>
<header name="Access-Control-Allow-Origin" value="*" />
</http-headers>
<master-server>192.168.100.53</master-server>
<master-server-port>8000</master-server-port>
<master-update-interval>30</master-update-interval>
<master-password>removed</master-password>
<relays-on-demand>0</relays-on-demand>
<fileserve>1</fileserve>
<paths>
<basedir>/usr/share/icecast</basedir>
<logdir>/var/log/icecast</logdir>
<webroot>/usr/share/icecast/web</webroot>
<adminroot>/usr/share/icecast/admin</adminroot>
<alias source="/" destination="/status-json.xsl"/>
</paths>
<logging>
<accesslog>access.log</accesslog>
<errorlog>error.log</errorlog>
<loglevel>4</loglevel>
<logsize>100000</logsize>
</logging>
<security>
<chroot>0</chroot>
</security>
</icecast>
```
i have logs too, its 66mB i can't send it here.https://gitlab.xiph.org/xiph/icecast-server/-/issues/2416Is there a default listener-max-duration?2022-03-21T09:27:28ZcinderblockgamesIs there a default listener-max-duration?- Is there a default listener-max-duration?
- If so, is there a way to set it to infinite?
- If not, what is the maximum value supported?- Is there a default listener-max-duration?
- If so, is there a way to set it to infinite?
- If not, what is the maximum value supported?