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

103 Commits

Author SHA1 Message Date
Karl Heyes
1d5c1ebdd6 fix double free bug with failed to start relays and add a guard on refbuf release
svn path=/icecast/trunk/icecast/; revision=9859
2005-08-29 01:16:02 +00:00
Karl Heyes
a4b03ad26c minor memory leak, and compiler warning cleanup
svn path=/icecast/trunk/icecast/; revision=9857
2005-08-27 01:01:29 +00:00
Karl Heyes
d07723c997 fixes for client handling, these are all related to the handling of max clients.
I've taken out the client_create out of the connection_complete_source and put
it in slave, that way we can control the cleanup of the memory/socket better, the
change also meant fallback to file tests were slghtly different.

svn path=/icecast/trunk/icecast/; revision=9847
2005-08-25 00:07:17 +00:00
Karl Heyes
d7f1285ba2 drop the thread pool of connection threads, they were using a blocking socket
on incoming connections. Now we get the accept thread to create a client_t
and mark it as a shoutcast client if need be.  Then use a single connection
thread to poll the non-blocking sockets for the headers. When complete they
get handled as usual.

svn path=/icecast/trunk/icecast/; revision=9733
2005-08-11 23:29:58 +00:00
Karl Heyes
88bfe6ba6a small cleanups. redundant mutex removed, updates to log messages
svn path=/icecast/trunk/icecast/; revision=9443
2005-06-12 18:43:11 +00:00
Karl Heyes
84a0892cff add a few more informational stats
svn path=/icecast/trunk/icecast/; revision=9423
2005-06-09 20:54:08 +00:00
Karl Heyes
ad1e6c41b0 merge in the on-demand relay implementation.
svn path=/icecast/trunk/icecast/; revision=9406
2005-06-09 01:51:47 +00:00
Karl Heyes
72ad63f763 missed a merge for stats update for when the relay ends. The rest is minor
stuff, type check cleanup and code reduction in YP

svn path=/icecast/trunk/icecast/; revision=9331
2005-05-31 02:48:40 +00:00
Karl Heyes
d57a19acac various small things. type cleanups, loop over the burst point to make sure
it is at the right point. kick off the YP 'add' 5 seconds after source startup
so that any stats are processed.

svn path=/icecast/trunk/icecast/; revision=9314
2005-05-26 03:04:48 +00:00
Karl Heyes
5b9e7f1660 use minimal stats for inactive mountpoints that have an active fallback.
svn path=/icecast/trunk/icecast/; revision=9286
2005-05-16 00:16:12 +00:00
Karl Heyes
018fff1158 Allow for username to be stated for master/slave setups, we still default
to 'relay' though

svn path=/icecast/trunk/icecast/; revision=9274
2005-05-13 00:35:08 +00:00
Karl Heyes
22aa8719e2 allow for changes in relay settings to trigger a relay restart
svn path=/icecast/trunk/icecast/; revision=9226
2005-05-07 11:50:07 +00:00
Karl Heyes
19cb11cc31 merge in a few fixes and cleanups I've accumulated in my branch.
svn path=/icecast/trunk/icecast/; revision=9152
2005-04-18 14:32:26 +00:00
Karl Heyes
4066a89c01 allow a relay to provide user/pass when connecting
svn path=/icecast/trunk/icecast/; revision=8358
2004-12-09 17:08:52 +00:00
oddsock
80078cce1d * support for the Shoutcast DSP (yay!).
You can now use the Shoutcast DSP as a source client.  The connection 
    protocol is a bit odd, and we had to handle it separately, and thus 
    we've added a new config option (<shoutcast-compat>) that is set at 
    the listener port level.
* support for NSV (and the nsvscsrc source client).
    After adding support for the connection protocol of the shoutcast DSP, 
    adding NSV was just a simple of a few special handling cases.
* removed all traces of the earlier attempt at the shoutcast DSP connection 
  protocol
* Due to the growing complexity of the config files, I've also created a 
  few alternate config files, namely one for a "shoutcast compat" setup
  as well as a "minimal" one for quick basic configurations.

svn path=/icecast/trunk/icecast/; revision=8191
2004-11-11 15:47:33 +00:00
oddsock
f86d02bb58 add volatile keywords to a few variables
reset max_interval back to 0 on slave initialization

svn path=/icecast/trunk/icecast/; revision=8112
2004-10-27 03:29:56 +00:00
Karl Heyes
17537d2457 When starting relay threads, have the relay thread do the connection not the
slave thread.  Also improve cleanup handling and log messages as well

svn path=/icecast/trunk/icecast/; revision=8068
2004-10-23 00:44:29 +00:00
Karl Heyes
ac73dff07a Add a couple of warnings, YP code not built and failed streamlist
from master server

svn path=/icecast/trunk/icecast/; revision=7599
2004-08-21 12:56:24 +00:00
Karl Heyes
a255c92b5f update move clients code, small cleanups in other places
svn path=/trunk/icecast/; revision=5869
2004-02-27 15:15:40 +00:00
Karl Heyes
176804e436 Add accumulative stats back for source connections and don't hold locks
while writing responses back to the client.

svn path=/trunk/icecast/; revision=5853
2004-02-20 17:42:57 +00:00
Karl Heyes
ae825afd3e Make the slave thread reserve relay mountpoints, and prevent reconnection
when a relay is currently active.

svn path=/trunk/icecast/; revision=5845
2004-02-19 20:28:21 +00:00
Karl Heyes
b24028f620 recheck the relays after the HUP has been handled
svn path=/trunk/icecast/; revision=5807
2004-02-02 19:22:11 +00:00
Michael Smith
0aad6d849c Add Copyright notice to each source file, as requested by debian.
svn path=/trunk/httpp/; revision=5792
2004-01-29 01:02:12 +00:00
Michael Smith
57dd5f71a5 Client authentication added.
Melanie's multilevel fallbacks added (after major changes).

svn path=/trunk/icecast/; revision=5760
2004-01-15 01:01:09 +00:00
Karl Heyes
e8546d44d4 Fetching the stream list was failing after the config file was re-read.
svn path=/trunk/icecast/; revision=5701
2003-12-17 23:03:38 +00:00
oddsock
e8a61ce5d3 fixed master-slave relaying...
* slaves now ask for /admin/streamlist.txt which serves a plaintext version of the source list (this is what it was expecting to get)
* /admin/streamlist still serves XML (which slave.c wasn't expecting)
* fixed a few cases of pointer invalidation due to possible config re-reading.
* slave relay now uses relay password to get the list of streams to relay

svn path=/trunk/icecast/; revision=5695
2003-12-12 23:06:44 +00:00
Karl Heyes
43953202a2 refer to cfgfile.h instead of config.h for icecast.xml, and use config.h
for autoconf

svn path=/trunk/icecast/; revision=5156
2003-07-21 01:58:54 +00:00
Karl Heyes
508d25641d avoid header namespace clashes
svn path=/trunk/icecast/; revision=5146
2003-07-16 19:41:59 +00:00
Michael Smith
8527ed7b43 Implementation of aliases contributed by Paul Donohue <icecast@TopQuark.net>
svn path=/trunk/icecast/; revision=4629
2003-04-23 12:44:29 +00:00
brendan
8651aabcbb First crack at making YP/curl optional.
svn path=/trunk/icecast/; revision=4552
2003-03-27 17:10:14 +00:00
Michael Smith
3b2df1d0d9 Brendan was getting pissed off about inconsistent indentation styles.
Convert all tabs to 4 spaces. All code must now use 4 space indents.

svn path=/trunk/avl/; revision=4492
2003-03-15 02:10:19 +00:00
Michael Smith
d1e8e7bfb7 Send a user-agent header on normal relay requests as well.
svn path=/trunk/icecast/; revision=4417
2003-03-06 14:52:09 +00:00
Michael Smith
d13ebde7a3 Allow rereading config files.
Lots of new locking happening so that it's safe to have the config file
disappear under the rest of the program

Does NOT affect currently-running sources at the moment

svn path=/trunk/icecast/; revision=4406
2003-03-05 13:03:35 +00:00
Michael Smith
680e56bf7b mp3 metadata relaying now works (lots of bugs fixed)
svn path=/trunk/icecast/; revision=4366
2003-02-25 09:40:34 +00:00
Michael Smith
5019130d27 Max queue length for clients is now
a) based on total bytes in queue, not total number of buffers in queue
    b) configurable (defaults to 100 kB)

mp3 metadata relaying (inline). Untested.

svn path=/trunk/icecast/; revision=4364
2003-02-24 13:37:15 +00:00
Michael Smith
76fc62810e Fix a serious bug with source creation in relays when local-mount != mount,
and fix a series of locking bugs in source creation.

svn path=/trunk/icecast/; revision=4352
2003-02-17 11:56:12 +00:00
Michael Smith
08ad72ffed Allow configuring local mountpoint seperately from remote mountpoint
svn path=/trunk/icecast/; revision=4340
2003-02-12 11:04:26 +00:00
Michael Smith
a3ee7cf61a Sigh. And another.
svn path=/trunk/icecast/; revision=4332
2003-02-07 14:00:33 +00:00
Michael Smith
037789bc1a Add format detection workaround for icecast 1.x, which is buggy and doesn't
send a content-type header.

svn path=/trunk/icecast/; revision=4329
2003-02-07 11:56:40 +00:00
Michael Smith
8600634e68 Fix relaying. Oops.
svn path=/trunk/icecast/; revision=4328
2003-02-07 11:46:03 +00:00
Michael Smith
e3bb942ed9 Rearrange some relaying code.
Add ability to configure individual relays as well (i.e. single stream, rather
than all the streams from a server).

svn path=/trunk/icecast/; revision=4327
2003-02-07 10:53:38 +00:00
oddsock
e07080a0d8 added references to geturl.h
svn path=/trunk/icecast/; revision=4314
2003-02-02 14:33:47 +00:00
Michael Smith
5275ab34b9 Better file-serving, rationalisation of some paths
svn path=/trunk/icecast/; revision=4181
2002-12-30 15:42:38 +00:00
Michael Smith
40444f4178 mp3 metadata work (incomplete)
svn path=/trunk/icecast/; revision=4177
2002-12-30 07:55:56 +00:00
Michael Smith
65c0bfbba5 Fix up types after thread type rename earlier.
svn path=/trunk/icecast/; revision=4175
2002-12-29 15:46:32 +00:00
Michael Smith
d218eedf9a Plug several small memory leak, and one huge one in the xslt output code
svn path=/trunk/icecast/; revision=4174
2002-12-29 14:06:20 +00:00
Michael Smith
2e21e899c9 Minor incompatible change to relaying, to match actual protocol.
svn path=/trunk/icecast/; revision=4169
2002-12-29 09:21:32 +00:00
Michael Smith
14b28dd860 Fall back to using the source-password if no master-password is set.
svn path=/trunk/icecast/; revision=3849
2002-08-17 06:25:38 +00:00
Michael Smith
121720a4cc Fix relaying to work with new auth scheme.
svn path=/trunk/icecast/; revision=3838
2002-08-16 14:55:56 +00:00
Michael Smith
913ec3481a HTTP Basic source login support. The old "ice-password" method is still
available, but is deprecated and turned off by default.

svn path=/trunk/icecast/; revision=3837
2002-08-16 14:26:48 +00:00
Michael Smith
5d06975c44 Various cleanups
svn path=/trunk/icecast/; revision=3791
2002-08-10 03:22:44 +00:00
Michael Smith
8d75eb0b4a Logging cleanups, and a config file fix.
svn path=/trunk/icecast/; revision=3773
2002-08-09 08:06:00 +00:00
Michael Smith
f1dc57ae2b Cleaned up version of Ciaran Anscomb's relaying patch.
svn path=/trunk/httpp/; revision=3760
2002-08-05 14:48:04 +00:00