Icecast-Server issueshttps://gitlab.xiph.org/xiph/icecast-server/-/issues2018-03-06T12:49:48Zhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1839location and admin e-mail contact missing in example xml2018-03-06T12:49:48ZThomas B. Rückerlocation and admin e-mail contact missing in example xmlboth tags are missing from the example config files.both tags are missing from the example config files.Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1823[PATCH] time stamp support for dump-file2018-03-06T12:49:48ZThomas B. Rücker[PATCH] time stamp support for dump-filesee: http://lists.xiph.org/pipermail/icecast/2004-June/007443.html
< ph3-der-loewe> dm8tbr: sounds good with a minor problem (sizeof() usage), add it to queue.see: http://lists.xiph.org/pipermail/icecast/2004-June/007443.html
< ph3-der-loewe> dm8tbr: sounds good with a minor problem (sizeof() usage), add it to queue.Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1814FLV streaming support2018-03-06T12:49:48ZLaurent DefertFLV streaming supportThis patch adds support for streaming FLV files.This patch adds support for streaming FLV files.Michael SmithMichael Smithhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1813Limit source reading retries2018-03-06T12:49:48ZLaurent DefertLimit source reading retriesThis patch limits the number of times Icecast retries to read from a source.
This patch limits the number of times Icecast retries to read from a source.
Michael SmithMichael Smithhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1812[PATCH]Handle a source using POST and PUT request2018-03-06T12:49:48ZLaurent Defert[PATCH]Handle a source using POST and PUT requestThis patch makes Icecast handle PUT and POST requests the same way it handles SOURCE request.
This patch makes Icecast handle PUT and POST requests the same way it handles SOURCE request.
Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1811Fix streaming on iPhone2018-03-06T12:49:48ZLaurent DefertFix streaming on iPhoneThis patch adds specific headers to http response to make icecast work with iPhones.
http://icecast.imux.net/viewtopic.php?t=6099
This patch adds specific headers to http response to make icecast work with iPhones.
http://icecast.imux.net/viewtopic.php?t=6099
Michael SmithMichael Smithhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1810Race conditions fix2018-03-06T12:49:48ZLaurent DefertRace conditions fixHelgrind (http://valgrind.org) reports a few potential race conditions during normal execution. The attached patch fixes some of them.
Helgrind (http://valgrind.org) reports a few potential race conditions during normal execution. The attached patch fixes some of them.
Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1752<on-connect> to accept an arguments with the script name2018-03-06T12:49:48ZYahav<on-connect> to accept an arguments with the script namethis little patch makes the function source_run_script() to be compatible with getting an arguments after the script name,
eg. <on-connect>/path/to/script.sh arg1</on-connect>
be aware that this is just a proof-of-concept, as i'm not a ...this little patch makes the function source_run_script() to be compatible with getting an arguments after the script name,
eg. <on-connect>/path/to/script.sh arg1</on-connect>
be aware that this is just a proof-of-concept, as i'm not a C developer but a PHP developer.
i have tested it with Icecast-2.3.2 release, and it works just fine, BUT if you found a bug or some dis-functionality please rewire this patch to make it better.
just thought it would be nice to share.Icecast 2.5.0Michael SmithMichael Smithhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1718[patch] icecast supports SSLv2 and several non-secure ciphers2018-03-06T12:49:48ZDave Miller[patch] icecast supports SSLv2 and several non-secure ciphersIcecast with SSL enabled allows SSLv2 and several insecure ciphers by default, with no way to configure it to do othewise.
SSLv2 is generally considered insecure nowadays, as are a number of the default ciphers in openssl. Icecast wasn...Icecast with SSL enabled allows SSLv2 and several insecure ciphers by default, with no way to configure it to do othewise.
SSLv2 is generally considered insecure nowadays, as are a number of the default ciphers in openssl. Icecast wasn't specifying any ciphers to use, so it just got the default list.
The attached patch disables SSLv2 outright, and adds an optional configuration option called <ssl-allowed-ciphers> which you can use to override the cipher list, which has a sane default that provides a generally-accepted-secure set of ciphers.
Michael SmithMichael Smithhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1717[patch] icecast doesn't support chained SSL certificates2018-03-06T12:49:48ZDave Miller[patch] icecast doesn't support chained SSL certificatesSituation:
globally accepted certificate authority has certified another certificate authority for signing SSL certificates. The certificate authority that everyone has in their root cert databases has signed the second authority's root ...Situation:
globally accepted certificate authority has certified another certificate authority for signing SSL certificates. The certificate authority that everyone has in their root cert databases has signed the second authority's root cert with theirs, with signing rights granted. The second authority then signs our certificate.
This is called a chained SSL certificate. Every SSL client I've ever seen can deal with them, however, they usually take a little additional setup on the server end to make it work.
We operate several large websites with SSL certificates signed by this same vendor. In Apache, there is a separate configuration option for a certificate chain file. In some other applications (most notably mail servers) you can append the chain certificate onto the end of your own certificate, and it will Just Work.
Based on the way the config is set up in Icecast, it should be using the second method (appending the chain cert onto the end of the pem file for the certs). However, Icecast is using the wrong API call into OpenSSL for this to work.
Patch attached to fix.Michael SmithMichael Smithhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1655OggFLAC metadata not supported in Icecast2022-03-16T01:33:34ZJim CollinsonOggFLAC metadata not supported in IcecastAs a business we would really like to start streaming in lossless OggFLAC, but Icecast does not support metadata from OggFLAC. So this is a no-go for us at the moment.
FLAC uses Vorbis comments, so surly this wouldn't be difficult to ac...As a business we would really like to start streaming in lossless OggFLAC, but Icecast does not support metadata from OggFLAC. So this is a no-go for us at the moment.
FLAC uses Vorbis comments, so surly this wouldn't be difficult to achieve?Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1649[patch] [kh] PSP podcast support2018-03-06T12:49:48Zmoo[patch] [kh] PSP podcast supportthe problem with PSP is that it want to know the file size by using HEAD request, and will seek to the end of the file by using range request, trying to get the id3 tag. with any step fail, it refuse to play the mp3 (not sure if it handl...the problem with PSP is that it want to know the file size by using HEAD request, and will seek to the end of the file by using range request, trying to get the id3 tag. with any step fail, it refuse to play the mp3 (not sure if it handles media beside mp3)
so my patch will
1. add HEAD support
1. add simple range trick. send audio data anyway. because there're many mp3 files without id3 tag, PSP should (and does) accept this case
i took me a lot of time to figure it out as i have no PSP to test. had to bother my friendsKarl HeyesKarl Heyeshttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1648[patch] [kh] improve support for shoutcastsource by using ICY instead of HTTP...2018-03-06T12:49:48Zmoo[patch] [kh] improve support for shoutcastsource by using ICY instead of HTTP/1.0mpc/mpc-hc will use it's own http client, "User-Agent: shoutcastsource" try to handle http:// url, but only if the server returns ICY not HTTP/1.0 response
afaik, shoutcast server return ICY
with shoutcastsource client, mpc/mpc-hc will...mpc/mpc-hc will use it's own http client, "User-Agent: shoutcastsource" try to handle http:// url, but only if the server returns ICY not HTTP/1.0 response
afaik, shoutcast server return ICY
with shoutcastsource client, mpc/mpc-hc will work perfect as if it know the server is steam not file
without using shoutcastsource client, they still work, with different handler, maybe a directshow source transformer or something. the source become a file not a stream, mpc/mpc-hc will show a progress indicator, and when you seek it, for example, to 02:00, you'll have to wait for 2:00 for the buffer to finish the seeking
the patch is simpleKarl HeyesKarl Heyeshttps://gitlab.xiph.org/xiph/icecast-server/-/issues/16462.3.2-kh20 content-length is before http status for flash/MSIE2018-03-06T12:49:48Zmoo2.3.2-kh20 content-length is before http status for flash/MSIE```
$ LANG=C svn info .
URL: http://svn.xiph.org/icecast/branches/kh/icecast
Repository Root: http://svn.xiph.org
Repository UUID: 0101bb08-14d6-0310-b084-bc0e0c8e3800
Revision: 16886
Last Changed Rev: 16858
Last Changed Date: 2010-01-31...```
$ LANG=C svn info .
URL: http://svn.xiph.org/icecast/branches/kh/icecast
Repository Root: http://svn.xiph.org
Repository UUID: 0101bb08-14d6-0310-b084-bc0e0c8e3800
Revision: 16886
Last Changed Rev: 16858
Last Changed Date: 2010-01-31 14:22:46 +0800 (Sun, 31 Jan 2010)
```
for flash/MSIE client, icecast returns
```
Content-Length: 221183499
Expires: Mon, 26 Jul 1997 05:00:00 GMT
HTTP/1.0 200 OK
```
expected result:
```
HTTP/1.0 200 OK
Content-Length: 221183499
Expires: Mon, 26 Jul 1997 05:00:00 GMT
```
suggested fix: call create_client_data after HTTP/1.0 200 OK is setKarl HeyesKarl Heyeshttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1639Icecast doesn't export http headers2018-03-06T12:49:48ZJoe HIcecast doesn't export http headersVersion: Icecast 2.3.2
OS: Ubuntu server
kernel version: 2.6.31-17-server
What should happen: "wget -S serverip" should prints http headers
What does happen: "wget -S serverip" prints just Content-Type and length.
It returns the heade...Version: Icecast 2.3.2
OS: Ubuntu server
kernel version: 2.6.31-17-server
What should happen: "wget -S serverip" should prints http headers
What does happen: "wget -S serverip" prints just Content-Type and length.
It returns the headers for streams, however it should return the icecast headers for any http request on it.
As a workaround I am using: curl http://ip:port/stream.ogg -D - -o /dev/null -s -m 1Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1617[kh] hang not accepting source2018-03-06T12:49:48Zmoo[kh] hang not accepting sourcei have client connect to kh branch of icecast with no success
in changeset [16524]
```
sock = sock_accept(serversock, ip, MAX_ADDR_LEN);
```
is changed to
```
sock = sock_accept (serversock, NULL, 0);
```
while in changeset [15864]
``...i have client connect to kh branch of icecast with no success
in changeset [16524]
```
sock = sock_accept(serversock, ip, MAX_ADDR_LEN);
```
is changed to
```
sock = sock_accept (serversock, NULL, 0);
```
while in changeset [15864]
```
if (!sock_valid_socket(serversock))
return SOCK_ERROR;
```
is changed to
```
if (ip == NULL || len == 0 || !sock_valid_socket(serversock))
return SOCK_ERROR;
```
sock_accept (serversock, NULL, 0) will always return SOCK_ERROR. no client will be accept()edMichael SmithMichael Smithhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1606default station description for shoutcast source2018-11-10T15:54:39Zmoodefault station description for shoutcast sourcefor shoutcast source, description is not submited because there's no such thing in shoutcast world.
it would be nice if icecast server can "default" not "force" station description for shoutcast source (or even other source that has empt...for shoutcast source, description is not submited because there's no such thing in shoutcast world.
it would be nice if icecast server can "default" not "force" station description for shoutcast source (or even other source that has empty station description)
the same may applies to station name, which is not needed most of the caseMarvin ScholzMarvin Scholzhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1605some mount settings should be applied before mount point is relayed2018-03-06T12:49:48Zmoosome mount settings should be applied before mount point is relayedthe current problems are: i have force station name/description/encoding in "mount point /" in the master server, and it looks good, however all relay servers look like mount settings not applied. station name/description/encoding/url is...the current problems are: i have force station name/description/encoding in "mount point /" in the master server, and it looks good, however all relay servers look like mount settings not applied. station name/description/encoding/url is exactly equal to what source client set, not the ones set by the master server, unless i add the same mount settings to relay servers.
mount settings cannot be relay to slave servers. i assume it's by design.
but some settings in mount is better relayed, or just apply to the settings to source stream/metadata (mount point) before the stream (mount point) is relayed. i.e., change station name/description/encoding/url before relying to slave servers.Michael SmithMichael Smithhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1513trying to relay existing mount loops forever2018-03-06T12:49:48Ztimpuritrying to relay existing mount loops foreverI have configuration where icecast 2.3.2 relays from itself. (don't ask why)
I connect source to server and it goes wild. Old versions of icecast did'nt do it.
```
[2009-02-23 11:34:42] DBUG admin/admin_handle_request Admin request (/...I have configuration where icecast 2.3.2 relays from itself. (don't ask why)
I connect source to server and it goes wild. Old versions of icecast did'nt do it.
```
[2009-02-23 11:34:42] DBUG admin/admin_handle_request Admin request (/admin/streamlist.txt)
[2009-02-23 11:34:42] DBUG admin/admin_handle_request Got command (streamlist.txt)
[2009-02-23 11:34:42] DBUG admin/command_list_mounts List mounts request
[2009-02-23 11:34:42] DBUG fserve/fserve_add_client Adding client to file serving engine
[2009-02-23 11:34:42] DBUG slave/update_from_master read 1 from master "/koitto.ogg"
[2009-02-23 11:34:42] WARN slave/check_relay_stream new relay but source "/koitto.ogg" already exists
[2009-02-23 11:34:42] DBUG slave/relay_free freeing relay /koitto.ogg
[2009-02-23 11:34:42] WARN slave/check_relay_stream new relay but source "/koitto.ogg" already exists
[2009-02-23 11:34:43] DBUG stats/modify_node_event update node client_connections (54)
[2009-02-23 11:34:43] DBUG stats/modify_node_event update node clients (1)
[2009-02-23 11:34:43] WARN slave/check_relay_stream new relay but source "/koitto.ogg" already exists
[2009-02-23 11:34:44] DBUG stats/modify_node_event update node total_bytes_read (15440)
[2009-02-23 11:34:44] DBUG stats/modify_node_event update node total_bytes_sent (0)
[2009-02-23 11:34:44] WARN slave/check_relay_stream new relay but source "/koitto.ogg" already exists
[2009-02-23 11:34:45] WARN slave/check_relay_stream new relay but source "/koitto.ogg" already exists
[2009-02-23 11:34:46] WARN slave/check_relay_stream new relay but source "/koitto.ogg" already exists
[2009-02-23 11:34:47] WARN slave/check_relay_stream new relay but source "/koitto.ogg" already exists
[2009-02-23 11:34:48] WARN slave/check_relay_stream new relay but source "/koitto.ogg" already exists
[2009-02-23 11:34:49] DBUG stats/modify_node_event update node total_bytes_read (19729)
[2009-02-23 11:34:49] DBUG stats/modify_node_event update node total_bytes_sent (0)
[2009-02-23 11:34:49] WARN slave/check_relay_stream new relay but source "/koitto.ogg" already exists
[2009-02-23 11:34:50] WARN slave/check_relay_stream new relay but source "/koitto.ogg" already exists
.....
```
After long time I got tons of those:
```
[2009-02-23 13:57:01] WARN connection/_accept_connection accept() failed with error 24: Too many open files
```
_"source "/koitto.ogg" already exists"_ -messages stops when source is disconnected.
Karl HeyesKarl Heyeshttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1421RFE: Optional IceCast Authenticator Assistant2018-03-06T12:49:48ZianRFE: Optional IceCast Authenticator AssistantIn status.xsl, present the authenticator login link (the lock) based on need for authentication. Otherwise, present the usual M3U, XSPF links.
If authentication uses htpasswd, always show the lock.
If authentication uses URL, only show...In status.xsl, present the authenticator login link (the lock) based on need for authentication. Otherwise, present the usual M3U, XSPF links.
If authentication uses htpasswd, always show the lock.
If authentication uses URL, only show the lock if the listener_add option is defined.Michael SmithMichael Smith