1
0
mirror of https://gitlab.xiph.org/xiph/icecast-server.git synced 2024-06-16 06:15:24 +00:00
Commit Graph

110 Commits

Author SHA1 Message Date
Philipp Schafft
b82ea89a2e Update: Updated default values for Access-Control-Expose-Headers:, and Access-Control-Allow-Headers: 2022-03-12 13:39:44 +00:00
Philipp Schafft
42a9d82926 Fix: Typo 2022-03-12 10:04:19 +00:00
Philipp Schafft
4db6127464 Update: Updated copyright years 2022-03-01 11:17:28 +00:00
Philipp Schafft
fa9ac44852 Update: Avoid %s for charset in logging as it might be provided externally 2022-02-25 21:02:25 +00:00
Philipp Schafft
b986bf5d78 Update: Avoid more complicate process if in_charset is the same as out_charset 2022-02-25 21:02:25 +00:00
Philipp Schafft
d245b0261b Feature: Support <http-headers> in <listen-socket>
Closes: #2359
2020-10-15 20:41:21 +00:00
Philipp Schafft
1c98b77aab Fix: Corrected status code for ICECAST_ERROR_ADMIN_MOUNT_NOT_ACCEPT_URL_UPDATES
Closes: #2373
2020-10-15 16:19:38 +00:00
Marvin Scholz
2b56f73cfb Cleanup: Do not name variable same as hex function 2020-04-19 04:14:07 +02:00
Marvin Scholz
386a461016 Fix: Fixed check for icecast_kva_t value 2020-04-19 04:10:28 +02:00
Philipp Schafft
e6122f13fb Feature: Marked spammy development only output as such
See: #2358
2019-01-09 15:04:16 +00:00
Philipp Schafft
edd3dcc60d Update: Renamed replace_string() to util_replace_string() 2019-01-09 09:18:50 +00:00
Philipp Schafft
c7e355ce49 Update: Improved CORS header handling regarding defaults 2018-11-12 21:51:23 +00:00
Philipp Schafft
f60791ad64 Cleanup: Removed stray error level log line 2018-11-12 21:51:23 +00:00
Philipp Schafft
c71aa0a08f Feature: Support per-<acl> HTTP headers 2018-11-12 21:51:23 +00:00
Philipp Schafft
6f28d3fd3a Update: Mark ice_config_http_header_t *header const in _build_headers_loop() 2018-11-12 21:51:23 +00:00
Philipp Schafft
2c72d9a37c Feature: Support per-<role> HTTP headers 2018-11-12 21:51:23 +00:00
Philipp Schafft
ca83e6b44b Feature: Added type="cors" to <header>. 2018-11-12 21:51:23 +00:00
Philipp Schafft
6d0e4e6fc9 Update: Set default HTTP version to 1.1
This changes the default version of HTTP to 1.1.
The version can currently not be changed to something different.

Closes: #2057
2018-11-09 07:30:30 +00:00
Philipp Schafft
e75b85fe66 Update: Added "no-store" to Cache-Control:-header. 2018-10-31 09:11:12 +00:00
Philipp Schafft
a192f696c3 Fix: Corrected reported Allow:-header (mostly for 204-responses) 2018-10-26 08:05:45 +00:00
Philipp Schafft
6656edacad Update: Added names for HTTP status codes 30x. 2018-10-11 10:38:14 +00:00
Philipp Schafft
f2c474ec63 Feature: Added function to lowercase a string 2018-09-19 13:32:58 +00:00
Philipp Schafft
dabf9337a6 Feature: Added helper function replace_string() 2018-09-19 13:32:58 +00:00
Marvin Scholz
149194d6af Fix: Use POSIX poll.h instead of sys/poll.h 2018-08-14 20:03:01 +02:00
Philipp Schafft
e900d8e80c Fix: Fixed end-of-input bug in Base64 encoder 2018-07-27 10:07:30 +00:00
Philipp Schafft
513b62aeea Cleanup: Fixed some compiler warnings 2018-06-19 10:47:03 +00:00
Philipp Schafft
059bfdc7ce Cleanup: Corrected headers used in code 2018-06-17 12:47:35 +00:00
Philipp Schafft
34b10657da Cleanup: Make use of "icecasttypes.h" 2018-06-17 10:33:10 +00:00
Philipp Schafft
d1dbc561ac Update: Announce support for OPTIONS 2018-06-16 17:59:11 +00:00
Philipp Schafft
2bd71b9d01 Feature: Allow OPTIONS request for * and web requests 2018-06-16 17:59:11 +00:00
Philipp Schafft
0fe5d5fa1f Fix: Added missing status codes to header generator 2018-05-07 16:33:17 +00:00
Philipp Schafft
b42378abc4 Feature: Generate errors based on IDs.
This generates error pages based on IDs. This allows to reuse errors
and add more advanced information to them.

This patch also makes Icecast send in plain text OR HTML based
on the clients Accept:-string.
2018-05-07 16:28:46 +00:00
Philipp Schafft
0db820c9dd Feature: Added parser for Accept*:-headers 2018-05-05 06:42:56 +00:00
Philipp Schafft
e099f80af1 Fix: Only report one Upgrade:-Header on upgrade 2018-03-28 15:10:05 +00:00
Philipp Schafft
9cbc110f78 Fix: Do not announce Upgrade to TLS on TLS Mode DISABLED sockets 2017-07-23 13:14:48 +00:00
Philipp Schafft
ce2b4195da Fix: Fixes a number of empty string segfaults in config parser
This fixes a number of segfault happening in case config tags are
empty. This patch also adds warnings for most cases.

Please test for any regressions.
This should likely be ported to 2.4.4 as well.

Closes: #2265
2016-11-30 11:22:36 +00:00
Philipp Schafft
c8f565b030 Update: SECURITY File extension check for trailing characters
This changes the file extension check in a way that it no longer
ignores trailing characters. This significantly reduces the risk
for false positives while matching. However this invalidates old
setups with files like foo.xsl3. However I have never files like
that in the wild.

This is based on the patch privided by ePirat in ticket #2248.

See: #2248
2016-03-27 17:51:59 +00:00
Philipp Schafft
471cbaa60b Fix: remove tailing dots in URI.
This works around the problem that windows ignores tailing dots.
This way you could trick Icecast2 to send a XSLT file as plain text.

Please test.

Closes: #2247
2015-12-24 00:38:11 +00:00
Philipp Schafft
d3370f3d1c Cleanup: unify util.c a bit with libshout. 2015-11-28 17:58:18 +00:00
Philipp Schafft
32216013b2 Cleanup: unify util.c a bit with libshout. 2015-11-28 10:44:05 +00:00
Philipp Schafft
752b2f90fe Cleanup: mark constant loopup tables read only 2015-11-23 12:47:56 +00:00
Philipp Schafft
a650965cfd Cleanup: make util_base64_encode() useful for binary data. 2015-11-23 12:47:47 +00:00
Philipp Schafft
6605f4ddaa Fix: Let util_url_escape() handle NULL parameter.
This let util_url_escape() handle NULL passed as parameter.
In case the parameter is NULL it will also return NULL.

This patch also does some cleanup of the code such as migration
away from int and thus avoiding future failtures.

This is a re-apply of 3baa4e46aa
as git refuses to cherry-pick.
2015-04-08 10:25:25 +00:00
Philipp Schafft
c1f0eaff8a Fix: Fixed some smaller bugs such as leaks and performance improvements.
This is a first commit to correct minor problmes reported by
Denis Denisov. There is likely another commit to correct some more
such problems.

Thank you Denis Denisov.
2015-04-08 09:36:59 +00:00
Philipp Schafft
36d10121cf Feature: Support PUT with chunked transfer encoding.
This adds the Transfer-Encoding chunked to PUT support.

Please test carefully. Will add PUT to Allow: header after testing.

Have fun.

Closes: #2088
2015-02-10 21:18:52 +00:00
Philipp Schafft
79cb147c4a Cleanup: unbreak 100-continue a bit.
This tries to unbreak the 100-continue thing a bit.
Proper headers are send in case of 100-continue. Also the 200 OK
was moved to the end of the stream.
The client may even be reused. But I'm not sure we only do
'End of stream' in cases we are not on an undefined state of the
client. Do we as of now support anything that give us EOS without
a fatal socket state (error or shutdown)?

At least this unbreaks 100-continue with active TLS that was broken
as hell as we sent the header in clear over the socket. Not checking
if it was transmitted completly or something. Using lowlevel socket
calls (in contrast to the connection level calls that would have
handled the TLS just fine).

While this seem sto be a huge improvement to the situation I kindly
ask you to do a lot testing on this. Both with SOURCE as well as
PUT clients.
2015-02-10 09:44:11 +00:00
Philipp Schafft
a18e2540fb Fix: Allow client=NULL in util_http_build_header()
This fixes a bug in 8941de3273975504aaa00a35d145c3f26c832d70:
When passing NULL as client parameter to util_http_build_header()
there was a segfault before this change.
2015-02-02 01:08:37 +00:00
Philipp Schafft
19162018f4 Fix: Announce RFC 2817 TLS Support if TLS support is enabled.
This announces TLS support if enabled via Upgrade:-header.
Closes: #2159
2015-02-02 01:05:05 +00:00
Philipp Schafft
dbbd22f792 Cleanup: Set Connection:-Header via client->reuse 2015-02-02 00:50:56 +00:00
Philipp Schafft
71408e6291 Feature: Allow RFC 2817 style Upgrade command.
This allows the usage of RFC 2817 style upgrade commands.
This is not correctly announced yet.
Can hardly be tested as most clients do not support this.
Will be helpful with TLS support in libshout.
See: #2159, #2152
2015-02-02 00:34:45 +00:00