• Michael Smith's avatar
    Remove locking from refbuf: we used a single global lock for all of them, which · ed019c0c
    Michael Smith authored
    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
    ed019c0c
admin.c 11.9 KB