caused significant lock contention with many sources. Further, a single refbuf
is never used by more than one source (and hence one thread), so the locking
was unneeded.
Fix a nasty bug in source.c:_compare_clients() - was casting a void pointer
to the wrong type, and hence all the tree-maintaince comparisons were totally
wrong (but due to the exact nature of the bug this wasn't causing any active
problems until...)
Add another admin command to kill a client - remove it using an id. Note that
many clients will do auto-reconnect, so this may not be sufficient on its own,
we might need a ban (possibly temporary) function.
svn path=/trunk/icecast/; revision=4569
ending up connecting to a source which didn't exist.
Add 'moveclients' admin command to move all clients from one source to
another (without shutting the old source down)
svn path=/trunk/icecast/; revision=4489
rename util_url_escape to util_url_unescape, and write a util_escape function
that actually DOES escape things. Fix all the callers of the function to call
the correct one of these two.
svn path=/trunk/icecast/; revision=4414