Xiph.Org issueshttps://gitlab.xiph.org/groups/xiph/-/issues2022-03-21T09:31:08Zhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2175Url auth with HTTPS on Win not working2022-03-21T09:31:08ZSebastianUrl auth with HTTPS on Win not workingHi guys,
i tried url auth yesterday with an https link on windows.
I get this error here:
```
[2015-03-12 16:55:20] WARN auth_url/auth_url.c auth to server https://www.domain.com/auth.php failed with Problem with the SSL CA cert (pat...Hi guys,
i tried url auth yesterday with an https link on windows.
I get this error here:
```
[2015-03-12 16:55:20] WARN auth_url/auth_url.c auth to server https://www.domain.com/auth.php failed with Problem with the SSL CA cert (path? access rights?)
```
With this configuration:
```
<mount type="normal">
<mount-name>/radio</mount-name>
<max-listeners>10</max-listeners>
<username>...</username>
<password>...</password>
<authentication type="url">
<option name="listener_add" value="http://www.domain.com/auth.php"/>
<option name="auth_header" value="icecast-auth-user: 1"/>
</authentication>
</mount>
```
I know that you have tried to make it run for windows. I just wanted to keep it tracked here.
Comments/ideas from tbr to that:
"it is working fine on linux. It might work on windows, but nobody figured out how to feed the CA path or file to the curl/nss combination."
"if someone figures out how OR if I switch to Fedora as the build distro, then it /might/ you're free to build on fedora, then it would link against an openssl curl and that might work, or not."
Thanks.
Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2334Icecast 2.5 Beta binaries for Windows (Request)2022-03-21T09:31:42ZRoger HågensenIcecast 2.5 Beta binaries for Windows (Request)The last binary for Windows was beta1 in 2015. Sure I could setup a build environment, but I doubt most Windows users of Icecast build their own Icecast server (myself included).
A windows binary was also desired by Rick Keniuk on the m...The last binary for Windows was beta1 in 2015. Sure I could setup a build environment, but I doubt most Windows users of Icecast build their own Icecast server (myself included).
A windows binary was also desired by Rick Keniuk on the mailing list.https://gitlab.xiph.org/xiph/icecast-server/-/issues/2073Turn on Forward Secrecy in openSSL support2022-03-21T09:33:34ZThomas B. RückerTurn on Forward Secrecy in openSSL supportThis would further improve security in case of HTTPS usage.
This will need a patch to configure the curve to be used.
cf.
http://vincent.bernat.im/en/blog/2011-ssl-perfect-forward-secrecy.html
https://github.com/bumptech/stud/pull/61/...This would further improve security in case of HTTPS usage.
This will need a patch to configure the curve to be used.
cf.
http://vincent.bernat.im/en/blog/2011-ssl-perfect-forward-secrecy.html
https://github.com/bumptech/stud/pull/61/filesIcecast 2.5.0Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2116Write FAQ on how to set <hostname> correctly2022-03-21T09:35:20ZPhilipp SchafftWrite FAQ on how to set <hostname> correctlyAs we introduced checks for <hostname> and may going to be more strict with this over time documentation needs to be updated.
- Check if documentation tells about setting this to an IP address anywhere. If so correct this.
- Write a sma...As we introduced checks for <hostname> and may going to be more strict with this over time documentation needs to be updated.
- Check if documentation tells about setting this to an IP address anywhere. If so correct this.
- Write a small FAQ on setting <hostname> correctly. This should be mostly for those who aren't familiar with the concept of hostnames.
Some ideas for the FAQ:
- Tell what a hostname, a FQDN is and how it is related and more importantly not related to IP addresses.
- Include a hint to use same domain as webpage.
- Include hint for falling back to whatever server hoster use a default hostname.Icecast 2.5.0Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2426Icecast fluttery audio2022-03-21T09:37:02ZcrunchysteveIcecast fluttery audiohttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2354Improve way of what URI is sent to YP2022-03-21T23:14:53ZPhilipp SchafftImprove way of what URI is sent to YPAt this point the URI sent to YP servers is based on the hostname and global port setting. However this does not work with TLS enabled and may not work for more complex setups with internal-/external-split (including different hostnames)...At this point the URI sent to YP servers is based on the hostname and global port setting. However this does not work with TLS enabled and may not work for more complex setups with internal-/external-split (including different hostnames).
An attribute to the `<directory>` tag should be added that takes the ID of a `<listen-socket>` on which behalf the YP submission should be made. That `<listen-socket>` may be `type="virtual"`.
See: #2171Marvin ScholzMarvin Scholzhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2173Max duration support for stream dumpfiles2022-03-22T17:48:23ZThomas B. RückerMax duration support for stream dumpfilesWe've received a request on this topic:
```
My suggestion is that the dump-file tag have an interval option or tag so
that it creates a new dump file based on this interval, and named based
on some sort of dump-file-name tag which wou...We've received a request on this topic:
```
My suggestion is that the dump-file tag have an interval option or tag so
that it creates a new dump file based on this interval, and named based
on some sort of dump-file-name tag which would use BASH naming variables
to name it.
```
http://lists.xiph.org/pipermail/icecast/2015-March/013209.html
Basically boils down to setting a duration and after that reopening the dump file. We already support strftime patterns in the file name.
I have received a patch for this against 2.3.2 and we'll evaluate if it can be reused or at least used as inspiration.
Optional related feature: dump files triggered / turned on/off through admin request.Philipp SchafftPhilipp Schaffthttps://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-libshout/-/issues/23242.4.5 not tagged2022-04-09T19:22:43ZBe Ing2.4.5 not taggedSource code for version 2.4.5 is available to download at http://downloads.xiph.org/releases/libshout and the release is listed in https://gitlab.xiph.org/xiph/icecast-libshout/-/blob/master/NEWS#L1 but there is no Git tag.Source code for version 2.4.5 is available to download at http://downloads.xiph.org/releases/libshout and the release is listed in https://gitlab.xiph.org/xiph/icecast-libshout/-/blob/master/NEWS#L1 but there is no Git tag.https://gitlab.xiph.org/xiph/icecast-libshout/-/issues/2330URL-escaping ?=& in the mountpoint prevents mountpoints with query strings2022-04-09T19:27:00ZNiko DittmannURL-escaping ?=& in the mountpoint prevents mountpoints with query strings#11b83da8 breaks connecting to mountpoints with a query string.
We are running a libshout compatible streaming server (at least we try ;) ) which uses a query string parameter to set a priority for a source client. This way a newly conn...#11b83da8 breaks connecting to mountpoints with a query string.
We are running a libshout compatible streaming server (at least we try ;) ) which uses a query string parameter to set a priority for a source client. This way a newly connecting source client can auto-kick an existing source client by providing a higher priority. I only now realized that by updating from my old libshout 2.3.1 on debian to 2.4.3 on ubuntu query string get now escaped:
```
SOURCE /m1?prio=3 HTTP/1.0 "ices/0.4 libshout/2.3.1"
SOURCE /m1%3fprio%3d3 HTTP/1.0 "ices/0.4 libshout/2.4.3"
```
I realize that the exact semantics of "mountpoints" aren't formaly specified (or are they?) but this completely broke my expectation of a mount point basically just being the path of a URL.
I opened an [issue on github](https://github.com/xiph/Icecast-libshout/issues/22) before I found the repo here. I'm gonna close over there and refer to this issue here.https://gitlab.xiph.org/xiph/icecast-libshout/-/issues/2331Add an option to disable tools2022-04-10T17:32:00ZFabrice FontaineAdd an option to disable toolsAs I'm unable to fork the project, please find attached a patch that allow the user to disable tools.
[0001-configure.ac-add-an-option-to-disable-tools.patch](/uploads/853966c2c49c76d002f218578e68c1a5/0001-configure.ac-add-an-option-to-...As I'm unable to fork the project, please find attached a patch that allow the user to disable tools.
[0001-configure.ac-add-an-option-to-disable-tools.patch](/uploads/853966c2c49c76d002f218578e68c1a5/0001-configure.ac-add-an-option-to-disable-tools.patch)Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-website/-/issues/2054Google+ no longer exists2022-04-10T20:56:07ZTerence EdenGoogle+ no longer existsThe link to https://plus.google.com/100957455777699991449/about is no longer useful since G+ shut down.
It should be removed from https://gitlab.xiph.org/search?utf8=%E2%9C%93&snippets=false&scope=&repository_ref=master&search=100957455...The link to https://plus.google.com/100957455777699991449/about is no longer useful since G+ shut down.
It should be removed from https://gitlab.xiph.org/search?utf8=%E2%9C%93&snippets=false&scope=&repository_ref=master&search=100957455777699991449&group_id=2&project_id=7https://gitlab.xiph.org/xiph/icecast-libshout/-/issues/2328libshout 2.4.5 mp3 song metadata not updating2022-04-12T11:02:02ZStephen Fairchildlibshout 2.4.5 mp3 song metadata not updatingCalls to shout_set_metadata() are not updating the song metadata on the connected Icecast server when libshout 2.4.5 is streaming in mp3 format. My testing indicates the issue is not present in libshout version 2.4.4.
[libshout_mp3_met...Calls to shout_set_metadata() are not updating the song metadata on the connected Icecast server when libshout 2.4.5 is streaming in mp3 format. My testing indicates the issue is not present in libshout version 2.4.4.
[libshout_mp3_metadata.c](/uploads/d163d9fcbb3757b333b1ac2bb5d999e6/libshout_mp3_metadata.c)https://gitlab.xiph.org/xiph/icecast-libshout/-/issues/2325No connection in nonblocking mode, retry shout_open() fails.2022-04-12T11:02:27ZDaniel SchürmannNo connection in nonblocking mode, retry shout_open() fails.Probably since 2.4.2 and https://gitlab.xiph.org/xiph/icecast-libshout/-/commit/032aa10d93553ede0bbfb1c2f094f9794f12da15
shout_open() returns SHOUTERR_RETRY instead retry until timeout in
https://gitlab.xiph.org/xiph/icecast-libshout/-/...Probably since 2.4.2 and https://gitlab.xiph.org/xiph/icecast-libshout/-/commit/032aa10d93553ede0bbfb1c2f094f9794f12da15
shout_open() returns SHOUTERR_RETRY instead retry until timeout in
https://gitlab.xiph.org/xiph/icecast-libshout/-/blob/master/src/connection.c#L464
Unfortunately it is not possible without closing shout to continue the iteration using shout_open().
It fails with SHOUTERR_CONNECTED
https://gitlab.xiph.org/xiph/icecast-libshout/-/blob/master/src/shout.c#L185
Calling shout_close() does not fix the issue, because it starts the iteration from the beginning.
Is there another public function that can be called?
In my test 70 loops are required to open the connection.https://gitlab.xiph.org/xiph/icecast-libshout/-/issues/2316Cannot connect to server in nonblocking mode ("Please retry current operation.")2022-04-12T11:02:45ZTomasz LemiechCannot connect to server in nonblocking mode ("Please retry current operation.")After reenabling nonblocking sockets by applying the fix (workaround?) described in https://gitlab.xiph.org/xiph/icecast-libshout/issues/2315 the client is unable to connect to the server at all. HTTP request is sent, but the client clos...After reenabling nonblocking sockets by applying the fix (workaround?) described in https://gitlab.xiph.org/xiph/icecast-libshout/issues/2315 the client is unable to connect to the server at all. HTTP request is sent, but the client closes the connection before the reply arrives.
```
$ ./nonblocking
Error connecting: Please retry current operation.
```
strace shows the following:
```
$ strace -e connect,fcntl,fcntl64,select ./nonblocking
fcntl(4, F_SETFL, O_RDONLY|O_NONBLOCK) = 0
connect(4, {sa_family=AF_INET, sin_port=htons(8000), sin_addr=inet_addr("127.0.0.1")}, 16) = -1 EINPROGRESS (Operation now in progress)
select(5, [4], [4], [4], {tv_sec=0, tv_usec=1000}) = 1 (out [4], left {tv_sec=0, tv_usec=999})
select(5, NULL, [4], NULL, {tv_sec=0, tv_usec=0}) = 1 (out [4], left {tv_sec=0, tv_usec=0})
select(5, [4], NULL, [4], {tv_sec=0, tv_usec=1000}) = 0 (Timeout)
Error connecting: Please retry current operation.
+++ exited with 0 +++
```
The third `select` call times out. Backtrace at this `select` call:
```
#0 __GI___select (nfds=5, readfds=readfds@entry=0x7fffffffc6c0, writefds=writefds@entry=0x0,
exceptfds=exceptfds@entry=0x7fffffffc7c0, timeout=timeout@entry=0x7fffffffc6b0) at ../sysdeps/unix/sysv/linux/select.c:39
#1 0x00007ffff7f78f3e in shout_connection_iter__wait_for_io (con=con@entry=0x55555555aa10, for_write=for_write@entry=0,
timeout=timeout@entry=0, shout=0x55555555a490, for_read=1) at connection.c:144
#2 0x00007ffff7f7961c in shout_connection_iter__message (shout=0x55555555a490, con=0x55555555aa10) at connection.c:374
#3 shout_connection_iter (shout=<optimized out>, con=<optimized out>) at connection.c:478
#4 shout_connection_iter (con=con@entry=0x55555555aa10, shout=shout@entry=0x55555555a490) at connection.c:442
#5 0x00007ffff7f77571 in try_connect (self=self@entry=0x55555555a490) at shout.c:1333
#6 0x00007ffff7f77752 in shout_open (self=0x55555555a490) at shout.c:189
#7 0x000055555555529b in main () at nonblocking.c:66
```
As a result of this timeout, `shout_connection_iter__wait_for_io` returns `SHOUT_RS_TIMEOUT` to `shout_connection_iter__message`, which then gets propagated back to `shout_connection_iter`. Now due to the following condition in `__iter` macro:
```C
case SHOUT_RS_TIMEOUT: \
case SHOUT_RS_NOTNOW: \
if (con->nonblocking == SHOUT_BLOCKING_NONE) \
return SHOUTERR_RETRY; \
retry = 1; \
```
`SHOUTERR_RETRY` is returned from `shout_connection_iter` and propagated back via `try_connect` and `shout_open` to the caller, which is usually not prepared to handle this value (it expects `SHOUTERR_SUCCESS`, `SHOUTERR_CONNECTED` or `SHOUTERR_BUSY`).
A one-line fix to the above:
```C
if (con->nonblocking == SHOUT_BLOCKING_NONE) \
return SHOUTERR_BUSY; \
```
fixes the problem.https://gitlab.xiph.org/xiph/icecast-libshout/-/issues/2334Mixxx build patches2022-04-12T11:07:10ZDaniel SchürmannMixxx build patchesThis is the set of patches we apply in the Mixxx project to build libshout on Linux/Windows/MacOs.
[0006-Handle-unhandled-enum-values-in-switch-statements.patch](/uploads/697b5afa3df8c0a07efd437d36b2776b/0006-Handle-unhandled-enum-valu...This is the set of patches we apply in the Mixxx project to build libshout on Linux/Windows/MacOs.
[0006-Handle-unhandled-enum-values-in-switch-statements.patch](/uploads/697b5afa3df8c0a07efd437d36b2776b/0006-Handle-unhandled-enum-values-in-switch-statements.patch)
[0005-Verify-port-number-length.patch](/uploads/89e9c67e61740c4965d9141407c14c2c/0005-Verify-port-number-length.patch)
[0004-Fix-includes.patch](/uploads/716c9fa35c186257ef1431fb87ca865d/0004-Fix-includes.patch)
[0003-replace-illegal-void-arythmetric.patch](/uploads/f6f23b2338e477af3aa5d0c43372063b/0003-replace-illegal-void-arythmetric.patch)
[0002-fix-os.h.patch](/uploads/34c49851823f285aaeae15b3decca10b/0002-fix-os.h.patch)
[0001-Remove-unsused-strings.h.patch](/uploads/519033c12062e1d0a4cd010254840e73/0001-Remove-unsused-strings.h.patch)https://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/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/2381Multimedia signing key expired for openSUSE OBS Multimedia2022-04-12T14:00:12ZTom ZetMultimedia signing key expired for openSUSE OBS MultimediaThe Multimedia signing key as written in here [wiki.xiph.org](https://wiki.xiph.org/index.php?title=Icecast_Server/Installing_latest_version_(official_Xiph_repositories)&mobileaction=toggle_view_desktop) expired 2020-01-30.The Multimedia signing key as written in here [wiki.xiph.org](https://wiki.xiph.org/index.php?title=Icecast_Server/Installing_latest_version_(official_Xiph_repositories)&mobileaction=toggle_view_desktop) expired 2020-01-30.Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/speex/-/issues/1349[PATCH] --enable/--disable-ogg configure.ac flags2022-04-13T21:39:13Zdrac[PATCH] --enable/--disable-ogg configure.ac flagsIf user has libogg installed, but he wants speex without ogg support there is no way to do that currently, so here we add --enable-ogg and --disable-ogg to control them (did a copycat from current
--enable-sse flag to keep it constant)
...If user has libogg installed, but he wants speex without ogg support there is no way to do that currently, so here we add --enable-ogg and --disable-ogg to control them (did a copycat from current
--enable-sse flag to keep it constant)
The patch also removes -O3 from CFLAGS when --enable-sse is called, I'm not sure what compiler optimizations has to do with SSE.
Kindly review and apply the parts accepted.Jean-Marc ValinJean-Marc Valin