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
4c08a155c7
Make various thread structures omit the bits only used in debug mode.
...
Some of these are pretty heavily used, so saving 10-20 bytes each can be
quite significant.
No functional differences.
svn path=/trunk/thread/; revision=4401
2003-03-04 15:31:34 +00:00
Michael Smith
fc4f7f2435
doh! This one compiles.
...
svn path=/trunk/icecast/; revision=4398
2003-03-03 13:09:47 +00:00
Michael Smith
823c5e23c0
Fix buffer-queue length handling (was missing from refbuf_queue_add, which it
...
used as well as refbuf_queue_insert).
svn path=/trunk/icecast/; revision=4397
2003-03-03 13:04:34 +00:00
Michael Smith
5252a14068
Fix various minor bugs in per-mountpoint configs.
...
svn path=/trunk/icecast/; revision=4385
2003-03-02 10:36:24 +00:00
Michael Smith
c359faf1de
More features:
...
-- per mountpoint listener maxima
-- static configuration of mountpoint fallbacks
-- stream dumping (write incoming stream to disk)
Fixed some warnings that other people introduced.
svn path=/trunk/icecast/; revision=4383
2003-03-02 10:13:59 +00:00
oddsock
1d84364c5a
win32 doesn't support line buffering with setvbuf() properly, so for win32
...
lets just set it to no-buffering for logs.
svn path=/trunk/log/; revision=4381
2003-02-27 03:02:30 +00:00
oddsock
ce167cc6bb
whoops...stats can't have spaces in them, since XML can't have spaces in the tags
...
also, handle case where a client sends a bad ice-audio-info string (variable but no value)
svn path=/trunk/icecast/; revision=4380
2003-02-27 03:01:12 +00:00
oddsock
1658f1717e
added parsing of new icy-audio-info header which will be used to
...
communicate things like samplerate/quality/number of channels to
icecast2. This info will be then forwarded to the yp servers for
better stream info.
also factored out some logic in source_main into common functions
added a few new routines into util.c (taken from Brendan's
updates to libshout)
svn path=/trunk/icecast/; revision=4379
2003-02-26 23:52:23 +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
47b1d160ae
Commit fix for segfault in buffer length handling code.
...
svn path=/trunk/icecast/; revision=4365
2003-02-24 14:56:49 +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
8c14c0e0db
Oops. Very broken password checking, fix from Karl Heyes.
...
svn path=/trunk/icecast/; revision=4358
2003-02-20 22:18:24 +00:00
Michael Smith
83b41e2beb
Fix previous changes to source creation - misunderstood requirements for
...
unlocking rwlocks. Move more checks and some other logic into source.c
svn path=/trunk/icecast/; revision=4354
2003-02-17 13:01:37 +00:00
Michael Smith
469ac14e11
Commit some other work so it compiles again (incomplete mp3 metadata relaying)
...
svn path=/trunk/icecast/; revision=4353
2003-02-17 12:05:45 +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
008c8abbc7
Fix mp3 streaming for clients not using metadata
...
svn path=/trunk/icecast/; revision=4348
2003-02-14 13:39:02 +00:00
Michael Smith
5b2a7bc07a
Oops. Pull a header print outside the loop so the Server: header is only
...
output once, not many times.
svn path=/trunk/icecast/; revision=4347
2003-02-14 13:17:38 +00:00
Michael Smith
d15952d784
Fix bad log entries from relaying.
...
svn path=/trunk/icecast/; revision=4346
2003-02-14 11:44:08 +00:00
Michael Smith
68aa51b6e6
Fix formatting of ip addresses so that v6 sockets are logged correctly.
...
svn path=/trunk/net/; revision=4345
2003-02-14 11:14:55 +00:00
Michael Smith
1644a6f718
Fix incorrect use of enum that was leading to crashes on source connect for
...
unknown mimetype.
svn path=/trunk/icecast/; revision=4344
2003-02-14 10:31:21 +00:00
Michael Smith
5d88044bb7
Remove comment added earlier - that version of the function is only there
...
for backwards compatibility, and isn't MEANT to do ipv6. Oops.
svn path=/trunk/net/; revision=4343
2003-02-13 11:51:35 +00:00
Michael Smith
b6c18398cd
Better IPv6 support. Hopefully logging will work correctly now.
...
However, some things still won't work, notably relaying (the relay can be
ipv6, the server being relayed _from_ may not be).
I'll fix that some time soon.
svn path=/trunk/icecast/; revision=4342
2003-02-13 11:29:07 +00:00
Michael Smith
38e3bfb88f
Increase buffer size for IPs so that logging works better for v6 clients.
...
svn path=/trunk/icecast/; revision=4341
2003-02-12 22:50:59 +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
f3d717e908
Increase ip buffer sizes so that ipv6 has a better chance of working.
...
svn path=/trunk/net/; revision=4339
2003-02-12 10:58:17 +00:00
Michael Smith
9acef4801e
Per mountpoint usernames, passwords, and some infrastructure for other
...
per-mountpoint configuration (some of these are given as examples in
the config file, but they aren't yet used).
svn path=/trunk/icecast/; revision=4338
2003-02-11 14:23:34 +00:00
Michael Smith
9f85a1e7c3
Now that it's been completely officially assigned, use application/ogg instead
...
of application/x-ogg
svn path=/trunk/icecast/; revision=4336
2003-02-11 12:18:22 +00:00
Michael Smith
a3ee7cf61a
Sigh. And another.
...
svn path=/trunk/icecast/; revision=4332
2003-02-07 14:00:33 +00:00
Michael Smith
248a0874a4
Grumble. Silly gcc.
...
svn path=/trunk/icecast/; revision=4331
2003-02-07 13:56:33 +00:00
Michael Smith
98a6f4ef31
Free new config variables on shutdown (forgot to add this before)
...
svn path=/trunk/icecast/; revision=4330
2003-02-07 12:26:07 +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
Michael Smith
9e168dc870
Lots of fixes for screwy code formatting, plus:
...
make streams public by default, send ice-private: 1 to make them private.
However, default config file has yp servers commented out.
A little fix for compilation on some solaris systems
Redo some config file stuff: now all the passwords are inside an element
<authentication>, (though for now they're also accepted in the old location),
and added admin username and password. Move some of the admin activities over
to using the admin passwords (admin action that affect a mountpoint use the
source password)
Fill in some (but not yet all, maybe i'll do that later) of the infrastructure
for per-mountpoint passwords.
Fix lots of headers/code so that it works properly/portably on non-win32
systems.
svn path=/trunk/icecast/; revision=4325
2003-02-06 13:10:48 +00:00
oddsock
4865fd10d0
if there is an error on touching, then reset the sid which will force another add
...
svn path=/trunk/icecast/; revision=4320
2003-02-05 02:04:54 +00:00
oddsock
0fba6babb1
style changes
...
svn path=/trunk/icecast/; revision=4316
2003-02-02 16:48:15 +00:00
oddsock
e07080a0d8
added references to geturl.h
...
svn path=/trunk/icecast/; revision=4314
2003-02-02 14:33:47 +00:00
oddsock
289c58f945
many modifications in order to support yp listing..the source structure now has additional fields, which are only used by the yp listing routines
...
svn path=/trunk/icecast/; revision=4313
2003-02-02 14:33:17 +00:00
oddsock
f9e5bf3d07
added reference to log.h, WIN32 needed it otherwise it would fail on finding prototypes
...
svn path=/trunk/icecast/; revision=4312
2003-02-02 14:32:21 +00:00
oddsock
0fb743aa78
added geturl.h reference
...
svn path=/trunk/icecast/; revision=4311
2003-02-02 14:31:34 +00:00
oddsock
556bf3ed35
added initialization routines for curl, and also added the '-b' as a command line param...this will put icecast2 in the background
...
svn path=/trunk/icecast/; revision=4310
2003-02-02 14:26:54 +00:00
oddsock
a3dfee72e0
added function for retrieving specific stat values (for use by yp routines)
...
svn path=/trunk/icecast/; revision=4309
2003-02-02 14:25:53 +00:00
oddsock
6e16b1cca2
new configuration entries for yp listing
...
svn path=/trunk/icecast/; revision=4308
2003-02-02 14:24:58 +00:00
oddsock
dd177a7290
added new files for yp listing, and also added refereneces to them in Makefile.am
...
svn path=/trunk/icecast/; revision=4307
2003-02-02 14:24:13 +00:00
Michael Smith
6f1f4072af
Fix segfault if current source didn't exist on fallback mount request.
...
svn path=/trunk/icecast/; revision=4292
2003-01-23 11:12:54 +00:00
brendan
ac6bd1d2e7
We weren't actually using poll at all, we were just including the header.
...
For portability, remove the header and the check in configure.in
svn path=/trunk/net/; revision=4283
2003-01-21 06:45:43 +00:00
Michael Smith
cefe6b8970
Bah. That'll teach me to trust the manpage... let's try something which might
...
be marginally more portable.
svn path=/trunk/net/; revision=4279
2003-01-19 02:46:06 +00:00
Michael Smith
0b57a33794
Fix for a couple of nasty bugs that could result in clients being incorrectly
...
dropped under some circumstances. Thanks to Ricardo Galli for finding this.
svn path=/trunk/icecast/; revision=4268
2003-01-18 12:30:29 +00:00
Michael Smith
1fb972cf89
And some more message fixes (this and the previous from alet@librelogiciel.com (Jerome Alet)
...
svn path=/trunk/icecast/; revision=4262
2003-01-18 07:39:29 +00:00
Michael Smith
6d4ef5e519
Fix a message that was talking about the wrong path
...
svn path=/trunk/icecast/; revision=4261
2003-01-18 07:38:18 +00:00
Michael Smith
f2d0e26fed
Set TCP_NODELAY on sockets for streams and fileserving.
...
Adapted from a patch sent by Richard Galli
svn path=/trunk/icecast/; revision=4260
2003-01-18 07:08:00 +00:00
Michael Smith
369a4568b6
Small memory leak fixed (patch from Ricardo Galli <gallir@uib.es>)
...
svn path=/trunk/icecast/; revision=4259
2003-01-18 06:54:29 +00:00
Michael Smith
8f1b39e34d
Fix some warnings, fix cflags.
...
svn path=/trunk/httpp/; revision=4258
2003-01-17 09:01:04 +00:00
brendan
4dce25a3e7
I wanted to see this variable
...
svn path=/trunk/icecast/; revision=4254
2003-01-16 08:07:36 +00:00
brendan
d9682b5dec
Indentation again, don't mind me
...
svn path=/trunk/httpp/; revision=4252
2003-01-16 05:48:31 +00:00
brendan
3a0b895baa
Make indentation consistent before doing other work
...
svn path=/trunk/httpp/; revision=4250
2003-01-15 23:46:56 +00:00
Michael Smith
c4d74c54d0
Patch for freebsd to set gcc options for pthreads correctly, from
...
"Nigel Weeks" <nigel@e-easy.com.au>
svn path=/trunk/icecast/; revision=4235
2003-01-13 10:48:43 +00:00
oddsock
37fb98cad7
fixed SEGV when streaming with mp3 with metadata
...
svn path=/trunk/icecast/; revision=4198
2003-01-01 21:21:20 +00:00
Michael Smith
d8e9eb3883
indentation fixes, and a small fix for tracking bytes sent.
...
svn path=/trunk/icecast/; revision=4197
2003-01-01 07:31:46 +00:00
oddsock
ba5e903735
those darn EOL chars
...
svn path=/trunk/icecast/; revision=4196
2002-12-31 20:15:03 +00:00
oddsock
a210e9f58f
win32 compilation fixes
...
svn path=/trunk/icecast/; revision=4195
2002-12-31 20:07:14 +00:00
oddsock
a4d2d6a2b4
fixed mp3 metadata, now tested and working.
...
svn path=/trunk/icecast/; revision=4194
2002-12-31 19:48:28 +00:00
Michael Smith
11a1d83e1a
New year's bonus feature:
...
configurable fallbacks, now working.
svn path=/trunk/icecast/; revision=4192
2002-12-31 07:49:34 +00:00
Michael Smith
ab8c8c6893
mp3 metadata complete. Still untested.
...
svn path=/trunk/httpp/; revision=4191
2002-12-31 06:28:39 +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
3783c61e92
mountpoint fallbacks.
...
untested, and no interface available to configure them.
svn path=/trunk/icecast/; revision=4180
2002-12-30 15:19:46 +00:00
Michael Smith
655a786cfc
Fix some minor errors.
...
svn path=/trunk/icecast/; revision=4179
2002-12-30 11:27:21 +00:00
Michael Smith
29bc4a13b6
More mp3 metadata work.
...
Untested but more or less complete.
No way to actually set the metadata yet.
svn path=/trunk/icecast/; revision=4178
2002-12-30 11:22:59 +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
5890aa4f4b
Fix c++-ism that gcc didn't think to warn me about
...
svn path=/trunk/icecast/; revision=4176
2002-12-30 01:59:03 +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
b8a686018f
Rename thread_t to avoid problems on OS X
...
svn path=/trunk/thread/; revision=4170
2002-12-29 09:55:50 +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
b8e157d7d1
Add infrastructure for better/more flexible format support. Will be needed
...
for mp3 metadata, for example.
svn path=/trunk/icecast/; revision=4167
2002-12-29 08:10:10 +00:00
Michael Smith
b3bc17fa73
Fix compilation errors on non-windows platforms.
...
svn path=/trunk/net/; revision=4133
2002-12-01 02:11:07 +00:00
Michael Smith
f7ee1580ce
Fix EOLs
...
svn path=/trunk/icecast/; revision=4132
2002-12-01 02:10:25 +00:00
oddsock
4c795ed130
win32 port updates to recent changes
...
svn path=/trunk/icecast/; revision=4117
2002-11-23 15:55:27 +00:00
Michael Smith
7c7fa73422
Fix a compile error.
...
svn path=/trunk/icecast/; revision=4115
2002-11-22 13:13:04 +00:00
Michael Smith
7b4730cbfd
Karl Heyes: patches for better networking code. IPv6 support (complete? Not
...
sure).
svn path=/trunk/net/; revision=4114
2002-11-22 13:02:51 +00:00
Michael Smith
89bf546ad1
Lots of bugfixes contributed by Karl Heyes.
...
svn path=/trunk/icecast/; revision=4111
2002-11-22 13:00:44 +00:00
Michael Smith
a6edc8f631
Allow icelogin to coexist with http login. icelogin is still deprecated,
...
and now a warning is issued.
svn path=/trunk/icecast/; revision=3985
2002-10-10 08:50:58 +00:00
Michael Smith
b620ee918d
Previous bugfix was incorrect, and made the problem worse, since it ensured
...
it would be triggered in certain cases, instead of merely making it dependant
on previous values written to the variable in those cases.
Fixes source disconnect on some (but very few) ogg bitstreams (the vast
majority of my files play fine)
svn path=/trunk/icecast/; revision=3978
2002-10-06 09:57:07 +00:00
Michael Smith
e0054eb3ea
Fix for possible obscure bug leading to source disconnects.
...
svn path=/trunk/icecast/; revision=3975
2002-10-03 14:07:34 +00:00
Michael Smith
68dea2dc71
build updates.
...
svn path=/trunk/icecast/; revision=3945
2002-09-24 08:16:24 +00:00
Michael Smith
9940c969bd
Bugfix: thread_join is often called after a thread has already exited, which it
...
does using thread_exit(). thread_exit() was freeing the thread structure, so
thread_join was using freed memory. Rearrange things so that if the thread
is detached, the freeing happens in thread_join instead.
svn path=/trunk/thread/; revision=3944
2002-09-24 07:09:08 +00:00
Michael Smith
08061569bd
Fix an fserv crash bug if startup failed, and fix an fserv-didn't-actually-
...
work-at-all-in-most-circumstances bug.
svn path=/trunk/icecast/; revision=3883
2002-08-28 13:50:58 +00:00
Michael Smith
b2c59ffdd5
Fix XSLT compiler flags. patch from Thomas Vander Stichele
...
svn path=/trunk/icecast/; revision=3882
2002-08-28 13:00:02 +00:00
Michael Smith
07de3c2dd7
Move fserve_initialize() to later so that chroot() works right.
...
svn path=/trunk/icecast/; revision=3877
2002-08-25 06:12:51 +00:00
Michael Smith
e9b1e40089
Build an extension->mimetype mapping table from /etc/mime.types, use this
...
for sending content-type when file serving.
svn path=/trunk/icecast/; revision=3858
2002-08-18 13:38:51 +00:00
Michael Smith
0ffcdea5e1
Use select() if poll() isn't available in fserve.
...
svn path=/trunk/icecast/; revision=3857
2002-08-18 09:38:45 +00:00
Michael Smith
3c59c90e36
Fileserving that might actually work for > 1 user.
...
cleanups for the base64 decoder.
svn path=/trunk/icecast/; revision=3856
2002-08-18 08:49:25 +00:00
Michael Smith
8ce3dbb957
File serving, from the webroot.
...
svn path=/trunk/icecast/; revision=3852
2002-08-18 05:06:58 +00:00
Michael Smith
2aa432dc0f
Use relay password (fallback to using source password if no relay-password
...
is set)
svn path=/trunk/icecast/; revision=3850
2002-08-17 08:32:15 +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
d54dccb8ad
Fix a null terminator so that relaying can work again
...
svn path=/trunk/icecast/; revision=3847
2002-08-17 04:48:07 +00:00
Michael Smith
9c2d2b25fa
Minor fix I forgot to commit yesterday for source data length accounting.
...
svn path=/trunk/icecast/; revision=3845
2002-08-17 04:35:23 +00:00
Michael Smith
f8250d8df0
Minor fixes for logging response codes correctly (hopefully)
...
svn path=/trunk/icecast/; revision=3840
2002-08-16 15:28:46 +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
def074c801
Liberally sprinkle #ifdef THREAD_DEBUG around so libshout doesn't need to link
...
with it.
svn path=/trunk/thread/; revision=3835
2002-08-16 14:23:17 +00:00
Michael Smith
6f66e1b7f2
bugfixes for httpp_parse_response
...
svn path=/trunk/httpp/; revision=3834
2002-08-16 14:22:44 +00:00
Michael Smith
5a60e7c09d
Cache-checking is case-insensitive on win32.
...
svn path=/trunk/icecast/; revision=3811
2002-08-13 13:53:07 +00:00
Michael Smith
b68b01f02c
Cache stylesheets for transforming.
...
svn path=/trunk/icecast/; revision=3810
2002-08-13 12:46:45 +00:00
Michael Smith
3666660ef6
Timing fixes
...
svn path=/trunk/icecast/; revision=3808
2002-08-13 01:08:15 +00:00
Michael Smith
76ff92cb2f
_handle_connection() cleanup, major restructuring. No feature changes.
...
svn path=/trunk/icecast/; revision=3807
2002-08-12 14:48:31 +00:00
Michael Smith
6e23c0f8fc
Fix a bug in one of the error (404) responses.
...
svn path=/trunk/icecast/; revision=3806
2002-08-12 10:11:44 +00:00
Michael Smith
f349c3bf3e
More path handling cleanups, and memory leak fixes.
...
svn path=/trunk/icecast/; revision=3804
2002-08-11 14:23:39 +00:00
Michael Smith
850cf995bf
URI decoding and path normalisation pass one (stuff needed for fileserving
...
later on)
svn path=/trunk/icecast/; revision=3803
2002-08-11 14:00:56 +00:00
Michael Smith
bf782f0248
Decrement client connections on source termination to avoid eventual "server
...
is full" messages.
svn path=/trunk/icecast/; revision=3801
2002-08-11 12:15:40 +00:00
Michael Smith
84a76ac3ee
status.xsl updates, better now.
...
Automatically create .m3u responses for any existing streams.
If /stream.ogg exists, you can now request /stream.ogg.m3u in your browser.
svn path=/trunk/icecast/; revision=3797
2002-08-10 08:01:56 +00:00
Michael Smith
e97e404904
Better error messages on some corrupt sources.
...
svn path=/trunk/icecast/; revision=3796
2002-08-10 04:51:11 +00:00
Michael Smith
5d06975c44
Various cleanups
...
svn path=/trunk/icecast/; revision=3791
2002-08-10 03:22:44 +00:00
Michael Smith
8bd8dbbe48
Another free->xmlFree change
...
svn path=/trunk/icecast/; revision=3785
2002-08-09 15:04:40 +00:00
Michael Smith
e42c65afa3
fix typo preventing compile
...
svn path=/trunk/icecast/; revision=3784
2002-08-09 15:03:32 +00:00
Michael Smith
c96ec5bab0
set default webroot dir correctly, and fix a minor memleak
...
svn path=/trunk/icecast/; revision=3782
2002-08-09 14:47:53 +00:00
Michael Smith
bf0f2e1414
rename transformXSLT to xslt_transform() for consistency with the rest
...
of the source.
svn path=/trunk/icecast/; revision=3781
2002-08-09 14:38:42 +00:00
Michael Smith
7f0230e8ea
Redo memory-management in config.c so that xmlFree() is called instead of
...
free(), hopefully fixing win32 segfaults.
svn path=/trunk/icecast/; revision=3780
2002-08-09 14:36:12 +00:00
Michael Smith
6357936028
Various cleanups for accounting of sent bytes.
...
Crash bug in stats fixed.
svn path=/trunk/icecast/; revision=3779
2002-08-09 14:15:08 +00:00
Michael Smith
5dd00e7423
Fix crash when socket couldn't be bound.
...
svn path=/trunk/icecast/; revision=3776
2002-08-09 13:14:59 +00:00
Michael Smith
0ecb66895a
Add new xslt files, which I forgot earlier
...
svn path=/trunk/icecast/; revision=3775
2002-08-09 08:16:51 +00:00
Michael Smith
fce9ecb952
Allow setting the log level (for the error log, not the access log) from the
...
config file.
svn path=/trunk/icecast/; revision=3774
2002-08-09 08:11:37 +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
9b6b2afeaf
oddsock's xslt stats support, slightly cleaned up
...
svn path=/trunk/icecast/; revision=3772
2002-08-09 06:52:07 +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
Michael Smith
3727b2b32c
Updates for modified logging API.
...
svn path=/trunk/icecast/; revision=3752
2002-08-03 08:16:52 +00:00
Michael Smith
49e028cd02
Lots of patches committable now that my sound card works properly again.
...
logging API changed slightly (I got sick of gcc warnings about deprecated
features).
resampling (for live input, not yet for reencoding) is in there.
several patches from Karl Heyes have been incorporated.
svn path=/trunk/log/; revision=3751
2002-08-03 08:14:56 +00:00
Michael Smith
3e60ee06f6
Config fixes for when parsing fails
...
Don't needlessly call getsockopt() all the time (it's a system call, hence
expensive)
svn path=/trunk/icecast/; revision=3735
2002-07-31 15:00:12 +00:00
Michael Smith
59e523a023
Allow either poll or select to be used (based on whether HAVE_POLL is defined.)
...
Still need to make autoconf define HAVE_POLL where relevent.
svn path=/trunk/icecast/; revision=3717
2002-07-24 14:52:28 +00:00
Michael Smith
b45b6853da
Send the correct mimetype on client request.
...
svn path=/trunk/icecast/; revision=3716
2002-07-24 13:55:12 +00:00
Michael Smith
638ccabd55
MP3 support for icecast2.
...
- no title/metadata support
- requires modifications to source clients.
svn path=/trunk/icecast/; revision=3713
2002-07-23 15:15:11 +00:00
Michael Smith
9cf59b280c
Fix locations of headers.
...
svn path=/trunk/icecast/; revision=3439
2002-06-29 04:29:37 +00:00
Michael Smith
4703f764d7
fix previous fix.
...
svn path=/trunk/icecast/; revision=3391
2002-06-15 04:57:50 +00:00
Michael Smith
903abeb2a5
fixed crash in shutdown if startup didn't happen properly.
...
svn path=/trunk/icecast/; revision=3390
2002-06-15 04:54:43 +00:00
Michael Smith
8a4ae84dce
Fix for evil format string vulnerability - people, don't DO THIS!
...
Fix from Emil Styrke <emil@lysator.liu.se>
svn path=/trunk/icecast/; revision=3341
2002-06-03 09:12:50 +00:00
Michael Smith
92bb45ddc7
missing newlines. oops.
...
svn path=/trunk/icecast/; revision=3319
2002-05-21 05:22:32 +00:00
Michael Smith
fd2ee075f6
Fix segfault from called log functions before log was initialised.
...
svn path=/trunk/icecast/; revision=3316
2002-05-21 00:35:33 +00:00
Michael Smith
9414de162b
Fix potential problem which would occur if <changeuser> was set, but had
...
no <user> or no <group> element within it.
svn path=/trunk/icecast/; revision=3315
2002-05-21 00:05:31 +00:00
Michael Smith
86c78a6be9
chroot and setuid interacted badly in the previous version. Fixed now.
...
svn path=/trunk/icecast/; revision=3311
2002-05-20 13:25:31 +00:00
Michael Smith
4d884d832f
Ian Kumlien's security (chroot() and setuid() patch), with some modifications.
...
svn path=/trunk/icecast/; revision=3302
2002-05-14 11:06:54 +00:00
Michael Smith
669cfbd02f
I am an idiot.
...
svn path=/trunk/icecast/; revision=3292
2002-05-08 14:07:42 +00:00
Michael Smith
2ff217cb18
Minor fix to previous fix - use the right variable!
...
svn path=/trunk/icecast/; revision=3291
2002-05-08 14:02:02 +00:00
Michael Smith
2225738aba
Ensure we don't throw away a buffer after only sending part of it.
...
svn path=/trunk/icecast/; revision=3290
2002-05-08 05:18:43 +00:00
Michael Smith
59b605ec12
Memory leaks. Lots of little ones.
...
svn path=/trunk/httpp/; revision=3275
2002-05-03 15:04:56 +00:00
Michael Smith
0dbd488c17
Don't use start after freeing it in thread startup code.
...
svn path=/trunk/thread/; revision=3264
2002-04-30 06:50:47 +00:00
Jack Moffitt
338f6a0a31
Oddsock finally found the win32 crash bug. _event_listeners wasn't being
...
initialized (the first time it was NULL). After the server is restarted
it retained a pointer to freed memory. We should have been initializing
this anyway.
svn path=/trunk/icecast/; revision=3220
2002-04-05 16:33:35 +00:00
Michael Smith
ea47fdf504
Buffer overflows.
...
Requires a change to the format plugin interface - jack: if you want this
done differently, feel free to change it (or ask me to).
svn path=/trunk/httpp/; revision=3219
2002-04-05 09:28:26 +00:00
Jack Moffitt
235a2639cc
Ouch. Serious bug found by Ricardo Galli.
...
When the cond var is signalled it will wake up a thread. If all the
connection handler threads are handling connections, the signal will be
ignored and clients will 'pend' until another client causes the to signal
again.
We have to check to see if there are more pending connections before waiting
on the signal again.
svn path=/trunk/icecast/; revision=3178
2002-03-22 22:41:16 +00:00
Jack Moffitt
785cfefe3e
Ricardo Galli found this too. We weren't setting no linger and keepalive
...
as we used to in icecast1. They make things work a bit better.
svn path=/trunk/net/; revision=3177
2002-03-22 21:44:29 +00:00
Jack Moffitt
7bccdbd4f0
Fix comments (and remove old commented out code) from sock_write_bytes.
...
svn path=/trunk/net/; revision=3176
2002-03-22 21:24:57 +00:00
Jack Moffitt
d8559723fb
We were triggering error logic when no errors had occurred. Thanks
...
to Ricardo Galli for finding this bug.
svn path=/trunk/icecast/; revision=3175
2002-03-22 21:18:03 +00:00
Jack Moffitt
06fb100e10
Add error == 0 to recoverable error numbers. Patch from Ricardo Galli.
...
Minor style fixes.
svn path=/trunk/net/; revision=3174
2002-03-22 21:09:36 +00:00
Jack Moffitt
39635122a5
win32 patches from Ed
...
svn path=/trunk/icecast/; revision=3123
2002-03-05 23:59:38 +00:00
Michael Smith
cb9de1ee2a
Comment audio/mpeg out until it gets implemented, to avoid segfaults.
...
svn path=/trunk/icecast/; revision=3076
2002-02-19 22:01:51 +00:00
Jack Moffitt
3807800d82
Fix race condition on thread shutdown.
...
svn path=/trunk/icecast/; revision=3045
2002-02-14 00:41:57 +00:00
Jack Moffitt
12cbc0a29d
Shut down the stats_connection and stats_callback threads cleanly when
...
stats_shutdown() is called.
svn path=/trunk/icecast/; revision=3044
2002-02-14 00:28:41 +00:00
Michael Smith
cb398ff41c
Bunch of fixes:
...
- connections are now matched to format plugins based on content-type headers,
and are rejected if there isn't a format handler for that content-type, or
there is no content-type at all.
- format_vorbis now handles pages with granulepos of -1 in the headers
correctly (this happens if the headers are fairly large, because of
many comments, for example).
- various #include fixes.
- buffer overflow in httpp.c fixed.
svn path=/trunk/avl/; revision=3042
2002-02-11 09:11:18 +00:00
Jack Moffitt
4cc0705134
Minor cleanup of 'static' functions.
...
Fixed usage bug where usage wasn't getting displayed properly.
svn path=/trunk/icecast/; revision=3034
2002-02-08 03:59:17 +00:00
Jack Moffitt
7927f1d31f
More win32 fixes.
...
svn path=/trunk/icecast/; revision=3033
2002-02-08 03:51:19 +00:00
Jack Moffitt
4327a10e45
minor build fixes for win32 courtesy of Oddsock
...
svn path=/trunk/icecast/; revision=3029
2002-02-07 01:04:09 +00:00
Jack Moffitt
ab0f4cdda8
Factor out common code in stats.c.
...
svn path=/trunk/icecast/; revision=3027
2002-02-06 07:52:09 +00:00
Jack Moffitt
4144bb05fb
A very slightly modified version of oddsocks function to support gui
...
stats updates. Basically stats_connection() was copied to
stats_callback() (i should probably factor out some of the code here!)
with the change that instead of sending stats to a socket, it sends the
event to a callback function.
svn path=/trunk/icecast/; revision=3026
2002-02-06 06:11:03 +00:00
Jack Moffitt
c7aa89cf26
Two things:
...
1) vorbis tags (ARTIST and TITLE) now appear in the stats. Oddsock did
the first cut of this.
2) stats bug fixed. if a stats value was NULL a segfault occurred.
strdup(NULL) is fun!
svn path=/trunk/icecast/; revision=3024
2002-02-04 07:08:52 +00:00
Michael Smith
0512d524e4
Allow logging to go to stderr instead of to a file, if the user so chooses
...
(example configs turn this off, to leave behaviour as it was).
svn path=/trunk/log/; revision=3008
2002-01-29 09:20:28 +00:00
Jack Moffitt
34c6203669
Add a source-timeout config option and implement it. This prevents lame
...
sources from sticking around way too long. Default is 10 seconds.
svn path=/trunk/icecast/; revision=2968
2002-01-21 04:28:30 +00:00
Jack Moffitt
4d079ba4cc
Make it log to a file when the source gets disconnected
...
svn path=/trunk/icecast/; revision=2967
2002-01-21 03:56:16 +00:00
Jack Moffitt
b7a114a191
Fix a stupid but that Oddsock and Ciaran both found. When sources log in
...
we weren't checking to see if the mountpoint was already taken. Since
the mountpoint was the key in the avl tree, bad things happened.
svn path=/trunk/icecast/; revision=2966
2002-01-21 03:10:37 +00:00
Jack Moffitt
6c0132596f
Thanks to Ciaran for realizing that we werne't freeing the format plugins
...
memory on source exits. This caused a small but noticable memory leak.
The fix was to add a new method to the format_plugin object -
free_plugin() - and have the source thread call this on shutdown.
svn path=/trunk/icecast/; revision=2946
2002-01-05 00:29:27 +00:00
Jack Moffitt
cbbdb5fc49
Ciaran found this bug. We only ever set tv_usec, but for bitrates around
...
32 and lower, this will set tv_usec to > 1 second, which wrong. So we
do it the right way, and put seconds in tv_sec.
svn path=/trunk/timing/; revision=2507
2001-12-09 08:31:20 +00:00
Michael Smith
d22bb9a528
Major stability fixes, to make things work better on bad input. Stops some
...
memory leaks too, I think.
svn path=/trunk/log/; revision=2326
2001-11-10 04:47:25 +00:00
Jack Moffitt
c15a877085
Fix broken CFLAGS handling.
...
svn path=/trunk/icecast/; revision=2238
2001-10-21 16:13:02 +00:00
Jack Moffitt
c9fa9cd040
Fix lib handling.
...
svn path=/trunk/icecast/; revision=2235
2001-10-21 15:25:45 +00:00
Michael Smith
17e1289a89
configure.in: solaris requires -D_REENTRANT. What about other platforms?
...
source.c: fix bug in handling non-fatal errors like EAGAIN
svn path=/trunk/icecast/; revision=2225
2001-10-21 10:07:51 +00:00
Jack Moffitt
c98a76ebbd
Revert stacksize stuff and changes for the thread module.
...
svn path=/trunk/icecast/; revision=2223
2001-10-21 02:06:08 +00:00
Jack Moffitt
1902634e50
Revert the stacksize work. It's stupid.
...
The original patch from Ben Laurie some years ago was needed because
FreeBSD's default stack size was < 8k and this wasn't acceptable.
Both Linux and Solaris had reasonable defaults for stacksize, or grew the
stack as needed to a reasonable size.
Testing today and consulting documentation shows that the default stack
sizes on FreeBSD, Linux, and Solaris are all acceptable. Linux can grow
to 2MB, 32bit Solaris defaults to 1MB, 64bit Solaris defaults to 2MB, and
FreeBSD defaults to 64k.
In my opinion FreeBSD needs to get with the program and provide a
reasonable default. 64k is enough for us, but might not be for others.
svn path=/trunk/thread/; revision=2222
2001-10-21 02:04:27 +00:00
Jack Moffitt
42e869cd45
Fix icecast for changes in thread module regarding stacksize. For icecast,
...
the default stacksize is unchanged (8k) until further testing on Solaris
to determine if a larger value is needed.
svn path=/trunk/icecast/; revision=2221
2001-10-20 22:48:29 +00:00
Jack Moffitt
cdf8edb30c
Fix header definition.
...
svn path=/trunk/thread/; revision=2219
2001-10-20 22:40:28 +00:00
Jack Moffitt
62384d6730
Stack size per thread needs to be configurable. Setting it on a global
...
bases is not enough. ices and icecast need this to be different, and
if one is interested in tuning memory usage, one will want to alter this
per thread.
svn path=/trunk/thread/; revision=2217
2001-10-20 22:27:52 +00:00
Jack Moffitt
2223ecb8c5
Forgot to add new compat.h to Makefile.am. Fixed.
...
svn path=/trunk/icecast/; revision=2207
2001-10-20 21:29:16 +00:00
Jack Moffitt
42688a8366
Add check for stdint.h, since Solaris doesn't have it. This is needed
...
on Linux for uint64_t, but Solaris defines this in sys/types.h. Use check
where appropriate, and also add typedefs for Win32.
svn path=/trunk/icecast/; revision=2206
2001-10-20 21:28:09 +00:00
Jack Moffitt
9e6fddca93
Minor cleanup.
...
svn path=/trunk/log/; revision=2200
2001-10-20 16:47:01 +00:00
Jack Moffitt
3553fce604
Thanks to Akos Maroy <darkeye@tyrell.hu> for this. These variables need to
...
be uppercase always in order to comply with the HTTP specification.
While not a problem internal to icecast, they were slipping into the log
files and breaking some less-than-robust parsers.
svn path=/trunk/httpp/; revision=2197
2001-10-20 07:40:09 +00:00
Jack Moffitt
632c1e57fb
It's too bad we don't have a commit script that smacks me upside the head
...
when I do stupid things like this.
svn path=/trunk/icecast/; revision=2196
2001-10-20 06:51:29 +00:00
Jack Moffitt
8f6c02365d
Win32 fixes. Look how portable this was ;) Just header stuff and some defines.
...
Whee!
svn path=/trunk/icecast/; revision=2195
2001-10-20 06:43:04 +00:00
Jack Moffitt
71539aa447
Win32 updates. Mostly header fixes and defines for windows. Apparently
...
interface is a reserved word, so we've renamed one variable. There's
also no sethostent on win32, and Oddsock seems to think we need
DeleteCriticalSection instead of DestroyCriticalSection. I was unable
to figure out from msdn.microsoft.com why this was, but I'll trust
Oddsock's judgement.
svn path=/trunk/net/; revision=2194
2001-10-20 05:57:28 +00:00
Jack Moffitt
5d78cb3bd6
Win32 fixes. Specifically a header change and not using the gcc extensions
...
for vararg macros. It's not as pretty, but it works.
svn path=/trunk/thread/; revision=2193
2001-10-20 05:35:30 +00:00
Jack Moffitt
f69b99f1c8
Microsoft has '_' in front of random functions. We typedef this away.
...
svn path=/trunk/log/; revision=2192
2001-10-20 05:13:12 +00:00
Jack Moffitt
64942a4113
select first argument should be 0 when we use it for sleeping.
...
svn path=/trunk/timing/; revision=2191
2001-10-20 05:05:19 +00:00
Jack Moffitt
5a4f55d74c
Change long long to the more standard uint64_t. This will need to be
...
typedefed for some platforms.
svn path=/trunk/timing/; revision=2190
2001-10-20 05:03:24 +00:00
Jack Moffitt
5c1e963203
Win32 compatibility courtesy of Oddsock.
...
svn path=/trunk/httpp/; revision=2188
2001-10-20 04:41:54 +00:00
Jack Moffitt
1656225439
Oddsock found this bug when working with icecast2 on freebsd. Nanoseconds
...
were off by a few orders of magnitude.
svn path=/trunk/thread/; revision=2187
2001-10-20 03:39:10 +00:00
Michael Smith
9d87eecd0f
Open logs in line-buffered mode, so that logging is actually useful.
...
svn path=/trunk/log/; revision=2075
2001-09-23 10:07:06 +00:00
Jack Moffitt
6c296ff020
.cvsignore is fun!
...
svn path=/trunk/avl/; revision=2006
2001-09-10 03:04:11 +00:00
Jack Moffitt
abb2a595fc
Still more .cvsignore
...
svn path=/trunk/avl/; revision=2005
2001-09-10 03:00:41 +00:00
Jack Moffitt
d7bfccb5a8
.cvsignore stuff
...
svn path=/trunk/icecast/; revision=2004
2001-09-10 03:02:23 +00:00
Jack Moffitt
6009622745
More .cvsignore
...
svn path=/trunk/avl/; revision=2001
2001-09-10 02:58:24 +00:00
Jack Moffitt
73a606c8b1
Initial revision
...
svn path=/trunk/avl/; revision=1997
2001-09-10 02:24:39 +00:00
Jack Moffitt
61316a25d7
Initial revision
...
svn path=/trunk/icecast/; revision=1996
2001-09-10 02:21:46 +00:00