Icecast-Server issueshttps://gitlab.xiph.org/xiph/icecast-server/-/issues2018-10-17T14:49:29Zhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2024configure does not find speex when using non-standard prefix2018-10-17T14:49:29ZRoland Hermansconfigure does not find speex when using non-standard prefixI tried to compile icecast 2.4.0 using a non-standard prefix as follows:
```
./configure --prefix=<mydir>
```
The libraries libogg, libvorbis and libtheora are found, but libspeex is not:
```
checking for libogg... ok
checking for lib...I tried to compile icecast 2.4.0 using a non-standard prefix as follows:
```
./configure --prefix=<mydir>
```
The libraries libogg, libvorbis and libtheora are found, but libspeex is not:
```
checking for libogg... ok
checking for libvorbis... ok
checking for libtheora... ok
checking for libspeex... configure: WARNING: Speex support disabled!
```
The reason for this is that the configure script does not append SPEEX_CFLAGS to CPPFLAGS. Attached patch contains a fix for m4/speex.m4 that temporarily modifies CPPFLAGS in a way similar to the other libraries.Icecast 2.5.0Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2020[PATCH] Fix autogen.sh to work properly on Mac OS2018-03-06T12:49:47ZMarvin Scholz[PATCH] Fix autogen.sh to work properly on Mac OSThis patch fixes autogen.sh, so it will not exit with the error that libtool is not installed on Mac OS.
The command `libtoolize` on Mac OS is called `glibtoolize`, this patch makes it check for both versions.
This patch fixes autogen.sh, so it will not exit with the error that libtool is not installed on Mac OS.
The command `libtoolize` on Mac OS is called `glibtoolize`, this patch makes it check for both versions.
Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2019[PATCH] Add PLS Playlist Format2018-03-06T12:49:47ZMarvin Scholz[PATCH] Add PLS Playlist FormatThis patch adds support for the pls playlist format.This patch adds support for the pls playlist format.Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2018Add a web interface equivalent of SIGHUP2018-03-06T12:49:47ZwillwhAdd a web interface equivalent of SIGHUPI run icecast2 on windows, and it'd be great to have some HTTP interface I could POST to, to call a reload to add mounts, without kicking any sources or clients from the running mounts.
Thanks guys!I run icecast2 on windows, and it'd be great to have some HTTP interface I could POST to, to call a reload to add mounts, without kicking any sources or clients from the running mounts.
Thanks guys!Icecast 2.5.0Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2017out of band Opus Metadata updates not allowed2018-11-10T09:27:15Zkidxout of band Opus Metadata updates not allowedMessage: Mountpoint will not accept URL updates.
Return Code: 1Message: Mountpoint will not accept URL updates.
Return Code: 1Icecast 2.5.0Gitlab BotGitlab Bothttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2016Add IP address of the source in error.log2018-03-06T12:49:48ZFrancois LafontAdd IP address of the source in error.logHere is typical content of error.log during a source connection:
```
[2014-05-02 13:43:49] INFO connection/_handle_source_request Source logging in at mountpoint "/test1.mp3"
[2014-05-02 13:43:49] INFO format-vorbis/initial_vorbis_pa...Here is typical content of error.log during a source connection:
```
[2014-05-02 13:43:49] INFO connection/_handle_source_request Source logging in at mountpoint "/test1.mp3"
[2014-05-02 13:43:49] INFO format-vorbis/initial_vorbis_page seen initial vorbis header
[2014-05-02 13:43:49] INFO source/source_main listener count on /test1.mp3 now 0
[2014-05-02 13:43:57] INFO source/get_next_buffer End of Stream /test1.mp3
[2014-05-02 13:43:57] INFO source/source_shutdown Source "/test1.mp3" exiting
```
It will be great if the IP source address was indicate in error.log. For example, something like that:
```
[2014-05-02 13:43:49] INFO connection/_handle_source_request Source (IP=192.168.0.26) logging in at mountpoint "/test1.mp3"
[2014-05-02 13:43:49] INFO format-vorbis/initial_vorbis_page seen initial vorbis header
[2014-05-02 13:43:49] INFO source/source_main listener count on /test1.mp3 now 0
[2014-05-02 13:43:57] INFO source/get_next_buffer End of Stream /test1.mp3
[2014-05-02 13:43:57] INFO source/source_shutdown Source (IP=192.168.0.26) "/test1.mp3" exiting
```
Isn't it? ;-)
Francois LafontIcecast 2.5.0Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2010Improve Icecast htpasswd hash storage security2023-02-21T23:42:29ZThomas B. RückerImprove Icecast htpasswd hash storage securityCurrently Icecast uses unsalted md5 hashes of passwords.
Once an attacker obtains access to those the risk is high that simple passwords will be broken by simple md5 look-up through web search.
We should move to using bcrypt, as it's li...Currently Icecast uses unsalted md5 hashes of passwords.
Once an attacker obtains access to those the risk is high that simple passwords will be broken by simple md5 look-up through web search.
We should move to using bcrypt, as it's license permits us to incorporate it, also it should allow us to be compatible with the standard htpasswd(1) manipulation tool.
In the meanwhile using forwarded http authentication potentially offers higher security by deferring authentication to another http server.Icecast 2.5.0Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2008A hang in send_ogg_headers()2020-02-14T13:10:21ZartemA hang in send_ogg_headers()I've recently had the following hang of icecast2 server. Not sure if it's the first time, but it's pretty rare anyway, so i can't reliably reproduce, but this time i managed to debug a little.
I'm running on ubuntu 12.04 vps with defaul...I've recently had the following hang of icecast2 server. Not sure if it's the first time, but it's pretty rare anyway, so i can't reliably reproduce, but this time i managed to debug a little.
I'm running on ubuntu 12.04 vps with default package (icecast2-2.3.2-9ubuntu1), didn't try to pull the latest svn version yet.
```
$ tail /var/log/icecast2
...
[2014-02-16 08:27:40] DBUG client/client_send_bytes Client connection died
[2014-02-16 08:27:40] DBUG client/client_send_bytes Client connection died
[2014-02-16 08:27:40] DBUG client/client_send_bytes Client connection died
[2014-02-16 08:27:40] DBUG client/client_send_bytes Client connection died
[2014-02-16 08:27:40] DBUG client/client_send_bytes Client connection died
[2014-02-16 08:27:40] DBUG client/client_send_bytes Client connection died
[2014-02-16 08:27:40] DBUG client/client_send_bytes Client connection died
[2014-02-16 08:27:40] DBUG client/client_send_bytes Client connection died
[2014-02-16 08:27:40] DBUG client/client_send_bytes Client connection died
[2014-02-16 08:27:40] DBUG client/client_send_bytes Client connection died
...
```
```
$ strace -p `pidof icecast2` -f 2>&1 | grep send
...
[pid 26113] send(14, 0x5ff8e559, 2406954578, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e558, 2406954579, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e557, 2406954580, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e556, 2406954581, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e555, 2406954582, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e554, 2406954583, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e553, 2406954584, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e552, 2406954585, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e551, 2406954586, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e550, 2406954587, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e54f, 2406954588, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e54e, 2406954589, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e54d, 2406954590, 0) = -1 EPIPE (Broken pipe)
[pid 26113] send(14, 0x5ff8e54c, 2406954591, 0) = -1 EPIPE (Broken pipe)
...
```
You may notice how buffer address decreases by 1 and buffer length increases by 1 on every line; no other `send()` calls happen, so i could easily backtrace them:
```
$ gdb -p `pidof icecast`
...
Breakpoint 1, 0xb7461e40 in send () from /lib/i386-linux-gnu/tls/i686/nosegneg/libpthread.so.0
(gdb) bt
#0 0xb7461e40 in send () from /lib/i386-linux-gnu/tls/i686/nosegneg/libpthread.so.0
#1 0x08067c40 in sock_write_bytes (sock=14, buff=0x5f08fe9d, len=2422676750) at sock.c:360
#2 0x0804f9aa in connection_send (con=0x9748ac8, buf=0x5f08fe9d, len=2422676750) at connection.c:303
#3 0x08058d20 in client_send_bytes (client=0x9740a38, buf=0x5f08fe9d, len=2422676750) at client.c:202
#4 0x0805e6c2 in send_ogg_headers (headers=0xb666e848, client=0x9740a38) at format_ogg.c:500
#5 write_buf_to_client (client=0x9740a38) at format_ogg.c:534
#6 0x08054f57 in send_to_listener (deletion_expected=0, client=0x9740a38, source=0xb647c7d8) at source.c:544
#7 source_main (source=0xb647c7d8) at source.c:716
#8 0x0805564f in source_client_thread (arg=0xb647c7d8) at source.c:1225
#9 0x08068b2f in _start_routine (arg=0xb6674970) at thread.c:655
#10 0xb745ad4c in start_thread () from /lib/i386-linux-gnu/tls/i686/nosegneg/libpthread.so.0
#11 0xb7398ace in clone () from /lib/i386-linux-gnu/tls/i686/nosegneg/libc.so.6
...
```
Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1995Icecast server configure fails on ibm AIX 72018-03-06T12:49:48ZAlexandruIcecast server configure fails on ibm AIX 7Hello Team,
I'm having trouble compiling the Icecast server version 2.3.3 on IBM AIX version 7100-02-01-1245.
./configure script fails while checking for libvorbis installation with the following message:
"checking for libvorbis......Hello Team,
I'm having trouble compiling the Icecast server version 2.3.3 on IBM AIX version 7100-02-01-1245.
./configure script fails while checking for libvorbis installation with the following message:
"checking for libvorbis... configure: error: must have Ogg Vorbis v1.0 or above installed"
The following libraries have been installed without issues in /opt/freeware/lib:
root@aiiics02:/>rpm -qa|egrep 'vorbis|ogg'
libogg-1.3.0-1
libogg-devel-1.3.0-1
libvorbis-1.3.3-1
libvorbis-devel-1.3.3-1
root@aiiics02:/>rpm -ql libvorbis-1.3.3-1
/opt/freeware/doc/libvorbis-1.3.3
/opt/freeware/doc/libvorbis-1.3.3/AUTHORS
/opt/freeware/doc/libvorbis-1.3.3/COPYING
/opt/freeware/doc/libvorbis-1.3.3/README
/opt/freeware/lib/libvorbis.a
/opt/freeware/lib/libvorbisenc.a
/opt/freeware/lib/libvorbisfile.a
/usr/lib/libvorbis.a
/usr/lib/libvorbisenc.a
/usr/lib/libvorbisfile.a
I'm can send the configure.log file in case it helps and also
help test this on all current AIX versions (5.3, 6.1 & 7.1) so you can add AIX to the supported platforms.
Thanks in advance and best of regards!
-Alex
Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1994Icecast server configure fails on ibm AIX 72018-03-06T12:49:48ZAlexandruIcecast server configure fails on ibm AIX 7Hello Team,
I'm having trouble compiling the Icecast server version 2.3.3 on IBM AIX version 7100-02-01-1245.
./configure script fails while checking for libvorbis installation with the following message:
"checking for libvorbis......Hello Team,
I'm having trouble compiling the Icecast server version 2.3.3 on IBM AIX version 7100-02-01-1245.
./configure script fails while checking for libvorbis installation with the following message:
"checking for libvorbis... configure: error: must have Ogg Vorbis v1.0 or above installed"
The following libraries have been installed without issues in /opt/freeware/lib:
root@aiiics02:/>rpm -qa|egrep 'vorbis|ogg'
libogg-1.3.0-1
libogg-devel-1.3.0-1
libvorbis-1.3.3-1
libvorbis-devel-1.3.3-1
root@aiiics02:/>rpm -ql libvorbis-1.3.3-1
/opt/freeware/doc/libvorbis-1.3.3
/opt/freeware/doc/libvorbis-1.3.3/AUTHORS
/opt/freeware/doc/libvorbis-1.3.3/COPYING
/opt/freeware/doc/libvorbis-1.3.3/README
/opt/freeware/lib/libvorbis.a
/opt/freeware/lib/libvorbisenc.a
/opt/freeware/lib/libvorbisfile.a
/usr/lib/libvorbis.a
/usr/lib/libvorbisenc.a
/usr/lib/libvorbisfile.a
I'm also attaching the config.log file in case it helps.
I can help test this on all current AIX versions so you can add AIX to the supported platforms.
Thanks in advance and best of regards!
-Alex
https://gitlab.xiph.org/xiph/icecast-server/-/issues/1993Icecast server configure fails on ibm AIX 72018-03-06T12:49:48ZAlexandruIcecast server configure fails on ibm AIX 7Hello Team,
I'm having trouble compiling the Icecast server version 2.3.3 on IBM AIX version 7100-02-01-1245.
./configure script fails while checking for libvorbis installation with the following message:
"checking for libvorbis... co...Hello Team,
I'm having trouble compiling the Icecast server version 2.3.3 on IBM AIX version 7100-02-01-1245.
./configure script fails while checking for libvorbis installation with the following message:
"checking for libvorbis... configure: error: must have Ogg Vorbis v1.0 or above installed"
The following libraries have been installed without issues in /opt/freeware/lib:
root@aiiics02:/>rpm -qa|egrep 'vorbis|ogg'
libogg-1.3.0-1
libogg-devel-1.3.0-1
libvorbis-1.3.3-1
libvorbis-devel-1.3.3-1
root@aiiics02:/>rpm -ql libvorbis-1.3.3-1
/opt/freeware/doc/libvorbis-1.3.3
/opt/freeware/doc/libvorbis-1.3.3/AUTHORS
/opt/freeware/doc/libvorbis-1.3.3/COPYING
/opt/freeware/doc/libvorbis-1.3.3/README
/opt/freeware/lib/libvorbis.a
/opt/freeware/lib/libvorbisenc.a
/opt/freeware/lib/libvorbisfile.a
/usr/lib/libvorbis.a
/usr/lib/libvorbisenc.a
/usr/lib/libvorbisfile.a
I'm also attaching the configure.log file in case it helps.
I can help test this on all current AIX versions so you can add AIX to the supported platforms.
Thanks in advance and best of regards!
-AlexThomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1977check mime-type file handling in win32 build2018-03-06T12:49:48ZThomas B. Rückercheck mime-type file handling in win32 builduser reported a vague problem.
Seems we open a mime-types file from fserve.c
Also there seems to be an undocumented config option when parsing xml.
So might be enough to include a file and point to it in the win32 default config.
Unless ...user reported a vague problem.
Seems we open a mime-types file from fserve.c
Also there seems to be an undocumented config option when parsing xml.
So might be enough to include a file and point to it in the win32 default config.
Unless mingw provides some magic in its libc.Icecast 2.4.1https://gitlab.xiph.org/xiph/icecast-server/-/issues/1963icecast crashes if some XML config settings are empty2018-03-06T12:49:48Zmaepicecast crashes if some XML config settings are empty
## new description:
If you leave a tag empty, our config parsing code using libxml2 will set the variable to NULL, something that we try to prevent by prepopulating vital variables with defaults.
This needs a well thought out fix after ...
## new description:
If you leave a tag empty, our config parsing code using libxml2 will set the variable to NULL, something that we try to prevent by prepopulating vital variables with defaults.
This needs a well thought out fix after understanding our code and where the NULL comes from and what it should be instead (possibly case by case?).
*Workaround:* _Don't set anything in the config to empty tags like <tag></tag>, because bad things will happen!_
## Initial report:
icecast version 2.3.3. when i have this in my config
<accesslog></accesslog>
<errorlog></errorlog>
icecast segfaults. my intention was to turn off logging.
Icecast 2.5.0Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1953auth.xsl m3u filename is wrong2018-03-06T12:49:48Zrasiauth.xsl m3u filename is wrongauth.xsl generates the link for usermanaged servers.
but the file it sends out to the browser is hardcoded:
<form method="GET" action="/admin/buildm3u">
Since this file is missing a file extension it wont work with some mediaplayers tha...auth.xsl generates the link for usermanaged servers.
but the file it sends out to the browser is hardcoded:
<form method="GET" action="/admin/buildm3u">
Since this file is missing a file extension it wont work with some mediaplayers that expect a "m3u" extension.
Version is icecast-2.4-beta3.tar.gzIcecast 2.5.0Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1951IceCast2 Mountpoint switchover buffer2018-03-06T12:49:48ZDarrenIceCast2 Mountpoint switchover bufferHi.
I've recently changed my SHOUTcast over to IceCast to stop any dead air and use mount points.
I have one little issue.
When the Auto DJ is connected, the music plays perfectly fine but when a source connects then that's when the ...Hi.
I've recently changed my SHOUTcast over to IceCast to stop any dead air and use mount points.
I have one little issue.
When the Auto DJ is connected, the music plays perfectly fine but when a source connects then that's when the stream starts to buffer, yet the listeners successfully transfer from the /autodj mount to the /live mount and vice versa when a source disconnects.
Now.. when listening via the Centova Cast player at the top, the stream doesn't buffer.. it only buffers when using flash players or any other player for that matter which are outside Centova Cast.
Do you know a way around this? Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1944Rework STATS interface2018-10-18T08:01:51ZcatoRework STATS interfaceThe current STATS interface which can be accessed via "curl -X STATS http://server:8000/" lacks some features:
1) Not compliant with HTTP spec:
- method needs to be changed from STATS to GET and with
that the target URL has also ...The current STATS interface which can be accessed via "curl -X STATS http://server:8000/" lacks some features:
1) Not compliant with HTTP spec:
- method needs to be changed from STATS to GET and with
that the target URL has also to be changed
- Sent HTTP-Response headers, define mime-type
2) Add lines for mount add/remove, for example "ADD /test.ogg" and "REMOVE /test.ogg"
3) Remove spurious "null null" entries
Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1942Spurious dots inside http request line logged to access log2018-03-06T12:49:48ZThomas B. RückerSpurious dots inside http request line logged to access log*"GET./status.xsl.HTTP/1.1"
vs
"GET /status.xsl HTTP/1.1"*"GET./status.xsl.HTTP/1.1"
vs
"GET /status.xsl HTTP/1.1"Icecast 2.4.0Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1939Webinterface shows Login when using just stream_auth2018-03-06T12:49:48ZcatoWebinterface shows Login when using just stream_authA stream is configured just with stream_auth. The webinterface shows an login-link anyway. Clients can still access the stream, if they use the direct link.
This happens because the xsl just looks for an authenticator for the mount, whi...A stream is configured just with stream_auth. The webinterface shows an login-link anyway. Clients can still access the stream, if they use the direct link.
This happens because the xsl just looks for an authenticator for the mount, which is "url" in this case. There is no possibility to check whether the authenticator applies for sources or for clients.Icecast 2.5.0Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1936Add <audio> and <video> elements to supported streams on status page.2018-06-16T22:37:50ZThomas B. RückerAdd <audio> and <video> elements to supported streams on status page.Now that Firefox will ship with fixed chaining we can push this much more.
By supported I mean at least: vorbis, Opus, theora, WebMNow that Firefox will ship with fixed chaining we can push this much more.
By supported I mean at least: vorbis, Opus, theora, WebMIcecast 2.5.0Marvin ScholzMarvin Scholzhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1929HTTP Content-Type doesn't autodetect and it ignores <type> and <subtype>2018-10-24T14:29:17ZEvan CarrollHTTP Content-Type doesn't autodetect and it ignores <type> and <subtype>I have a `Ogg/Opus` stream, if I don't statically put in the `<type>` and `<subtype>` into my icecast conf file `/admin/stats.xsl shows`,
```
server_type application/ogg
```
And, the HTTP header shows `application/ogg` for Content-Typ...I have a `Ogg/Opus` stream, if I don't statically put in the `<type>` and `<subtype>` into my icecast conf file `/admin/stats.xsl shows`,
```
server_type application/ogg
```
And, the HTTP header shows `application/ogg` for Content-Type. If I statically put in the `<type>` and `<subtype>` `/admin/stats.xsl` shows,
```
server_type audio/ogg
subtype opus
```
However, even statically entered the HTTP Content-Type is `application/ogg`.
Per the Opus wiki [https://wiki.xiph.org/OggOpus#Content_Type], the Content-Type should be `"audio/ogg; codecs=opus"`
> The recommended mime-type for Ogg Opus files is audio/ogg, defined in RFC 5334. If more specificity is desired, one can distinguish Opus files as 'audio/ogg; codecs=opus'. The recommended filename extension for Ogg Opus files is .opus.
Thomas B. RückerThomas B. Rücker