for this solution. I'm easily convinced to choose AP_MAX_SENDFILE based
on any reasonable argument, provided it's smaller than 2^30 :-)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89714 13f79535-47bb-0310-9956-ffa450edef68
pass some initial testing, but it needs to be banged on more. It looks
like if the server gets a lot of requests to restart all at once, there
are potential problems, but other than that this does seem to solve our
current restart issues.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89282 13f79535-47bb-0310-9956-ffa450edef68
prefix to all of the uri functions (yuck), changing some includes,
and using APR error codes instead of HTTP-specific error codes.
Other notes to test this patch:
- You need to delete the util_uri.h file - exports picks up on this.
- I'd like to remove the apr_uri.h from httpd.h, but that might
increase the complexity of this patch even further. Once this patch
is accepted (in some form), then I can focus on removing apr_uri.h
from httpd.h entirely. I need baby steps (heh) right now.
- I imagine that this might break a bunch of stuff in Win32 or other OS
builds with foreign dependency files. Any help here is appreciated.
This is a start... -- justin
Submitted by: Justin Erenkrantz
Reviewed by: Roy Fielding
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89198 13f79535-47bb-0310-9956-ffa450edef68
determine how much data is returned to the previous filter. Prior to this
change, we used a field in the conn_rec to determine how much to return.
After this change, we use an argument to ap_get_brigade. This makes it
much more obvious how things work at all levels, so that module authors
can easily determine how much data is supposed to be returned to them.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88912 13f79535-47bb-0310-9956-ffa450edef68
It sorts out the problem when a password protected reverse proxy URL
sends a Proxy-Authenticate to a browser instead of a WWW-Authenticate.
This patch covers the changes to the httpd-2.0 tree.
Submitted by: Graham Leggett
Reviewed by: Chuck Murcko
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88527 13f79535-47bb-0310-9956-ffa450edef68
some type safety. (unfortunately, our old "void*" is type-safe with the
new one, but over time we should be better)
*) Propagate the new type to all appropriate functions.
*) Random cleaning, whitespace, stylistic nits.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88225 13f79535-47bb-0310-9956-ffa450edef68
since some system header files do their own monkeying around with those
functions in ways that don't get along with us unless we include their
definitions first
examples: gcc 2.8.1 on Solaris
gcc 2.95.2 on AIX
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88113 13f79535-47bb-0310-9956-ffa450edef68
*) remove DEFAULT_XFERLOG from main.c; it is never set/used
*) move ap_get_max_daemons() to ap_mpm.h
*) move DEFAULT_LISTENBACKLOG to mpm_common.h
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@88103 13f79535-47bb-0310-9956-ffa450edef68
mpm_common.c. These functions are only valid on some platforms,
so they should not be in the main-line code.
These functions are also not portable to non-unix platforms, so they don't
really belong in APR. Since they are only used in MPMs, for right now,
I am moving them to mpm_common.c
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87755 13f79535-47bb-0310-9956-ffa450edef68
are used or not. This uses the same mechanism that is used for APR
and APR-util. This may not be the correct solution, but it works, and that
is what I really care about. This also renames CHARSET_EBCDIC to
AP_CHARSET_EBCDIC. This is for namespace correctness, but it also makes
the exports script a bit easier.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87424 13f79535-47bb-0310-9956-ffa450edef68
representation of the bound address to something which handles
IPv6; this also allows us to switch to APR resolver routines
in places instead of calling gethostbyname() and gethostbyaddr()
directly
Issues remaining with this set of changes:
1) apr_snprintf()'s %pA formatting needs to change to take
apr_sockaddr_t * instead of sockaddr_in * -OR- just get rid
of that type of formatting
2) apr_get_inaddr() is no longer used and should be removed
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87363 13f79535-47bb-0310-9956-ffa450edef68
is not used anymore and it doesn't handle IPv6, so it is best to
drop it. If/when mod_tls (Netware) is ported to 2.0 it can use
apr_parse_addr_port().
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87354 13f79535-47bb-0310-9956-ffa450edef68
const-ness since we sometimes put "some string" in there, and also the CRT's
argv). propagate this change within http_main and mpm/winnt/ (also correct
some other const type usage within the MPM).
fix ab's call to parse_url() which removed a const to actually manipulate an
arg from the CRT's argv (indirectly via opt->arg). no idea how this has
avoided segfaulting.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87130 13f79535-47bb-0310-9956-ffa450edef68
files need to specifically include stdio.h, or a particular apr_*.h
header.
*) Adjust callers of apr_create_process() to deal with the extra "const"
*) Add "const" to args of ap_os_create_privileged_process()
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87080 13f79535-47bb-0310-9956-ffa450edef68
there is still some bogosity in there (huge buffer allocs!), and some
optimizations to be made, but this appears to fix byterange handling.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86865 13f79535-47bb-0310-9956-ffa450edef68
the byterange handling and ap_set_content_length().
[ ap_each_byterange() remains as an apr_size_t* so we don't mess up callers ]
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86860 13f79535-47bb-0310-9956-ffa450edef68
to use REQUEST_CHUNKED_DECHUNK.
Because of this change, the need for handle_request_body() is gone,
so we remove that as well.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86827 13f79535-47bb-0310-9956-ffa450edef68
casting away the const was absolutely wrong... the warnings were saying the
return value type needed to be fixed. did that and torched the casts.
who still thinks casts are a good idea? :-)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86668 13f79535-47bb-0310-9956-ffa450edef68
with this. To begin with, we store both the socket and the BUFF in the
conn_rec. Functions are free to use which ever they want, in the end all
of the data goes to the same place. This modifies all of the MPMs except
Windows. All of the Unix MPMs are working, but the others need to be
tested.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86651 13f79535-47bb-0310-9956-ffa450edef68