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

1705 Commits

Author SHA1 Message Date
Philipp Schafft
d9e96a55e7 Feature: Allow <resource> to match on a specific listen-socket 2018-06-30 14:06:05 +00:00
Philipp Schafft
2febabcddd Update: Corrected copyright 2018-06-30 13:57:37 +00:00
Philipp Schafft
80ffdca7d1 Feature: Allow listen sockets to virtually handle other sockets traffic.
This adds on-behalf-of="#id" to <listen-socket>. It allows a socket
to handle the traffic that was originally meant of another (virtual)
listen socket.
2018-06-30 13:51:42 +00:00
Philipp Schafft
7742bf0a21 Fix: Report correct listen URL to client.
The URL is constructed considering Protocol, TLS Mode, Host, and Port.

This considers:
 - The Host:-header as provided by the client,
 - The effective listensocket of the client,
 - Global configuration.

This works for:
 - Playlist generation,
 - Admin authed playlist generation,
 - Stats based XSLT.

It also unifies code:
 - Default stats values.

Not yet included:
 - YP requests.
2018-06-30 13:12:30 +00:00
Philipp Schafft
33588fc9cf Update: Prepare listensocket_*() API for uses with real listen socket != effective listen socket 2018-06-30 13:10:09 +00:00
Philipp Schafft
58848cbe56 Feature: Allow listen sockets to be of type "virtual" 2018-06-30 13:10:09 +00:00
Philipp Schafft
75be23b550 Fix: Also copy listener type 2018-06-30 13:10:08 +00:00
Philipp Schafft
6ad7f8d3db Feature: Added id and type property to <listen-socket> 2018-06-30 13:10:08 +00:00
Philipp Schafft
e1f944a3f5 Update: Added comment about global lock in __prepare_shoutcast_admin_cgi_request() 2018-06-30 13:10:08 +00:00
Philipp Schafft
ab8d1639ba Update: Made listensocket_* perfect thread safe. 2018-06-30 13:10:08 +00:00
Philipp Schafft
fcef3f12d6 Feature: Allow complete reconfiguration of sockets on config reload 2018-06-30 13:10:08 +00:00
Philipp Schafft
b495a407f9 Feature: Added listensocket_container_configure_and_setup() that combines configure and setup into one call 2018-06-30 13:10:08 +00:00
Philipp Schafft
a6ff1cb2d7 Update: Moved compare of two listeners into __listener_cmp() 2018-06-30 13:10:08 +00:00
Philipp Schafft
e661e14bee Moved config apply on listensocket objects into it's own function 2018-06-30 13:10:08 +00:00
Philipp Schafft
6054f5cce4 Cleanup: Mark static function as inline 2018-06-30 13:10:08 +00:00
Philipp Schafft
8848d74e58 Fix: Correctly detect error condition 2018-06-30 13:10:08 +00:00
Philipp Schafft
4279a6caea Update: Make use of listensocket_container_set_sockcount_cb() and listensocket_container_sockcount()
This fixes the starts-up-with-no-listen-sockets bug.
2018-06-30 13:10:08 +00:00
Philipp Schafft
c401bbcc12 Feature: Added listensocket_container_set_sockcount_cb() and listensocket_container_sockcount() 2018-06-30 13:10:08 +00:00
Philipp Schafft
5490120d4d Update: Rewrote listen socket handling code comepletly.
This moves all the listen socket code into a nice and abstracting file.

Notes:
* Altering listen socket setup does not yet work on config reload.
  (Did it ever work?)
* Server will start with no listen sockets. (There are unconfirmed
  rumours it sometimes(?) did before.) This is to be re-implemented
  in another commit. It can also be improved to work allow checking
  on reload or other config changes.
* For slave connections the server address is now checked against
  the allow/deny-IP list.
2018-06-30 13:10:08 +00:00
Philipp Schafft
1a426f7f81 Cleanup: Renamed *_TRANSFORMED* to *_HTML* 2018-06-29 15:25:12 +00:00
Philipp Schafft
c7910fb8bf Merge branch 'ph3-reportxml' 2018-06-29 14:37:28 +00:00
Philipp Schafft
bc6a960315 Feature: Display error code if known 2018-06-29 14:26:42 +00:00
Philipp Schafft
4e7985c168 Fix: Allocate XML namespace 2018-06-29 13:40:06 +00:00
Philipp Schafft
962805df82 Update: Added attribute "application" for node "extension" 2018-06-29 13:40:03 +00:00
Philipp Schafft
0c7073f04f Update: Attach definition to childs based on their type 2018-06-29 10:29:22 +00:00
Philipp Schafft
4188bd899f Feature: Add definition ID to the first child of generated reports 2018-06-29 10:29:19 +00:00
Philipp Schafft
6168573e86 Feature: Render error messages via Report XML and XSLT 2018-06-27 16:07:21 +00:00
Philipp Schafft
7fadb6ce86 Feature: Added function to send XML Report to client 2018-06-27 15:54:31 +00:00
Philipp Schafft
8ea908e332 Feature: Only allow those nodes as childs that are allowed as per specs 2018-06-27 15:54:31 +00:00
Philipp Schafft
5eac0d80ca Feature: Allow only the correct type of content per node 2018-06-27 15:54:31 +00:00
Philipp Schafft
7ffe12bc8b Fix: Also copy XML childs when doing a node copy 2018-06-27 15:54:30 +00:00
Philipp Schafft
e24e524cb5 Fix: Access correct object 2018-06-27 15:54:30 +00:00
Philipp Schafft
52429c714f Feature: Allow attaching XML to extentions 2018-06-27 15:54:30 +00:00
Philipp Schafft
86a62889d2 Feature: Added a way to find a node by attribute (useful for IDs). 2018-06-27 15:54:30 +00:00
Philipp Schafft
32a410bdd6 Feature: Allow xslt_transform() to send non-200 status 2018-06-27 15:54:30 +00:00
Philipp Schafft
d6a9530238 Update: Added useful logging in case report xml database has been loaded 2018-06-27 15:54:30 +00:00
Philipp Schafft
c1c5bd02e3 Fix: Corrected type detection logic for mixed-type <definition>s 2018-06-27 15:54:30 +00:00
Philipp Schafft
fecc38452a Update: Added useful error message in case of unknown node name 2018-06-27 15:54:30 +00:00
Philipp Schafft
6f9c20e230 Feature: Added global (in config) reportxml database 2018-06-27 15:54:30 +00:00
Philipp Schafft
93897aebb3 Feature: Allow fully recursive lookup of definitions 2018-06-27 15:54:30 +00:00
Philipp Schafft
5d4430a645 Update: Made norec parameter optional 2018-06-27 15:54:30 +00:00
Philipp Schafft
6f8270dcfb Update: Only look up first child if we really need to. 2018-06-27 15:54:30 +00:00
Philipp Schafft
a014f1c5cc Feature: Added first level recursive definition lookup 2018-06-27 15:54:30 +00:00
Philipp Schafft
ae489acc93 Fix: Ensure references are counted correctly in case reportxml_node_copy() fails 2018-06-27 15:54:30 +00:00
Philipp Schafft
c4dca907ab Fix: Use correct data type 2018-06-27 15:54:30 +00:00
Philipp Schafft
d9686e701a Fix: Free temp memory 2018-06-27 15:54:29 +00:00
Philipp Schafft
c60e957782 Feature: Added a database to store definitions 2018-06-27 15:54:29 +00:00
Philipp Schafft
903ac2f1b3 Feature: Added fundamental report xml handling 2018-06-27 15:54:29 +00:00
Philipp Schafft
5df79580f7 Cleanup: Removed leftover debugging output 2018-06-27 15:52:54 +00:00
Philipp Schafft
d6e87ab7bc Merge branch 'ph3-web-xslt' 2018-06-27 15:51:03 +00:00