Parent Directory
|
Revision Log
| Links to HEAD: | (view) (annotate) |
| Sticky Revision: |
Remove CORE_PRIVATE. This define serves no modern purpose, since every module in the wild, including our own define it, for no purpose. If you have functions which you do not want in the 'public' API, put them in a private header, that is not installed, just like mod_ssl does.
update license header text
Update the copyright year in all .c, .h and .xml files
Doxygen fixup / cleanup submited by: Neale Ranns neale ranns.org reviewed by: Ian Holsman
Update copyright year to 2005 and standardize on current copyright owner line.
general property cleanup
Send the 'Close Alert' message to the peer upon closing a SSL session. This required creating a new EOC (End-Of-Connection) bucket type to notify mod_ssl that the connection is about to be closed. Reviewed by: Joe Orton, Justin Erenkrantz
fix name of The Apache Software Foundation
fix copyright dates according to the first check in
apply Apache License, Version 2.0
update license to 2004.
finished that boring job: update license to 2003. Happy New Year! ;-))
BUCKET FREELISTS Add an allocator-passing mechanism throughout the bucket brigades API. From Apache's standpoint, the apr_bucket_alloc_t* used throughout a given connection is stored in the conn_rec by the create_connection hook. That means it's the MPM's job to optimize recycling of apr_bucket_alloc_t's -- the MPM must ensure that no two threads can ever use the same one at the same time, for instance.
Update our copyright for this year.
Remove the install_transport_filters hook. The same function can be acheived with the pre_connection hook. I have added the socket to the pre_connection phase to make this possible. Reviewed by: Bill Stoddard
Reintroduce the create_connection hook. This hook is required to enable modules to completely take over all network i/o from the core.
This patch restores most of Ryan's patch (11/12/2001) to remove the client_socket from the conn_rec. Diffs from Ryan's patch include: - rename the create_connection hook to install_transport_filters - move the point of invocation of the hook till after the call to after ap_update_vhost_given_ip to enable the hook to use vhost config info in its decision making.
Remove the create_connection hook and put the client_socket back into the conn_rec. The create_connection_hook has a design flaw that prevents it from making decisions based on vhost information.
Change core code to allow an MPM to set hard thread/server limits at startup.
Pull lingering close out of the pool cleanup phase. This was causing too many bugs. Instead, it is called where it used to be called. I have abstracted some of the logic out of the lingering close so that it gets the socket from the connection using the core's conn_config vector. This is in anticipation of a change to use a hook for the lingering close, which I hope to do soon.
Add the server_rec argument back to the create_connection hook. Submitted by: Greg Stein
Remove ap_new_connection from the header. I missed this when I removed the function. Submitted by: Brad Nicholes <BNICHOLES@novell.com>
Back out my last patch. The logic to add sockets to pollsets is back in the MPM
This allows modules to add socket descriptors to the pollset. I have only added this to the perfork MPM, and the others work without it. Tomorrow I will add it to the other MPMs.
Add docs for the newest hook.
Cleanup some code that was created during the abstration. This basically takes the old ap_new_connection, and puts into the new core_create_conn function. There is no good reason to have two functions to do this.
Begin to abstract out the underlying transport layer. The first step is to remove the socket from the conn_rec, the server now lives in a context that is passed to the core's input and output filters. This forces us to be very careful when adding calls that use the socket directly, because the socket isn't available in most locations.
Fix the Windows MPM. Windows doesn't always use the lingering close function. If it can re-use the socket, we are better off not calling the function. To fix this, we re-expose the lingering_close function, and we allow the MPM to remove the cleanup.
Remove ap_lingering_close from all of the MPMs. This is now done as a cleanup registered with the connection_pool. I have also turned ap_lingering_close into a static function, because it is only used in connection.c. This is the next step to consolidating all of the socket function calls. ap_lingering_close will only be added if the core is dealing with a standard socket.
Doc formatting fixes
Add the AP_DECLARE()/AP_CORE_DECLARE macros on the return types of functions used by mod_proxy for export in DLL Submitted by: Ian Holsman <IanH@cnet.com> Reviewed by: Chuck murcko
Move more code from the http module into the core server. This is core code, basically the default handler, the default input and output filters, and all of the core configuration directives. All of this code is required in order for the server to work, with or without HTTP. The server is closer to working without the HTTP module, although there is still more to do. I tried to fix Windows, but somebody should probably make sure I did it correctly.
Update copyright to 2001
ap_new_connection() returns NULL if an error occurred (prefork MPM and ap_new_connection() were changed last week) I have skipped putting the change into WinNT MPM and mod_proxy. I left a note in the mod_proxy code; for the NT MPM I think I can talk somebody into doing the right thing for me.
fix minor prototype inconsistencies noticed with C::Scan
The fast fix to get FirstBill back out of the gate. It brings up an issue I'll address to the list.
By popular review
The big change. This is part 3 of the apr-util symbols rename, please see the first commit of srclib/apr-util/include (cvs apr-util/include) for the quick glance at symbols changed.
Get rid of ap_new_apr_connection(). ap_new_connection() now has fewer parameters: the local and remote socket addresses were removed from the parameter list because all required information is available via the APR socket. I haven't tested the most important part -- the WinNT MPM changes -- but it compiles and it looks okay :) If the WinNT MPM works on Win98 these days let me know.
Fix some incorrect docs Submitted by: Jon Travis <jtravis@covalent.net>
Make lingering close access the socket directly, instead of relying on BUFF. This has been tested, but all we can determine is that it doesn't fail, not that it works. This needs to be tested much better.
This begins to remove BUFF from the server. The idea is to go very slowly 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.
Renamed all MODULE_EXPORT symbols to AP_MODULE_DECLARE and all symbols for CORE_EXPORT to AP_CORE_DECLARE (namespace protecting the wrapper) and retitled API_EXPORT as AP_DECLARE and APR_EXPORT as APR_DECLARE. All _VAR_ flavors changes to _DATA to be absolutely clear. Thank you Greg, for the most obvious suggestion.
Move where the CORE_IN filter is added to the server. We used to do this in ap_new_connection, but that is bogus, because then other modules can't put their own filter in. Now, we do this in a new pre-connection hook function. Later, we will want to add some checking to make sure that this is really an HTTP request that we are adding the filter for.
prefix libapr functions and types with apr_
Make http_log use ScanDoc
Document http_connection.h using ScanDoc
Remove const from ap_socket_t parameters on APR functions so that APR can modify the ap_socket_t as it sees fit. It may choose to modify the ap_socket_t on functions which only read from the ap_socket_t conceptually. Note: http_connection::ap_new_apr_connection() passes its ap_socket_t arg to one of the changed functions, so const was removed there also.
PR: Obtained from: Submitted by: Reviewed by: Reverse out additional linkage argument from DECLARE_HOOK and IMPLEMENT_HOOK macros.
This patch corrects the issues from the AP_EXPORT and linkage
specification arguments to the ap_hooks.h declarations. As with
the APR_ and AP_ patches, API_VAR_EXPORT becomes API_EXPORT_VAR,
and MODULE_VAR_EXPORT becomes MODULE_EXPORT_VAR.
I will be happy to revert the inclusion of ap_config.h from
httpd.h if this bothers anyone. More individual modules need
to be patched if we do so.
The API_EXPORTs all moved into central storage in the ap_config.h
header. Without WIN32 or API_STATIC compile time declarations,
these macros remain no-ops.
This patch also moves the following data from http_main to http_config:
const char *ap_server_argv0;
const char *ap_server_root;
ap_array_header_t *ap_server_pre_read_config;
ap_array_header_t *ap_server_post_read_config;
ap_array_header_t *ap_server_config_defines;
And the following variables had already moved into ap_hooks.c:
ap_pool_t *g_pHookPool; (initialized now in http_config)
int g_bDebugHooks; (out of http_config)
const char *g_szCurrentHookName; (out of http_config)
The changes to http_main.c are in preparation for that module to
move out to a seperate .exe for win32. Other platforms will be
unaffected, outside of these changes.
Add the prototype for ap_lingering_close()
change ap_hook_pre_connection from VOID to RUN_ALL
add AP_ prefix to *HOOK* macros
Change ap_context_t to ap_pool_t. This compiles, runs, and serves pages on Linux, but probably breaks somewhere.
Update to Apache Software License version 1.1
Fix all the License issues. Including: s/Apache Group/Apache Software Foundation/ s/1999/2000/ s/Sascha's license/ASF license
Finish the commits for the change in the header files. Basically, this hides all of the Apache macros that modules don't need access to. This should have been committed with the modules, but I wasn't paying attention to the directory I was in when I ran the commit. Submitted by: Manoj Kasichainula and Ryan Bloom
Enhancements for APR network_io. Adds separate local/remote access methods for a socket's port, IP address and sockaddr_in. Updates for Apache code to use these, allowing the correct IP address of clients to be logged.
Changed pools to contexts. Tested with prefork and pthread mpm's. I'll check this out tomorrow and make sure everything was checked in correctly.
Add a connection ID to conn_rec. It uniquely identifies a connection at any instant in time. It's not very well tested yet.
Take child_num and thread_num out of conn_rec. They aren't used anywhere anymore, and conn_rec is the wrong place for them.
And with one bound, he was free! This seemingly minor change allows modules to take over connection processing, thus making Apache multiprotocol. Woo!
Strawman hooks implementation (beginning of).
Use ap_new_connection in pthread MPM. This required adding an argument to ap_new_connection for now: thread_num.
New API for I/O layering, and dependency updates.
Initial revision
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
| apache@apache.org | ViewVC Help |
| Powered by ViewVC 1.1.2 |