httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexei Kosut <ako...@leland.Stanford.EDU>
Subject Re: cvs commit: apache-1.3/src/include hide.h
Date Thu, 05 Mar 1998 21:19:11 GMT
On Thu, 5 Mar 1998, Rasmus Lerdorf wrote:

> > {Sigh}  When I have some time, I'll see if I can come up with a list
> > of definitely public interfaces to be prefixed (one way or another)
> > with "apapi_".  Then I'll make the changes to UpdateHide.  I think we
> > need to do it this way for 1.3.*, because otherwise module writers
> > will need to do a significant retrofit - which we shouldn't force
> > on them until 2.0.
> An easy way to come up with this list is to enable HIDE mode in Apache and
> then try to link in the module without defining HIDE in the module.  The
> resulting list of unresolved symbols will be a list of API candidates.
> Here is my list:

This is a bad way to come up with any such list, because of the mere fact
that the Apache API has something on the order of 267 public functions. No
one module is going to use them all. In fact, I doubt if all the modules
combined use them all. But that doesn't mean they don't exist and they
aren't part of the API. And if we "forget" any of them, we can find
ourselves in trouble down the line.

A better way to do this is to go through all the header files and just see
which ones are API functions. Luckily, you don't have to, because last
summer I did, and marked all the public API functions with an API_EXPORT
tag, so that they would work under Windows. (admittedly, there are also a
few private functions in there, so that mod_status and mod_perl and a few
other "special" modules would work)

However, as others have pointed out, I just don't know if a real renaming
of functions is in order for Apache 1.3. I'd much perfer that we get to
work on a 2.0, with a real, working, documented, consistent API.

(although I should point out, Dean, that my idea of using function
pointers from structures for all of the API functions was adopted, we
wouldn't have to worry about namespace problems.)

-- Alexei Kosut <> <>
   Stanford University, Class of 2001 * Apache <> *

View raw message