1
0
mirror of https://github.com/apache/httpd.git synced 2026-01-26 19:01:35 +03:00
Commit Graph

764 Commits

Author SHA1 Message Date
Bradley Nicholes
22eea3fa9c Fixed ap_listeners so that it will be included in the AWK generated export lists
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91948 13f79535-47bb-0310-9956-ffa450edef68
2001-11-14 18:19:32 +00:00
Ryan Bloom
91aa604600 Allow modules that add sockets to the ap_listeners list to
define the function that should be used to accept on that
socket.  Each MPM can define their own function to use for
the accept function with the MPM_ACCEPT_FUNC macro.  This
also abstracts out all of the Unix accept error handling
logic, which has become out of synch across Unix MPMs.

The code flow is much easier now for different transports:

1)  During pre-config, post-config or while parsing the config
    file, add a socket to the ap_listeners list, making sure to
    define an accept function at the same time.

2)  MPMs find the correct listener, and call the accept function
    that was defined in step 1.

3)  That accept function returns a void pointer, which is passed
    to the create_connection hook.

4)  create_connection adds the correct low-level filters.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91916 13f79535-47bb-0310-9956-ffa450edef68
2001-11-13 22:42:38 +00:00
Ryan Bloom
695081280d Add the server_rec argument back to the create_connection hook.
Submitted by:	Greg Stein


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91913 13f79535-47bb-0310-9956-ffa450edef68
2001-11-13 20:29:54 +00:00
Ryan Bloom
22b467666a Remove ap_new_connection from the header. I missed this when I removed
the function.
Submitted by:   Brad Nicholes <BNICHOLES@novell.com>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91911 13f79535-47bb-0310-9956-ffa450edef68
2001-11-13 20:10:11 +00:00
Ryan Bloom
3d76585bad Back out my last patch. The logic to add sockets to pollsets is back in
the MPM


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91906 13f79535-47bb-0310-9956-ffa450edef68
2001-11-13 17:44:07 +00:00
Ryan Bloom
a47ed5762d 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.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91899 13f79535-47bb-0310-9956-ffa450edef68
2001-11-13 07:15:36 +00:00
Ryan Bloom
aefc6b1525 Remove commas from the end of the macros that define
directives that are used by MPMs.  Previous to this patch,
you would use these macros without commans, which was unlike
any other directives. Now, after the macro, you must have
a comma.  This makes the macros look more like the rest of the
directives.

I know this is cosmetic, and I was going to leave it alone, but when
I found out that it bothered Cliff too, I decided to fix it after all.

Submitted by:	Ryan Bloom and Cliff Woolley


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91896 13f79535-47bb-0310-9956-ffa450edef68
2001-11-13 06:04:25 +00:00
Ryan Bloom
61ebbf74e3 Add docs for the newest hook.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91892 13f79535-47bb-0310-9956-ffa450edef68
2001-11-13 04:01:28 +00:00
Ryan Bloom
44baa0367f 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.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91890 13f79535-47bb-0310-9956-ffa450edef68
2001-11-13 02:09:07 +00:00
Ryan Bloom
0c05b625ac 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.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91887 13f79535-47bb-0310-9956-ffa450edef68
2001-11-12 23:49:08 +00:00
Ryan Bloom
383606d518 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.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91839 13f79535-47bb-0310-9956-ffa450edef68
2001-11-10 21:07:13 +00:00
Ryan Bloom
13cf9521f5 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.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91832 13f79535-47bb-0310-9956-ffa450edef68
2001-11-10 18:26:30 +00:00
Greg Ames
1e16a0ce58 advancing release numbers to 2.0.29-dev after tag
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91808 13f79535-47bb-0310-9956-ffa450edef68
2001-11-08 19:44:40 +00:00
Greg Ames
c0ec58095b about to tag 2.0.28
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91807 13f79535-47bb-0310-9956-ffa450edef68
2001-11-08 19:37:01 +00:00
Doug MacEachern
4d8781b7c6 ap_getline() is useful to modules outside of the core..
change declaration from AP_CORE_DECLARE to AP_DECLARE so it can be used
used outside the core
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91778 13f79535-47bb-0310-9956-ffa450edef68
2001-11-07 05:41:22 +00:00
Cliff Woolley
4421663d68 Fix the spelling of the AP_MPMQ_MIN_SPARE_DAEMONS and
AP_MPMQ_MAX_REQUESTS_DAEMON macros.  Better to do it now rather than later.

**WARNING** This will of course break the compile on any third-party MPMs
you might have floating around, but it's a really quick change to make.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91777 13f79535-47bb-0310-9956-ffa450edef68
2001-11-07 05:29:58 +00:00
Greg Ames
e36f054804 bumping release number to 2.0.28-dev after tag
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91701 13f79535-47bb-0310-9956-ffa450edef68
2001-10-31 03:43:25 +00:00
Greg Ames
f2e7bb3288 bump release number to 2.0.27
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91700 13f79535-47bb-0310-9956-ffa450edef68
2001-10-31 03:25:03 +00:00
Ryan Bloom
dbb19e0e8c Fix the reporting for child processes that die. This removes
all of the non-portable W* macros from Apache.

Submitted by:	Jeff Trawick and Ryan Bloom


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91648 13f79535-47bb-0310-9956-ffa450edef68
2001-10-23 17:30:07 +00:00
Greg Ames
362d3a5732 adjust for the change to SuExec's default install directory
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91647 13f79535-47bb-0310-9956-ffa450edef68
2001-10-23 17:26:57 +00:00
Ryan Bloom
05679046c3 Bump after the 2.0.26 tag.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91485 13f79535-47bb-0310-9956-ffa450edef68
2001-10-16 05:06:25 +00:00
Ryan Bloom
bfb33ebecc Bump the versions for the 2.0.26 tag.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91484 13f79535-47bb-0310-9956-ffa450edef68
2001-10-16 05:02:56 +00:00
Ian Holsman
bcafbda69f Correct Verbage in comments.
Submitted by: Aarron Bannert <aaron@clove.org>
Reviewed by:	Ian Holsman <IanH@apache.org>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91354 13f79535-47bb-0310-9956-ffa450edef68
2001-10-08 16:44:04 +00:00
William A. Rowe Jr
73fcb0b7af Goodbye r->content_lanaguage (per vote from apache-1.3/STATUS).
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91244 13f79535-47bb-0310-9956-ffa450edef68
2001-10-02 21:13:42 +00:00
Ian Holsman
ad8b2f0c73 Added Doxygen Comments
With these 2 changes most of the Doxygen warnings go away.
(these patch just modifies comments/slight moves in typedefs, no other changes)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91229 13f79535-47bb-0310-9956-ffa450edef68
2001-10-02 04:09:53 +00:00
Ryan Bloom
53ae8f06b6 Remove SMS from the error bucket. SMS is going away now, it isn't really
used anyplace anymore.
Submitted by:	"Sander Striker" <striker@apache.org>


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91176 13f79535-47bb-0310-9956-ffa450edef68
2001-09-28 13:48:43 +00:00
Justin Erenkrantz
867166bede The call to apr_explode_localtime() in mod_log_config is one of the more
expensive operations in the httpd.  This patch attempts to reduce the
overhead by caching the result for 15 seconds.

Submitted by:	Brian Pane <bpane@pacbell.net>
Reviewed by:	Cliff Woolley, Ryan Bloom, Dean Gaudet, Justin Erenkrantz


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91083 13f79535-47bb-0310-9956-ffa450edef68
2001-09-19 06:53:26 +00:00
Justin Erenkrantz
cb8569e4f8 This patch eliminates the wasteful run-time conversion of method names from
strings to numbers in places where the methods are known at compile
time.

(Justin fixed the va_end() call to be correct.)

Submitted by:	Brian Pane <bpane@pacbell.net>
Reviewed by:	Justin Erenkrantz


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91078 13f79535-47bb-0310-9956-ffa450edef68
2001-09-19 05:52:42 +00:00
William A. Rowe Jr
f495937085 Remove the Win32 script-processing exception from mod_cgi, and
roll build_command_line/build_argv_list into a unified, overrideable
   ap_cgi_build_command optional function.

   Eliminates a ton of Win32 cruft from core.c for registry parsing.
   Win32 (through the default handler, and newest changes to the
   apr_proc_create fn) continues to serve .bat/.exe files.  This is in
   preparation for adding modules/arch/win32/mod_win32 for scripts.

   Please review the mod_cgi.c behavior very carefully.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91058 13f79535-47bb-0310-9956-ffa450edef68
2001-09-17 21:07:36 +00:00
Bradley Nicholes
ff9186c9e8 Added the HTTPD_ROOT path for NetWare
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91030 13f79535-47bb-0310-9956-ffa450edef68
2001-09-14 23:30:41 +00:00
Ryan Bloom
cac07fa8d9 A very small optimization to the OLD_WRITE logic. This just makes us store
a pointer to the OLD_WRITE frec, and instead of using strcmp or strcasecmp,
we can just do a simple pointer comparison.  This optimization is also
available to other modules.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91006 13f79535-47bb-0310-9956-ffa450edef68
2001-09-11 18:38:21 +00:00
Bradley Nicholes
7775299840 Added NetWare to a Win32 #ifdef
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90955 13f79535-47bb-0310-9956-ffa450edef68
2001-09-07 14:43:01 +00:00
Cliff Woolley
62c8307ac9 Ryan apparently bumped this back DOWN from 2.0.25 to 2.0.25-dev after the
last tag, rather than UP to 2.0.26-dev.  =-)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90839 13f79535-47bb-0310-9956-ffa450edef68
2001-08-31 04:01:19 +00:00
William A. Rowe Jr
3db323656f Normalize all paths to run the same, common code for pre-request setup
from the primary request, redirects and sub-requests.

  This will significantly reduce opporunities for inconsistancy (such
  as Ian observed, and as I repaired only a month ago.)

  This promotes process_request_internal to an ap_ namespace protected
  entity in server/request.c (from it's old home in http/http_request.c)
  since this fn has no http specifics.

Reviewed (in concept): Cliff Woolley, Ian Holsman


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90832 13f79535-47bb-0310-9956-ffa450edef68
2001-08-31 01:38:06 +00:00
Justin Erenkrantz
3c90c3f5f4 Add -X functionality back to httpd.
- Updates upgrading.html
- Reverts Aaron's earlier docco patch (sorry...)
- Adds -X to all mpms in the tree


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90824 13f79535-47bb-0310-9956-ffa450edef68
2001-08-30 20:50:06 +00:00
William A. Rowe Jr
3641520e9f Changed syntax of Set{Input|Output}Filter. The list of filters
must be semicolon delimited (if more than one filter is given.)
     The Set{Input|Output}Filter directive now overrides a parent
     container's directive (e.g. SetInputFilter in <Directory /web/foo>
     will override any SetInputFilter directive in <Directory /web>.)
     This new syntax is more consistent with Add{Input|Output}Filter
     directives defined in mod_mime.  Also cures a bug in prior releases
     where the Set{Input|Output}Filter directive would corrupt the
     global configuration if the multiple directives were nested.
     [William Rowe]


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90799 13f79535-47bb-0310-9956-ffa450edef68
2001-08-30 05:10:54 +00:00
William A. Rowe Jr
1a9639e088 Since the mod_mime patch was applied, here is the rest of the patch to
introduce the ForceType and SetHandler [absolute references] directly
  into the very top of the fixups phase.  This means these will always
  override _any_ mime module, not just mod_mime.  Ergo, other mime modules
  can continue to set charset, encodings, etc.  Since these are globals,
  they belong in the core.

  This highlights a very serious drawback to the type_checker hook.  By
  using run first, a module that identifies _partial_ information (maybe
  just the content type) won't pass the query on to other modules, like
  mod_mime, that might further define the encoding or charset.  The
  type_checker hook should clearly become a run-all, and the modules should
  decline if they see someone ahead of them answered a question they were
  going to try to figure.

  Which means - if type_checker becomes RUN_ALL - this new override hook
  fn should become a type_checker again - and RUN_REALLY_FIRST, and let
  other modules _choose_ not to override this election.  (We can run it
  again at the end, for a recount ;)  Votes?


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90797 13f79535-47bb-0310-9956-ffa450edef68
2001-08-30 04:24:09 +00:00
Ryan Bloom
45ed7579ea Bump after the tag.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90785 13f79535-47bb-0310-9956-ffa450edef68
2001-08-29 18:24:40 +00:00
Ryan Bloom
4e59ada7e1 Forgot to bump these numbers before the tag. Re-tagging these three
files only.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90783 13f79535-47bb-0310-9956-ffa450edef68
2001-08-29 18:23:08 +00:00
Graham Leggett
2d122b4e55 Add specified user attributes to the environment when using
mod_auth_ldap. This allows you to use mod_include to embed specified
user attributes in a page like so:
Hello <!--#echo var="AUTHENTICATE_CN"-->, how are you?
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90775 13f79535-47bb-0310-9956-ffa450edef68
2001-08-28 23:16:12 +00:00
Ryan Bloom
bfe91354fb Allow mod_ssl to send back an error message if an HTTP request is sent
over an HTTPS connection.  This also adds an ap_remove_input_filter
function, which should be used to remove the SSL input filter in this
case, as soon as this code is stressed a bit more.

For right now, we are sending the same message that we used to send in
mod_ssl for Apache 1.3.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90724 13f79535-47bb-0310-9956-ffa450edef68
2001-08-27 06:00:51 +00:00
William A. Rowe Jr
ea0f387cda I think this statement makes more sense, please ask if it isn't clear.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90711 13f79535-47bb-0310-9956-ffa450edef68
2001-08-27 02:57:54 +00:00
William A. Rowe Jr
bc18962d12 That last round calls for a bump.
bump.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90685 13f79535-47bb-0310-9956-ffa450edef68
2001-08-26 05:15:09 +00:00
William A. Rowe Jr
7552c9cb16 Eliminate proxy: (and all other 'special') processing from the
ap_directory_walk() phase.  Modules that want to use special
  walk logic should refer to the mod_proxy map_to_location example,
  with it's proxy_walk and proxysection implementation.  This makes
  either directory_walk flavor much more legible, since that phase
  only runs against real <Directory > blocks.

  On a technical note, this patch also forces the Directory to be
  canonical (unless it is "/" or a regex.)  It also allows us to
  be more explicit when declaring <Directory > block errors.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90684 13f79535-47bb-0310-9956-ffa450edef68
2001-08-26 05:10:17 +00:00
William A. Rowe Jr
307ab55886 Introduce the map_to_storage hook, which allows modules to bypass
the directory_walk and file_walk for non-file requests.  TRACE
  shortcut moved to http_protocol.c as APR_HOOK_MIDDLE, and the
  directory_walk/file_walk happen as APR_HOOK_VERY_LAST in core.c.

  A seperate patch to mod_proxy is required to short circuit both the
  TRACE and directory_walk/file_walk stuff.  That patch is next.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90665 13f79535-47bb-0310-9956-ffa450edef68
2001-08-25 23:43:19 +00:00
Cliff Woolley
2a2a31a542 BUCKETS SMS PHASE 1
Update to match apr-util


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90664 13f79535-47bb-0310-9956-ffa450edef68
2001-08-25 22:56:22 +00:00
William A. Rowe Jr
bb757df043 sec, sec, who's got a sec? This gave me a headache, but I had to clear
out the last patch before I rearranged this to be _readable_.

  Next step for everyone's sanity, provide <Proxy > directives ;)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90646 13f79535-47bb-0310-9956-ffa450edef68
2001-08-24 18:12:02 +00:00
William A. Rowe Jr
ecad72f782 Add a canonical_filename value (should remain the r->filename identity)
so we can tell if a 3rd party module broke the canonical form of the
  filename by not calling apr_filepath_merge().


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90585 13f79535-47bb-0310-9956-ffa450edef68
2001-08-23 21:03:44 +00:00
William A. Rowe Jr
9507e7d0c4 Better doc of ap_server_root_relative()
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90583 13f79535-47bb-0310-9956-ffa450edef68
2001-08-23 21:01:11 +00:00
William A. Rowe Jr
3ba6289b68 Eliminated ap_os_[systemcase|[case_]canonical]_filename() and
move ap_os_is_path_absolute() into util.c (now relies on apr.)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90567 13f79535-47bb-0310-9956-ffa450edef68
2001-08-23 19:08:20 +00:00