1
0
mirror of https://gitlab.xiph.org/xiph/icecast-server.git synced 2025-01-03 14:56:34 -05:00
Commit Graph

1609 Commits

Author SHA1 Message Date
Philipp Schafft
9e852dae50 Feature: Added a global client list 2021-07-26 15:05:04 +00:00
Philipp Schafft
6643cfd743 Feature: Seed PRNG with relay data 2021-07-26 15:05:04 +00:00
Philipp Schafft
299d86d18d Feature: Seed PRNG with yp replies 2021-07-26 15:05:04 +00:00
Philipp Schafft
5ecf76e5d1 Fix: Typo 2021-07-26 15:05:04 +00:00
Philipp Schafft
75fc9bb751 Feature: Just swallow parts of the config as extra PRNG seed 2021-07-26 15:05:04 +00:00
Philipp Schafft
2be5318067 Feature: Read standard OpenSSL random seed file if any and linked with OpenSSL 2021-07-26 15:05:04 +00:00
Philipp Schafft
a5f7b621c0 Feature: Work around and warn user if no PRNG seeds are configured 2021-07-26 15:05:04 +00:00
Philipp Schafft
f688dce8a5 Feature: Added support for PRNG_SEED_TYPE_STATIC, and PRNG_SEED_TYPE_PROFILE 2021-07-26 15:05:04 +00:00
Philipp Schafft
6091b6b278 Update: Use timing_get_time() not time() for seeding, it adds about 10 bits 2021-07-26 15:05:04 +00:00
Philipp Schafft
8d80ef6a8b Feature: Crossseed with OpenSSL if we have OpenSSL 2021-07-26 15:05:04 +00:00
Philipp Schafft
43155d7273 Feature: Abuse _slave_thread() to run prng_auto_reseed() in the breaks 2021-07-26 15:05:04 +00:00
Philipp Schafft
bf5a25ff45 Feature: Added API for auto-reseeding 2021-07-26 15:05:04 +00:00
Philipp Schafft
6d91c12acf Fix: Migrated from fopen/fread/fclose to open/read/close for reading files
stdio may buffer the input and may read to far ahead. This is not a good
idea with high quality PRNG devices as it may take significant time to
do so, and remove entropy that will just be discarded.
2021-07-26 15:05:04 +00:00
Philipp Schafft
8c567e5005 Update: Also seed with the length of our seed 2021-07-26 15:05:04 +00:00
Philipp Schafft
1654cadab3 Feature: Added support for providing PRNG seeds via config 2021-07-26 15:05:04 +00:00
Philipp Schafft
a30b15df90 Fix: Fixed bugs in prng.c 2021-07-26 15:05:04 +00:00
Philipp Schafft
5176c7232b Update: Improved type casts a bit 2021-07-26 15:05:04 +00:00
Philipp Schafft
70419a33b5 Feature: Added PRNG 2021-07-26 15:05:04 +00:00
Philipp Schafft
2b9edf6fd1 Feature: Added support to copy a digest 2021-07-26 15:05:04 +00:00
Philipp Schafft
fa95e94c65 Fix: Corrected a memory corruption 2021-07-26 15:05:04 +00:00
Philipp Schafft
29c5bd8d85 Feature: Added digest_algo_id2str() and digest_algo_length_bytes() 2021-07-26 15:05:04 +00:00
Philipp Schafft
9560620c02 Feature: Added SHA3 support 2021-07-26 15:05:04 +00:00
Philipp Schafft
bbddb556ef Feature: Added abstract refobject for digest calculation 2021-07-26 15:05:04 +00:00
Philipp Schafft
355d7e976b Feature: Allow client altering on auth fail and acl deny
This adds the following tags to the config file below <role>:
* <on-failed-action>:   Action to take on auth fail
* <on-failed-argument>: Argument for action on auth fail
* <on-deny-action>:     Action to take on acl deny
* <on-deny-argument>:   Argument for action on acl deny

All client alter actions are supported. The corresponding
auth does not need to have the permission for those operations.

Notes:
    Likely <on-deny-*> should be moved below <acl>, See: #2351

Closes: #1272
2020-10-18 16:10:26 +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
Philipp Schafft
c3340dd73d Fix: Handle safe HTTP methods in unsafe context correctly
Closes: #2398
2020-10-15 15:23:52 +00:00
Philipp Schafft
e43fd645c1 Feature: Support names for ACLs
Closes: #2347
2020-10-15 14:20:09 +00:00
Philipp Schafft
726bef6d81 Fix: Corrected formating 2020-10-15 13:54:40 +00:00
Philipp Schafft
5f3efe5d52 Fix: Corrected error code for mounts with max listeners reached
Closes: #738
2020-10-15 13:50:10 +00:00
Philipp Schafft
8fac31520c Cleanup: Removed unused var unique_tag 2020-10-15 10:46:46 +00:00
Philipp Schafft
2e377a3e31 Feature: Handle gracefully when a logfile is not configured 2020-10-15 08:57:20 +00:00
Philipp Schafft
1c6d6ae67b Feature: Support loading maintainance entries for dashboard from database 2020-10-14 10:50:03 +00:00
Philipp Schafft
2af9830c92 Feature: Added reportxml_database_build_fragment() 2020-10-14 10:45:00 +00:00
Philipp Schafft
0fb71d4b98 Update: Corrected dashboard generation, but still needs some more updates 2020-10-13 06:07:28 +00:00
Philipp Schafft
ff34cd0522 Cleanup: Replaced html_success()'s own data sending with client_send_buffer() 2020-10-12 19:55:55 +00:00
Philipp Schafft
55b6378023 Cleanup: Unified code sending responses to client some 2020-10-12 18:23:11 +00:00
Philipp Schafft
33c9d81cb6 Fix: Do not use wildcard addresses for hostname generation
See: #2365
2020-10-11 15:53:51 +00:00
Philipp Schafft
88e2cdd465 Feature: Added a stats.xml entry <display-title> to replace <title>, and <artist> 2020-10-11 15:30:18 +00:00
Philipp Schafft
ea6dd6954a Feature: Added new admin command publicstats with a public view of the stats 2020-10-11 14:50:30 +00:00
Philipp Schafft
7a3eb6f530 Fix: Push ICY metadata from upstream servers into the format's vc block 2020-10-11 13:18:18 +00:00
Philipp Schafft
d388ef1feb Fix: Send correct <iceresponse> for admin command manageauth
Note: This is only done in operation mode strict and for JSON output
      to avoid breaking older clients.
2020-10-11 10:03:22 +00:00
Philipp Schafft
9ad34f97ad Feature: Added JSON output for admin command manageauth 2020-10-11 08:51:38 +00:00
Philipp Schafft
5e9feb611a Feature: Added JSON output for admin commands listclients, listmounts, streamlist, moveclients, and updatemetadata 2020-10-11 08:18:55 +00:00
Philipp Schafft
25f23c4192 Feature: Added JSON output for admin commands showlog and dashboard 2020-10-10 20:59:39 +00:00
Philipp Schafft
4cec193029 Feature: Unify generic xml2json rendering with <icestats>, <iceresponse>, and report xml 2020-10-10 20:59:38 +00:00
Philipp Schafft
77ea98730b Feature: Added support for JSON rendering of report xml 2020-10-10 20:59:38 +00:00
Philipp Schafft
ea5b21b58c Feature: Added support for definition, and akindof to handle_node_identification() 2020-10-10 20:59:38 +00:00
Philipp Schafft
c900f0b18f Fix: Set xmlns for <icestats> in reports 2020-10-10 20:59:38 +00:00
Philipp Schafft
4a54efbc46 Feature: Include node identification for <iceresponse> messages 2020-10-10 20:59:38 +00:00
Philipp Schafft
36ff987e89 Feature: Unified node identification in a single function 2020-10-10 20:59:38 +00:00
Philipp Schafft
cc13aba182 Feature: Added constants for XML namespaces 2020-10-10 20:59:38 +00:00
Philipp Schafft
a8a3207cce Feature: Added node for node identification 2020-10-10 20:59:38 +00:00
Philipp Schafft
f52d7ae077 Feature: Added experimental STATS_JSON_REQUEST "stats.json" 2020-10-10 20:59:38 +00:00
Philipp Schafft
6ba8ab1db5 Update: Use different xmlns depending on root node 2020-10-10 20:59:38 +00:00
Philipp Schafft
2a4ed04671 Feature: Handle <max_listeners> and <authenticator> nicer 2020-10-10 20:59:38 +00:00
Philipp Schafft
02e9c048d0 Fix: Handle bytes >= 0x80 correctly 2020-10-10 20:59:37 +00:00
Philipp Schafft
61d68a13b4 Fix: Report sources correctly 2020-10-10 20:59:37 +00:00
Philipp Schafft
3af23324f0 Feature: Added that much of a XSPF -> JSPF renderer as we need 2020-10-10 20:59:37 +00:00
Philipp Schafft
758a67c475 Update: More aggressively use workaround for xmlns as property 2020-10-10 20:59:37 +00:00
Philipp Schafft
b9652444ff Feature: Workaround for xmlns set as property 2020-10-10 20:59:37 +00:00
Philipp Schafft
30f9e89e26 Feature: Added a basic renderer for <icestats> 2020-10-10 20:59:37 +00:00
Philipp Schafft
9be721723c Feature: Added function for writing boolean XML nodes as JSON 2020-10-10 20:59:37 +00:00
Philipp Schafft
adef1ef38e Feature: Added support for a container object holding a list of XML nodes 2020-10-10 20:59:37 +00:00
Philipp Schafft
7a9d42209e Update: Generify the render_node_legacyresponse() code a bit 2020-10-10 20:59:37 +00:00
Philipp Schafft
3fd16ac834 Feature: Added support for JSON output on <iceresponse>-style XML commands 2020-10-10 20:59:37 +00:00
Philipp Schafft
236c0dfa56 Feature: Added a renderer for <iceresponse>-style XML 2020-10-10 20:59:37 +00:00
Philipp Schafft
6fc7f21a11 Feature: Improved logic for selecting a specific renderer 2020-10-10 20:59:37 +00:00
Philipp Schafft
1666b478a1 Update: Only set namespace for reportxml if not used for XSLT 2020-10-10 20:59:37 +00:00
Philipp Schafft
5045271d3c Feature: Added infrastructure to send JSON as part of admin/ 2020-10-10 20:59:36 +00:00
Philipp Schafft
2130a80f70 Update: Changed xml2json_render_doc_simple's signature 2020-10-10 20:59:36 +00:00
Philipp Schafft
c7be3122db Feature: Added super basic logic for namespace based render selecting 2020-10-10 20:59:36 +00:00
Philipp Schafft
b44df0da76 Feature: Support JSON mapping for all reportxml based outputs 2020-10-10 20:59:36 +00:00
Philipp Schafft
deaad3246c Feature: Assign ADMIN_FORMAT_JSON 2020-10-10 20:59:36 +00:00
Philipp Schafft
731ac5c8e6 Feature: Added a basic outline of how converting could happen with a first generic mapping format 2020-10-10 20:59:36 +00:00
Philipp Schafft
395b994707 Fix: Set namespace correctly for child nodes 2020-10-10 20:59:36 +00:00
Philipp Schafft
34fa9f0ce3 Fix: Export xmlns as namespace not property 2020-10-10 20:59:36 +00:00
Philipp Schafft
7b5f52d77d Fix: Corrected memory allocator 2020-10-10 20:59:36 +00:00
Philipp Schafft
4cab251919 Feature: Added stub src/xml2json.[ch] 2020-10-10 20:59:36 +00:00
Philipp Schafft
dccf0e046a Feature: Added comments/docs for JSON renderer in the header 2020-10-10 20:59:36 +00:00
Philipp Schafft
9afbfcf40e Update: Made json_renderer_finish() take a pointer to the renderer 2020-10-10 20:59:35 +00:00
Philipp Schafft
2400df01ca Feature: Implement JSON renderer 2020-10-10 20:59:35 +00:00
Philipp Schafft
5a72f70dcb Feature: Outlined basic API 2020-10-10 20:59:35 +00:00
Philipp Schafft
261ee12c04 Feature: Added stub src/json.[ch] 2020-10-10 20:59:35 +00:00
Philipp Schafft
96d6190dbf Fix: Re-implemented <no-mount>.
Closes: #2335
2020-10-10 13:44:37 +00:00
Philipp Schafft
b9d00301e7 Update: Reformated code attaching a listener to a source 2020-10-10 13:21:19 +00:00
Philipp Schafft
3a6a7f6b5a Fix: Fixed usage of <shoutcast-compat> with <shoutcast-mount>.
Closes: #2363
2020-10-10 12:49:42 +00:00
Philipp Schafft
114a8b6b88 Update: Converted whether or not to show listeners in stats to a flag 2020-10-09 16:01:24 +00:00
Philipp Schafft
5eb09ca5de Update: Convert stats_get_xml() to take flags 2020-10-09 15:43:57 +00:00
Philipp Schafft
1a5359025c Fix: Do not allow the source to set random stats values'
If your software depends on those values you likely want to
use the corresponding audio_*-values.
2020-10-09 15:24:31 +00:00
Philipp Schafft
196a6170cc Feature: Pass query parameters to admin/ui/ templates 2020-10-09 11:10:51 +00:00
Philipp Schafft
12806c0853 Update: Added client_protocol_from_string() and client_protocol_to_string() 2020-10-03 18:35:40 +00:00
Philipp Schafft
d6fcedd5b8 Fix: Unref report after sending it 2020-10-03 11:57:27 +00:00
Philipp Schafft
d7f8911510 Feature: Added support for /admin/ui/ 2020-10-03 11:56:06 +00:00
Philipp Schafft
19b830e0d8 Feature: Support matching strings 2020-10-03 11:30:09 +00:00
Philipp Schafft
45818ae8bd Feature: Made the set fallback feature accessable via web interface
Not exactly new year, but at least German Unity Day.
2020-10-03 10:28:52 +00:00
Philipp Schafft
4da6d6e243 Update: Use helper functions for reportxml 2020-10-03 09:10:15 +00:00
Philipp Schafft
b01cb8d4e7 Feature: Added some basic helpers 2020-10-03 09:01:26 +00:00
Philipp Schafft
44af32bac5 Feature: Added stub src/reportxml_helper.[ch] 2020-10-03 08:51:22 +00:00
Philipp Schafft
b1c4b9ac49 Update: Updated copyright statements 2020-10-03 08:44:37 +00:00