fix: Missing check for invalid ids in reportuploads_handler

This also fixes a error with the arguments passed in as the format string arguments.

Signed-off-by: BenBE <BenBE@geshi.org>
Reduce code indentation, move common code extracting per_dir_config to function

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>
Merge branch 'mpokrywka/master'

Signed-off-by: BenBE <BenBE@geshi.org>
Implement an ETA feature for uploads & a feature to tell when it acutally finished

Signed-off-by: BenBE <BenBE@geshi.org>
Updated README

Signed-off-by: BenBE <BenBE@geshi.org>
fix: Typo in variable assignment

Signed-off-by: BenBE <BenBE@geshi.org>
Add debugging info when lock file is removed

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>
Do not create private pool, use global

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>
fix: Fixed typo reported by Jérémy Bobbio

Signed-off-by: BenBE <BenBE@geshi.org>
add: Report non-POST requests when extensive debugging is enabled.

Signed-off-by: BenBE <BenBE@geshi.org>
chg: Only query server configuration when necessary (cleanup of logs + performance)

Signed-off-by: BenBE <BenBE@geshi.org>
Use apache module infrastructure to merge vhosts configs
Side effect - all vhosts configs now point to same struct. Progress nodes
memory is shared between vhosts, so same config can also be shared.

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>
Remove "server" field from ServerConfig
Now server config is shared, use appropriate server for logging
instead of config->server.
Also assign global_server earlier (during create_server_config).

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>
Cosmetic code changes (removed unused local variables, renamed local variables)

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>
Do not store pointers in shared memory
Keeping pointers to nodes and active list in shared memory was my bad idea.
Although it works, because child processes inherit shared memory mapped at the
same address as parent that allocated aformentioned shmem, this excludes usage
of shmem by other processes (ie. prospective upload progress cache browser)
Shared memory block is "partitioned" manually without use of apache rmm interface
(pointer arithmetic is easy ;-)

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>
Regenerate shared memory pointers in child processes
Inspired by mod_shm_counter

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>
Implemented proper locking on request cleanup function

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>
Use proper server for debug logging in track_upload_progress

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>
Add debugging for very unlikely condition in track_upload_progress

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>
Add more debugging noise (useful for debugging apache prefork simultaneous requests)

Signed-off-by: Michał Pokrywka <michal.pokrywka@gmail.com>