On Mon, Mar 12, 2007 at 01:41:57PM +0000, Nick Kew wrote: > On Mon, 12 Mar 2007 13:12:42 +0000 > Joe Orton <[EMAIL PROTECTED]> wrote: > > I can't say whether it was the deliberate intent of those writing the > > DBD code, but the status quo is that the driver interface > > (apr_dbd_internal.h) is not part of the public APR-util interface. > > So the status quo is that out-of-tree drivers are not supported. > > The intention was that apr_dbd_internal.h should be used by DBD > drivers but opaque to applications. > > Is there a better way to express that, that'll properly support > out-of-tree drivers?
I'd say: 1) Move the apr_dbd_internal.h header out of the private/ subdirectory and give call it something other than "_internal.h" 2) Commit to API/ABI stability in the driver interface; stuff like r508700 would subsequently require a major version bump 3) Enforce ABI versioning at DSO load time e.g. using magic at the beginning of the driver structure joe