[Icecast-dev] [PATCHES] Smartjog PatchDump

Niv Sardi
Fri, 30 Jul 2010 14:54:22 -0000

Hello,

I work at SmarctJog.com, we have here some patches on IceCast for
performance and reliability, these are mostly client/connection/source
cleanups (a slave merge is underway, and some more good stuff (c)),
but we'd like this to be merged in before the list gets any longer.

Please find attached a list of our patches with a short desc:

This one is actually not from us/me, it was found on a forum long time
ago, and I re-worked it a bit, sorry for the name stealing, author
please manifest.

 [PATCH 01/31] Hack to support IPhone streaming

[Thread connection]
 [PATCH 02/31] introduce thread_cond_init and refrase thread_cond_create.

[Get rid of the {WARN,INFO,DEBUG,..}n macros]
 [PATCH 03/31] LOGGING add non arg-counted macros.

[simplify header parsing, inspired by source.c code]
 [PATCH 04/31] UTIL, add find_eos_delim and use it to simplify util_read_header
(pending con)
 [PATCH 05/31] connection: make process_request_queue use util_find_eos_delim
 [PATCH 06/31] connection.c: use util_find_eos_delim to simplify
_handle_shoutcast_compatible

[cleanup shoutcast code]
 [PATCH 07/31] Connection: make _handle_shoutcast_compatible more readable,

[cleanup generic connection code]
 [PATCH 08/31] connection: _handle_connection re-roll logic in a more readeable
way.
 [PATCH 09/31] connection: simplify _handle_connection (make it more readeable)
 [PATCH 10/31] Connection: _accept_connection, simplify logic
 [PATCH 11/31] Connection: connection_accept_loop, pass timeout

[big refactoring]
 [PATCH 12/31] Connection: refactor source_startup
 [PATCH 13/31] Connection: let everything go through fserve

[add post support]
 [PATCH 14/31] Add POST support. WARNING, still no AUTH

[re-work connection process, to a more readable and simple way]
 [PATCH 15/31] Connection: simplify in-connection handeling (kill 1 function,
and break shoutcast)
 [PATCH 16/31] Connection: extract connection_process
 [PATCH 17/31] Connection: add threads this needs to go after the client_tag_t
obsoletting patch
 [PATCH 18/31] connection_process takes node, con_q_t gets refbuf, and con_t
timeout, util updated
 [PATCH 19/31] connection: process takes node, not con+args, cleanup error
handeling (propagate)
 [PATCH 20/31] connection: add parser to connection, and use read_headers
changes.
 [PATCH 21/31] Add Client in connection_queue_t
 [PATCH 22/31] Fix Shoutcast, Move it to a one-pass process

[tweaks]
 [PATCH 23/31] connection: duration should be bigger
 [PATCH 24/31] connection: reorder logic in connection_setup_sockets
 [PATCH 25/31] client_send_400, print 400 message
 [PATCH 26/31] Connection: handle_client returns err to client (via
client_send_400)
 [PATCH 27/31] connection: more coments for remy
 [PATCH 28/31] Big Comments cleanup
 [PATCH 29/31] connection: client_setup, send 403 when we can for error
 [PATCH 30/31] connection: _close set everything to NULL on the way out

[this might be a bug]
 [PATCH 31/31] source: make get_next_buffer try only 10 times and then bail out