Karl Heyes
7fadd89273
use a client function to read an incoming stream, simplifies handling within
...
the format specific files. Also add total read/sent stats per mountpoint.
Updates the stats every 5 secs currently
svn path=/icecast/trunk/icecast/; revision=9241
2005-05-08 13:51:05 +00:00
Karl Heyes
e2d6bdb86a
add function to do mount list search (could be extended later), call it from
...
various places including the shoutcast source client auth which previously
only used the global source password.
svn path=/icecast/trunk/icecast/; revision=9240
2005-05-08 11:54:46 +00:00
Karl Heyes
6d48d6c4f9
Allow for specifiying a per-mount metadata interval for shoutcast style streams
...
svn path=/icecast/trunk/icecast/; revision=9233
2005-05-07 20:18:13 +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
b1dcee52a8
Add more Ogg codec handlers, there has not been that much testing on these
...
mainly due to client support, but they are only for detection and plug
straight into the ogg handler.
The win32 project files will need updating to take the new files into account
svn path=/icecast/trunk/icecast/; revision=9225
2005-05-07 11:01:35 +00:00
Karl Heyes
2a2938b68b
merge from branch. push clients count handling to the client_create/_destroy
...
functions. call client_create in the general handler and pass client_t to the
specific handler including the stats request handler, which now logs in the
access log.
svn path=/icecast/trunk/icecast/; revision=9220
2005-05-06 15:57:15 +00:00
Karl Heyes
acc79b778f
from branch. make streamlist.txt from the mount list, so that fallback handling
...
can be taken into account. If we just use the source tree then entries can
disappear causing a relay to shutdown in the slave.
svn path=/icecast/trunk/icecast/; revision=9213
2005-05-05 20:05:15 +00:00
Karl Heyes
8e99b390f2
safety check, avoid the case of a cyclic cascading fallback
...
svn path=/icecast/trunk/icecast/; revision=9196
2005-05-01 02:30:06 +00:00
Karl Heyes
9253bf7248
merge from branch, stats client details are not being removed when they exit
...
svn path=/icecast/trunk/icecast/; revision=9195
2005-05-01 02:04:11 +00:00
Karl Heyes
acd1b8ad96
merge from branch, make the config lock a rwlock instead of mutex
...
svn path=/icecast/trunk/icecast/; revision=9160
2005-04-20 22:34:54 +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
f502efd2f5
simple sanity check
...
svn path=/icecast/trunk/httpp/; revision=9126
2005-04-08 03:48:08 +00:00
Michael Smith
f28ded9fbb
A bug report indirectly suggested the base64 decode code was confusing (as the
...
treatment of padding was un-obvious), so added a comment explaining it.
svn path=/icecast/trunk/icecast/; revision=9075
2005-03-14 23:41:11 +00:00
Michael Smith
d43484d49a
Fix various places where "clients" stats value was decremented without having
...
previously been incremented.
svn path=/icecast/trunk/icecast/; revision=9074
2005-03-14 23:07:34 +00:00
Michael Smith
af3d1f716b
Remove references to -h option, which doesn't exist, and which users could only
...
ever find out about by running a command that did what -h claimed to do.
svn path=/icecast/trunk/icecast/; revision=8976
2005-02-24 00:39:08 +00:00
brendan
82a9fa3bc7
Whoops, don't spin if ufds is null.
...
svn path=/icecast/trunk/icecast/; revision=8959
2005-02-19 22:44:09 +00:00
brendan
00749e6a68
The poll version of fserve_client_waiting causes icecast to die with an
...
assertion when it first starts up on OS X, because ufds starts out NULL.
I'd been using the select version until now and never noticed.
svn path=/icecast/trunk/icecast/; revision=8956
2005-02-19 20:56:04 +00:00
Michael Smith
bada4b1c41
Make a debug message into a warning message, so it'll be logged more often
...
(since it's useful), and make it print out the file that it failed to find,
so that users can figure out what to do.
svn path=/icecast/trunk/icecast/; revision=8934
2005-02-16 00:54:55 +00:00
Michael Smith
533dfb6b0f
Fix spelling in debug messages.
...
svn path=/icecast/trunk/icecast/; revision=8774
2005-01-21 06:44:21 +00:00
Karl Heyes
df919a9691
only unlock when we have finished with the stylesheet, potential race otherwise
...
svn path=/icecast/trunk/icecast/; revision=8723
2005-01-11 16:36:34 +00:00
Karl Heyes
6c4c02d482
small fixes
...
svn path=/icecast/trunk/icecast/; revision=8596
2005-01-03 17:48:54 +00:00
oddsock
c0a79970f9
remove depricated include file
...
svn path=/icecast/trunk/icecast/; revision=8510
2004-12-21 19:23:35 +00:00
Karl Heyes
f0e7a859ab
minor type cleanup in fserve, include correct header for ogg
...
svn path=/icecast/trunk/icecast/; revision=8481
2004-12-18 00:11:56 +00:00
Karl Heyes
e59095b11a
make vorbis specific stat names consistent with the existing ones, and make
...
sure if unknown ogg codecs are sent then it is logged
svn path=/icecast/trunk/icecast/; revision=8480
2004-12-17 21:05:20 +00:00
Karl Heyes
a2c849ed7c
make recent YP updates follow agreed spec
...
svn path=/icecast/trunk/icecast/; revision=8479
2004-12-17 20:03:26 +00:00
oddsock
ad39d9a450
removed unneeded variable
...
svn path=/icecast/trunk/icecast/; revision=8369
2004-12-10 23:24:08 +00:00
Karl Heyes
66568ed242
fix minor memory leak
...
svn path=/icecast/trunk/icecast/; revision=8364
2004-12-10 17:27:06 +00:00
Karl Heyes
d077dc4b28
add subtype to yp add phase, this is to identify the codecs in use
...
svn path=/icecast/trunk/icecast/; revision=8360
2004-12-10 00:11:16 +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
j
1e839f83ea
- add video_quality
...
- update status.xsl with new info about theora streams
svn path=/icecast/trunk/icecast/; revision=8355
2004-12-08 20:13:17 +00:00
Karl Heyes
92e2c8f81c
added theora stats
...
svn path=/icecast/trunk/icecast/; revision=8354
2004-12-08 19:31:33 +00:00
Karl Heyes
9fd0b2974f
I should fix the leak properly :)
...
svn path=/icecast/trunk/icecast/; revision=8349
2004-12-08 02:36:03 +00:00
Karl Heyes
d124e7ca32
duplicate unlock left in
...
svn path=/icecast/trunk/icecast/; revision=8348
2004-12-08 02:30:01 +00:00
Karl Heyes
ee1c27509c
provide max_listeners to YP, yp touch fixup and minor memory leak fixed
...
svn path=/icecast/trunk/icecast/; revision=8347
2004-12-08 02:28:07 +00:00
oddsock
f09ae872d6
removal of old and unused code
...
add '+' to those fields that are url decoded.
svn path=/icecast/trunk/httpp/; revision=8346
2004-12-07 22:42:50 +00:00
oddsock
b3d5a657d2
add a new web admin feature which allows the updating of metadata (now that we support metadata updates for most stream types). This is an new admin feature.
...
add cluster-password to the config to allow for future clustering of relays on the xiph stream directory.
svn path=/icecast/trunk/icecast/; revision=8345
2004-12-07 22:29:46 +00:00
oddsock
eb9e11b0c6
win32 compile
...
svn path=/icecast/trunk/icecast/; revision=8342
2004-12-07 21:47:28 +00:00
Karl Heyes
2bd23d9050
merge multi ogg codec handling. Handle theora and/or vorbis. Place new
...
clients before keyframe. For vorbis-only streams, perform rebuild to
flush pages more frequently and to provide url updating mechanism for
titles
svn path=/icecast/trunk/icecast/; revision=8341
2004-12-07 21:06:26 +00:00
Karl Heyes
a521d15d74
merge per-mount hidden setting. prevent specific mountpoints being listed
...
on status.xsl and streamlist
svn path=/icecast/trunk/icecast/; revision=8245
2004-11-22 18:21:48 +00:00
Karl Heyes
2b4ee737db
add per-mount no-yp tag handling
...
svn path=/icecast/trunk/icecast/; revision=8241
2004-11-21 15:51:49 +00:00
Karl Heyes
c7432d6602
minor cleanups
...
svn path=/icecast/trunk/icecast/; revision=8236
2004-11-20 02:16:59 +00:00
Karl Heyes
7dfcbf560c
skip the listing of the source mountpoint when moveclients is requested
...
without a destination
svn path=/icecast/trunk/icecast/; revision=8235
2004-11-19 23:04:27 +00:00
Karl Heyes
889e260490
allow for shoutcast metadata updates to auth with admin/per-mount/global
...
source password
svn path=/icecast/trunk/icecast/; revision=8232
2004-11-19 15:05:36 +00:00
oddsock
731f24d050
handle supported content-types in a more generic way now. This will allow things like AAC, AACPlus, NSV, and others to be streamed through icecast. We have a special case for vorbis streams, and everything else falls into the generic case.
...
svn path=/icecast/trunk/icecast/; revision=8226
2004-11-18 23:49:59 +00:00
Karl Heyes
524d467a25
missing test from a previous patch, the running check needs to apply as well
...
svn path=/icecast/trunk/icecast/; revision=8223
2004-11-18 19:47:39 +00:00
Karl Heyes
b2b2850708
prevent updated metadata being passed to listeners when the text hasn't
...
actually changed
svn path=/icecast/trunk/icecast/; revision=8214
2004-11-17 20:35:35 +00:00
Karl Heyes
1e6232c531
add <shoutcast-mount>. drop the hardcoded mountpoint hacks for NSV
...
svn path=/icecast/trunk/icecast/; revision=8213
2004-11-17 16:02:04 +00:00
Karl Heyes
14f88b3267
pass the fserve_t not the client_t
...
svn path=/icecast/trunk/icecast/; revision=8212
2004-11-17 14:12:39 +00:00
oddsock
241dd76291
need to fail properly
...
svn path=/icecast/trunk/icecast/; revision=8206
2004-11-16 04:27:00 +00:00
oddsock
083f5c0cd1
this patch adds a playlist log to icecast. This can be used to maintain an audit trail of metadata that comes through icecast. The format of the log file may be changed in the future as we decide on a good format.
...
svn path=/icecast/trunk/icecast/; revision=8205
2004-11-16 04:04:02 +00:00
oddsock
d7a30dc0cf
darn ansi C.....
...
svn path=/icecast/trunk/icecast/; revision=8202
2004-11-15 15:55:43 +00:00
oddsock
acbef39c57
a few fixes from karl...
...
svn path=/icecast/trunk/icecast/; revision=8201
2004-11-15 15:50:59 +00:00
oddsock
726e8fc099
should be a long long, instead of a long
...
svn path=/icecast/trunk/icecast/; revision=8200
2004-11-15 03:53:16 +00:00
oddsock
fa56e5b64d
much better support for the Range request header, which means that seeking actually *works* now for file serving.
...
svn path=/icecast/trunk/icecast/; revision=8199
2004-11-15 03:50:42 +00:00
Michael Smith
5850a9b3c3
Use 64 bit content-length for fileserving (if supported by system)
...
svn path=/icecast/trunk/icecast/; revision=8196
2004-11-11 22:36:03 +00:00
oddsock
4e20c79edf
add Content-Length to files served via the fserve to enable seeking
...
svn path=/icecast/trunk/icecast/; revision=8192
2004-11-11 16:21:01 +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
a01317753d
added a content-length for flash-based players. This will allow for them to stream mp3 from icecast.
...
svn path=/icecast/trunk/icecast/; revision=8160
2004-11-04 15:55:13 +00:00
Karl Heyes
89bffcd104
add fallback mime type for css
...
svn path=/icecast/trunk/icecast/; revision=8154
2004-11-01 23:41:58 +00:00
oddsock
6127fea475
* fix bug of not using url decoding value when processing audio_info string
...
* we now process server name and description if we are not a public stream
* Added quality to status.xsl
svn path=/icecast/trunk/icecast/; revision=8131
2004-10-29 15:31:56 +00:00
Karl Heyes
17c178555f
correct type for volatile usage and uncomment log message for stats updating
...
svn path=/icecast/trunk/icecast/; revision=8123
2004-10-27 14:13:29 +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
9652319c38
An alias could disappear from under us, so copy the string
...
svn path=/icecast/trunk/icecast/; revision=8108
2004-10-26 19:29:12 +00:00
Karl Heyes
7eed9c793b
small updates. reject source client with invalid mountpoint, avoid aliasing
...
issues with queue and id, and change handler to avoid leaving clients on the
connection queue (rare)
svn path=/icecast/trunk/icecast/; revision=8107
2004-10-26 16:31:16 +00:00
Karl Heyes
3026e1d089
small cleanups. fix buffer sizing, const and unused struct member
...
svn path=/icecast/trunk/icecast/; revision=8104
2004-10-26 14:21:36 +00:00
Karl Heyes
bc9ab55cbb
avoid aliasing issues, and make sure each server can take a seperate
...
default interval as defined in the xml
svn path=/icecast/trunk/icecast/; revision=8101
2004-10-25 21:10:10 +00:00
Karl Heyes
82c116a72d
the check for the public stream flag wasn't working correctly in all cases
...
svn path=/icecast/trunk/icecast/; revision=8100
2004-10-25 20:46:12 +00:00
Karl Heyes
8aaf433aa4
add check for header when relaying from v2.0
...
svn path=/icecast/trunk/icecast/; revision=8098
2004-10-25 18:51:45 +00:00
oddsock
a52caeb2b0
fix line endings...
...
svn path=/icecast/trunk/icecast/; revision=8096
2004-10-25 15:51:50 +00:00
Karl Heyes
000a33b9cb
a couple of potential bad pointer type problems
...
svn path=/icecast/trunk/icecast/; revision=8095
2004-10-25 15:42:04 +00:00
oddsock
b8f3963aad
Fix CLF on win32. Apparently, windows doesn't support the %z flag of strftime() so we need to roll our own...Buzilla Bug #509
...
svn path=/icecast/trunk/icecast/; revision=8091
2004-10-25 14:43:07 +00:00
Karl Heyes
7b9b8e70a3
The _inc/_dec routines can race causing incorrect values as they don't account
...
for unprocessed stat events. Here I push the actual calculations to the stats
thread. The API is maintained however all stats for a specific source can be
dropped with one call now.
svn path=/icecast/trunk/icecast/; revision=8090
2004-10-25 14:03:42 +00:00
Karl Heyes
80561957f0
fix a busy CPU case when slow and fast file serving clients are connected at
...
the same time. Flag clients on return from select/poll and only process those.
Also fix a rare race which could leave clients in pending
svn path=/icecast/trunk/icecast/; revision=8070
2004-10-24 00:34:15 +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
Michael Smith
1c28b0cce1
Correct a typo in one message, and change "WARNING" to "ERROR" in another,
...
since it's a fatal error.
svn path=/icecast/trunk/icecast/; revision=7983
2004-10-12 04:49:56 +00:00
Karl Heyes
75bb8ea0ce
merged from kh branch, allow for handling the vsnprintf return code better
...
on older systems.
svn path=/icecast/trunk/net/; revision=7917
2004-10-06 14:07:55 +00:00
Michael Smith
b6e001ce8d
When creating a source (in source_reserve), issue a warning if the mountpoint
...
does not start with a /, since clients will then be unable to connect to it
svn path=/icecast/trunk/icecast/; revision=7899
2004-10-01 00:42:19 +00:00
Karl Heyes
afde2e509c
the YP code could end up maintaining duplicate entries if the source
...
reconnect delay is very short.
svn path=/icecast/trunk/icecast/; revision=7761
2004-09-15 14:21:04 +00:00
Karl Heyes
079c759e6d
passed pointer could be NULL
...
svn path=/icecast/trunk/icecast/; revision=7615
2004-08-23 19:01:18 +00:00
Karl Heyes
1fe2325479
add optional tags to example xml and remove unused source_t item
...
svn path=/icecast/trunk/icecast/; revision=7607
2004-08-22 15:00:35 +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
2a991af1a6
unlikely to occur race, but fix it anyway
...
svn path=/icecast/trunk/icecast/; revision=7597
2004-08-20 22:59:09 +00:00
Karl Heyes
69af6210c0
small memory leak, only happened when a source exited
...
svn path=/icecast/trunk/icecast/; revision=7596
2004-08-20 22:55:27 +00:00
Karl Heyes
15016583ab
make caller of restart_logging pass the config, don't assume it's locked
...
svn path=/icecast/trunk/icecast/; revision=7595
2004-08-20 21:40:44 +00:00
Karl Heyes
9c44a7d184
merged singleq branch 7177:7591
...
svn path=/icecast/trunk/icecast/; revision=7592
2004-08-20 15:13:59 +00:00
Michael Smith
490e64663c
-b was broken. Fix it.
...
svn path=/icecast/trunk/icecast/; revision=7509
2004-08-10 05:17:56 +00:00
Karl Heyes
ebebad5e74
add extra boundary checks when splitting headers
...
svn path=/icecast/trunk/httpp/; revision=7507
2004-08-10 00:03:14 +00:00
Karl Heyes
dac2723dbe
encode any xml entities in the stats before applying them to the
...
xsl pages
svn path=/icecast/trunk/icecast/; revision=7494
2004-08-07 02:33:12 +00:00
oddsock
ebecd7cb0a
fix m3u generation logic that was not working for static files
...
svn path=/icecast/trunk/icecast/; revision=7439
2004-07-31 22:25:07 +00:00
Karl Heyes
62bff456c2
make sure sock_connected does not block with timeout 0, use -1
...
for that, also handle the sock_connected return values properly
in the case of timeout.
svn path=/icecast/trunk/net/; revision=7349
2004-07-26 16:03:52 +00:00
Michael Smith
bef7e4e022
Make it even more explicit what went wrong when log opening failed, since many
...
people don't seem to be able to figure it out.
svn path=/icecast/trunk/icecast/; revision=7265
2004-07-23 02:49:33 +00:00
oddsock
a4a8186681
forgot to switch the default value too..thanks Brendan..
...
svn path=/icecast/trunk/icecast/; revision=7257
2004-07-22 18:34:28 +00:00
Karl Heyes
94d24f406e
cleanup patch, push per client write error trap lower down
...
svn path=/icecast/trunk/icecast/; revision=7165
2004-07-16 15:47:12 +00:00
brendan
8d52fab499
Add source comment to previous metadata bug fix: [sic]
...
svn path=/icecast/trunk/icecast/; revision=7100
2004-07-12 02:21:18 +00:00
brendan
54c90a90fe
Migrate .cvsignore to svn:ignore
...
svn path=/icecast/trunk/log/; revision=7091
2004-07-11 16:51:34 +00:00
brendan
16e1815f14
Migrate .cvsignore to svn:ignore
...
svn path=/icecast/trunk/icecast/; revision=7090
2004-07-11 16:50:28 +00:00
brendan
085f8d61aa
The inline metadata text was losing the final character when the string length was a
...
multiple of 16.
svn path=/icecast/trunk/icecast/; revision=7089
2004-07-11 16:46:02 +00:00
brendan
b235f57273
Move .cvsignore into svn:ignore
...
svn path=/icecast/trunk/avl/; revision=7021
2004-07-06 19:22:26 +00:00
Karl Heyes
a99d5ef19b
minor build fix
...
svn path=/icecast/trunk/httpp/; revision=6874
2004-06-25 19:39:12 +00:00
Karl Heyes
813d54bee1
wait 5 mins on failed YP request, also log a default
...
message if no error message is sent back
svn path=/icecast/trunk/icecast/; revision=6862
2004-06-25 18:25:10 +00:00
giles
d6d634ac02
Recommit of changes lost in the server migration
...
Original commit (r6810) 2004-06-04 03:15:36 -0400 (Fri, 04 Jun 2004) by msmith.
Fix #526 . Fallbacks weren't being found when the primary was disconnected (for
newly-connecting clients).
svn path=/icecast/trunk/icecast/; revision=6810
2004-06-06 03:08:19 +00:00
Karl Heyes
fe2a763e9e
make sure YP entries are flushed out when a source stops. Avoid
...
segv on failed icecast startup and add some log messages.
svn path=/icecast/trunk/icecast/; revision=6807
2004-06-02 19:34:14 +00:00
oddsock
fcef29c60a
remove geturl.c from icecast.dsp
...
add a #define for snprintf for win32
svn path=/icecast/trunk/icecast/; revision=6757
2004-05-26 02:37:20 +00:00
oddsock
56cd1de3c5
added ability to disallow concurrent connections from the same username if using htpasswd listener authentication.
...
svn path=/icecast/trunk/icecast/; revision=6711
2004-05-17 04:33:46 +00:00
Michael Smith
71388d47c6
Some servers apparently send a Content-Type header of audio/x-mpeg.
...
Make icecast understand this.
svn path=/icecast/trunk/icecast/; revision=6649
2004-05-11 02:24:18 +00:00
Karl Heyes
55ba59f3f7
Update of the YP code. This should resolve several YP issues that
...
have been reported, the main one being icecast instability when
there is a YP server outage.
svn path=/icecast/trunk/icecast/; revision=6646
2004-05-10 16:17:56 +00:00
Michael Smith
dc9903512d
Use remove() then rename() only on win32 - where it's required.
...
Don't use it on unix systems, which don't need it, and where doing
_only_ rename() preserves atomicity.
svn path=/icecast/trunk/icecast/; revision=6625
2004-05-05 05:05:05 +00:00
oddsock
dfdff77871
some special handling with rename() needed for win32
...
svn path=/icecast/trunk/icecast/; revision=6616
2004-05-03 14:59:40 +00:00
oddsock
e597b63c6a
proper config file handling...
...
svn path=/icecast/trunk/icecast/; revision=6615
2004-05-03 14:56:57 +00:00
oddsock
15b9c16c1c
patch to allow public listing of shoutcast servers that are relaying icecast streams
...
svn path=/icecast/trunk/icecast/; revision=6614
2004-05-03 14:55:44 +00:00
oddsock
9f7895bd42
created an auth page which can be used to serve appropriate m3u's which contain authentication information.
...
svn path=/icecast/trunk/icecast/; revision=6612
2004-04-30 17:32:34 +00:00
oddsock
d642846c80
added web based interface to htpasswd client authentication
...
svn path=/icecast/trunk/icecast/; revision=6610
2004-04-30 14:36:07 +00:00
Michael Smith
cd47258bb4
Disable burst-on-connect by default
...
svn path=/icecast/trunk/icecast/; revision=6607
2004-04-30 02:28:58 +00:00
oddsock
32718b5b4e
new feature in icecast : burst-on-connect - allows an initial burst of data to connecting listeners, thus reducing the startup time of a stream.
...
svn path=/icecast/trunk/icecast/; revision=6606
2004-04-29 15:23:13 +00:00
oddsock
89f9f38d78
added HAVE_LOCALTIME_R to project file
...
added #define for snprintf (win32 requires _snprintf)
svn path=/icecast/trunk/icecast/; revision=6594
2004-04-25 23:28:36 +00:00
Michael Smith
935a06ef55
Fix copy/paste error in sending 400 errors (reported by wayne zhao).
...
svn path=/icecast/trunk/icecast/; revision=6553
2004-04-20 07:05:07 +00:00
Michael Smith
c2b3ed7146
Fix overflow when base64 decoding invalid base64.
...
svn path=/icecast/trunk/icecast/; revision=6533
2004-04-19 02:55:56 +00:00
Michael Smith
a66e69cb1c
Give details in error messages on failure to open log files.
...
svn path=/icecast/trunk/icecast/; revision=6495
2004-04-07 01:53:46 +00:00
Michael Smith
e8eddcd7b4
Make icecast keep parsing command line options after -c.
...
Error message if fork fails.
All untested; the conversion broke the build.
svn path=/icecast/trunk/icecast/; revision=6152
2004-03-22 02:16:57 +00:00
Michael Smith
ba356d5eaf
Another patch from Dale Ghent, this silences some warnings from the compiler.
...
svn path=/trunk/icecast/; revision=5928
2004-03-09 23:52:20 +00:00
Michael Smith
5edb4df406
Revert previous; this was fixed in a better way.
...
svn path=/trunk/icecast/; revision=5927
2004-03-09 23:49:24 +00:00
Michael Smith
a11d01b268
Use sys/types.h in md5.c, patch from Dale Ghent
...
svn path=/trunk/icecast/; revision=5926
2004-03-09 23:41:58 +00:00
giles
287ed24dd8
Include inttypes.h from the compatibility header if it's available and stdint.h is not. This
...
provides the stdint types on solaris and a number of other non-C99 platforms.
svn path=/trunk/icecast/; revision=5925
2004-03-09 18:33:06 +00:00
Michael Smith
5323b27c95
Couple of minor contributed patches.
...
- Solaris/autoconf nanosleep checking
- use time_t as appropriate for yp
svn path=/trunk/icecast/; revision=5921
2004-03-09 02:36:01 +00:00
Michael Smith
fa8ceacb5c
Oops. Hack up the macro some more so it compiles properly.
...
svn path=/trunk/icecast/; revision=5878
2004-03-02 00:10:58 +00:00
Michael Smith
398dfff59d
Fix macro to use ; instead of ,
...
This gets rid of some warnings in later gcc versions.
svn path=/trunk/icecast/; revision=5875
2004-03-01 02:28:48 +00:00
Karl Heyes
c8ecb463f9
remove warning wrt time_t
...
svn path=/trunk/icecast/; revision=5874
2004-02-29 14:55:04 +00:00
Karl Heyes
6ba8c0b2cd
free up any per-client format specific resources, fixes a small memory
...
leak with mp3 streams
svn path=/trunk/icecast/; revision=5873
2004-02-29 14:38:15 +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
9916341436
separate source initialisation, and collect the YP setup code into one area
...
svn path=/trunk/icecast/; revision=5868
2004-02-26 16:51:43 +00:00
Karl Heyes
aff756a4c7
Add per mount queue size and source timeout, which can override the
...
general settings.
svn path=/trunk/icecast/; revision=5867
2004-02-26 11:56:48 +00:00
Karl Heyes
b7fbcef133
revert previous patch, mike didn't want it...
...
svn path=/trunk/icecast/; revision=5866
2004-02-26 10:39:56 +00:00
Karl Heyes
450d448422
add missing lock on source tree
...
svn path=/trunk/icecast/; revision=5865
2004-02-25 21:43:52 +00:00
Karl Heyes
32f52c6211
send mp3 url metadata into a format specific routine
...
svn path=/trunk/icecast/; revision=5864
2004-02-25 20:23:07 +00:00
Karl Heyes
f6f31cdc24
*** empty log message ***
...
svn path=/trunk/icecast/; revision=5863
2004-02-25 20:11:31 +00:00
Karl Heyes
7371d0ab21
move the source client '200 OK' response to the source client specific part
...
of the source thread, and rearrange stats around that
svn path=/trunk/icecast/; revision=5862
2004-02-25 16:24:30 +00:00
Karl Heyes
dac1cf97dc
small cleanup and don't shutdown curl too early
...
svn path=/trunk/icecast/; revision=5860
2004-02-24 21:02:44 +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
Michael Smith
7b7a9f73d2
Oops. As oddsock says, this was broken, and didn't compile, and was unneccesary
...
anyway. reverted.
svn path=/trunk/icecast/; revision=5849
2004-02-20 02:09:00 +00:00
Michael Smith
92027f475b
Patch for preventing stats from staying around too long - stats thread should
...
only go to sleep when it has nothing to do.
svn path=/trunk/icecast/; revision=5848
2004-02-20 01:25:28 +00:00
Karl Heyes
466a5cb60c
Make source client connections reserve the source mountpoint and get rid
...
of the unused source setup code.
svn path=/trunk/icecast/; revision=5846
2004-02-19 21:16:59 +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
a83553ad8f
functions to allow for reserving a source_t with a mountpoint
...
svn path=/trunk/icecast/; revision=5844
2004-02-19 16:32:26 +00:00
Karl Heyes
6d969934f5
Add checks for whether a source is active
...
svn path=/trunk/icecast/; revision=5843
2004-02-19 15:24:06 +00:00
Karl Heyes
ebf6603c07
small YP memory cleanup
...
svn path=/trunk/icecast/; revision=5842
2004-02-19 14:48:31 +00:00
Karl Heyes
66082000b4
minor cleanup
...
svn path=/trunk/icecast/; revision=5834
2004-02-17 15:46:05 +00:00
Karl Heyes
c3f0d43821
handle error condition at connection
...
svn path=/trunk/net/; revision=5833
2004-02-17 14:17:57 +00:00
Karl Heyes
2accfe55e5
fix possible bad pointer reference when finding fallback mount
...
svn path=/trunk/icecast/; revision=5830
2004-02-17 00:09:14 +00:00
Karl Heyes
012b3f4246
YP related cleanup, avoid bad pointer reference on HUP
...
svn path=/trunk/icecast/; revision=5829
2004-02-16 21:59:08 +00:00
Karl Heyes
5574d519c9
a few cleanups and a fix for async connects
...
svn path=/trunk/net/; revision=5821
2004-02-12 21:28:35 +00:00
Michael Smith
350c524cc8
I Hate String Handling In C.
...
svn path=/trunk/icecast/; revision=5818
2004-02-10 04:37:30 +00:00
Michael Smith
3d9d45c488
Another fix: the length of the _string_ is not the same as the metadata length
...
(the metadata is null-padded out to a multiple of 16 bytes), so we have to deal
with that.
svn path=/trunk/icecast/; revision=5817
2004-02-10 04:29:54 +00:00
Michael Smith
6128c0631c
Oops. Fix null-terminator.
...
svn path=/trunk/icecast/; revision=5816
2004-02-10 04:20:43 +00:00
Michael Smith
7bc7ea581a
Fire off stats event for metadata updates when we get metadata inline.
...
This fixes stats.xml listings for mp3 slave relays with metadata.
We get rid of 'metadata_raw', since we now have to format out that stuff anyway.
svn path=/trunk/icecast/; revision=5815
2004-02-10 03:50:39 +00:00
Karl Heyes
682753ea10
minor cleanup
...
svn path=/trunk/icecast/; revision=5809
2004-02-03 00:48:02 +00:00
Karl Heyes
aabbde37bc
cleanup headers sent to listeners
...
svn path=/trunk/icecast/; revision=5808
2004-02-03 00:29:36 +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
oddsock
c95f2cea8d
added win32 support to libshout
...
- new MSVC6 project files
- os.h with WIN32 specific typedefs
- fixed some casting issues which were causing precision errors on win32
- apparently select doesn't work with microsecond granularity so we will use Sleep() which does.
svn path=/trunk/timing/; revision=5796
2004-01-30 00:08:02 +00:00
Karl Heyes
d7dc5d327c
minor cleanup
...
svn path=/trunk/icecast/; revision=5795
2004-01-29 23:23:53 +00:00
Karl Heyes
c90fb2ea55
cleanup duplicate work, fix rare but potential deadlock, and
...
fix silly bug introduced ealrier
svn path=/trunk/icecast/; revision=5794
2004-01-29 16:46:54 +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
Karl Heyes
78ee74cf3e
change thread startup/shutdown order slightly wrt to slave thread
...
svn path=/trunk/icecast/; revision=5791
2004-01-28 23:23:10 +00:00
Karl Heyes
c9d6c049ef
oops, missed these from previous commit, the lock is now taken further up
...
svn path=/trunk/icecast/; revision=5789
2004-01-28 02:17:57 +00:00
Karl Heyes
87da84a021
make sure the source doesn't disappear from under us when an admin
...
request is performed.
svn path=/trunk/icecast/; revision=5788
2004-01-28 01:22:36 +00:00
Karl Heyes
6c6a22bf45
minor cleanups, and only have one thread responding to TERM
...
svn path=/trunk/avl/; revision=5787
2004-01-27 02:16:25 +00:00
Karl Heyes
1665a4f7d9
fix potential deadlock case at source stream startup
...
svn path=/trunk/icecast/; revision=5786
2004-01-26 22:42:22 +00:00
Karl Heyes
fbd92a913e
add localtime_r checks, useful the threads
...
svn path=/trunk/icecast/; revision=5785
2004-01-26 21:49:07 +00:00
oddsock
610a2c022a
fixed small bug where if using fallbacks and the main mount was not connected, icecast was not connecting client to the fallback mount.
...
svn path=/trunk/icecast/; revision=5780
2004-01-21 15:19:48 +00:00
Michael Smith
d668d4dfa6
Fix nasty bug in file serving code, would probably have made it fail with
...
multiple simultaneous requests.
svn path=/trunk/icecast/; revision=5764
2004-01-16 00:43:16 +00:00
oddsock
8a78baa149
- properly initialize the authorizer structure, otherwise by default it is enabled
...
- add new element (listenurl) to the stats for use in things like java player applets
svn path=/trunk/icecast/; revision=5763
2004-01-15 15:37:25 +00:00
oddsock
6dc92dae79
fixed some variable definitions to be ANSI compatable.
...
updated win32 project files with new files
svn path=/trunk/icecast/; revision=5761
2004-01-15 04:24:57 +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
oddsock
360c18b5b8
add option to display icecast version string, and cleaned up usage a bit..
...
svn path=/trunk/icecast/; revision=5720
2003-12-29 16:18:48 +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
Karl Heyes
1e7316b4b2
failure case, keep the source count in sync with the number of sources
...
running, locking for shutdown was also affected.
svn path=/trunk/icecast/; revision=5700
2003-12-17 22:54:43 +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
oddsock
5e075b9202
Remove explicit exit() calls...this was possibly causing some cases of immediate UI termination without any messages...
...
svn path=/trunk/avl/; revision=5683
2003-12-04 16:27:30 +00:00
oddsock
c20bc3c346
Remove stats_callback() which is only used by the win32 UI...The stats gathering done by the UI has been completely rewritten to eliminate some reported instability.
...
svn path=/trunk/icecast/; revision=5682
2003-12-04 16:25:28 +00:00
oddsock
6a67e82db8
Added win32 include for getpid()
...
svn path=/trunk/icecast/; revision=5681
2003-12-04 16:24:34 +00:00
oddsock
70ae454647
get rid of the fullpath of the module that is logged...Stupid VC6....
...
svn path=/trunk/icecast/; revision=5680
2003-12-04 16:23:51 +00:00
Karl Heyes
25dcbd976d
fix segv when fallback or dumpfilename are not specified
...
svn path=/trunk/icecast/; revision=5675
2003-12-02 01:11:12 +00:00
Karl Heyes
112ce96cf0
Add optional pidfile. Writes process id of icecast to named file
...
svn path=/trunk/icecast/; revision=5674
2003-12-01 23:30:13 +00:00
Karl Heyes
b795bb58dc
cleanup bad pointer access after config re-read
...
svn path=/trunk/icecast/; revision=5673
2003-12-01 17:18:37 +00:00
oddsock
9a53ac6510
Icecast we are
...
svn path=/trunk/icecast/; revision=5629
2003-11-25 02:51:02 +00:00
oddsock
6671ab765d
Base ICECAST2_VERSION_STRING off VERSION_STRING which is generated by autoconf..win32 projects will have to manually define this currently..blah.
...
svn path=/trunk/icecast/; revision=5628
2003-11-25 02:41:23 +00:00
oddsock
a3ab569ba1
lets make the ICECAST_VERSION_STRING a bit less of a maintance issue...
...
svn path=/trunk/icecast/; revision=5627
2003-11-22 22:23:04 +00:00
Karl Heyes
e3dbbbc81b
if relay is for an mp3 stream, then get inline metadata by default if
...
possible
svn path=/trunk/icecast/; revision=5600
2003-11-18 00:59:51 +00:00
Karl Heyes
7ec7e90916
fix minor leak on config file read
...
svn path=/trunk/icecast/; revision=5599
2003-11-18 00:49:59 +00:00
Karl Heyes
cfc2695927
patch from mike, unlock logger on failure case.
...
svn path=/trunk/log/; revision=5597
2003-11-17 23:53:37 +00:00
oddsock
d525290195
added WIN32-ism
...
svn path=/trunk/icecast/; revision=5589
2003-11-17 22:38:58 +00:00
Karl Heyes
a093271f95
type warning cleanup
...
svn path=/trunk/icecast/; revision=5586
2003-11-17 21:36:03 +00:00
Karl Heyes
47f877569f
While tracking down the bug which causes the zombie thread manager while
...
streaming mp3 with metadata, this patch has turned out to be successful at
maintaining a working icecast for the few users who have reported the problem
The patch essentially removes the use of the alloca and uses the malloc-type
calls instead.
svn path=/trunk/icecast/; revision=5562
2003-11-11 18:21:49 +00:00
oddsock
fe95280339
added bypassing of thread_sleep() in certain cases.
...
this came from KarlH.
svn path=/trunk/icecast/; revision=5526
2003-10-31 19:21:00 +00:00
oddsock
e554386ef0
proper cleanup of the rwlocks in the avl trees.
...
This was causing some major memory leakage on win32, but was not seen
on unix. Icecast2 on win32 is leakfree again :)
svn path=/trunk/avl/; revision=5525
2003-10-31 19:18:42 +00:00
brendan
ff15b29177
typo
...
svn path=/trunk/timing/; revision=5492
2003-10-20 16:32:55 +00:00
brendan
2bfba7c60a
Leigh Smith's MINGW32 compatibility patch, with modifications for better
...
autoconf feng shui
svn path=/trunk/m4/; revision=5490
2003-10-20 03:08:46 +00:00
Karl Heyes
4f41ecedb6
another compiler cleanup wrt 64bit int/pointer mismatches, thanks to
...
the ports maintainers
svn path=/trunk/avl/; revision=5182
2003-07-29 00:30:36 +00:00
Karl Heyes
571ced86d5
We need to state both of these to get the dependencies and linking working
...
as expected.
svn path=/trunk/icecast/; revision=5181
2003-07-27 22:53:58 +00:00
Karl Heyes
7e0894c0c9
Plug small memory leak when a thread exits.
...
Allow new threads to inherit scheduling policy.
Use long instead of int in thread_exit, thanks to the ports maintainers for
the heads up.
svn path=/trunk/thread/; revision=5179
2003-07-27 18:19:31 +00:00
Karl Heyes
39ad755a25
remove unwanted bits left in from previous commits
...
svn path=/trunk/icecast/; revision=5178
2003-07-27 01:13:06 +00:00