[15945] in Kerberos_V5_Development

home help back first fref pref prev next nref lref last post

Re: design choices for a loadable module interface

daemon@ATHENA.MIT.EDU (Russ Allbery)
Tue Jun 29 20:53:51 2010

From: Russ Allbery <rra@stanford.edu>
To: Nicolas Williams <Nicolas.Williams@oracle.com>
In-Reply-To: <20100630003222.GE2232@sun.com> (Will Fiveash's message of "Tue, 
	29 Jun 2010 19:32:22 -0500")
Date: Tue, 29 Jun 2010 17:53:47 -0700
Message-ID: <87iq51e3xg.fsf@windlord.stanford.edu>
MIME-Version: 1.0
Cc: krbdev@mit.edu
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: krbdev-bounces@mit.edu

Will Fiveash <will.fiveash@oracle.com> writes:
> On Tue, Jun 29, 2010 at 05:09:02PM -0700, Russ Allbery wrote:

>> Those of us who write plugins that support multiple Kerberos
>> implementations will just write stub functions to fit the MIT Kerberos
>> plugin ABI that call other functions anyway, so you're going to have a
>> similar problem with vtables or without them.

> One would hope the stub would live in the same file as the actual method
> which is still a more straightforward way of locating method
> definitions.

I normally would not do so, no.  I write the core module code to a
reasonable internal API and then have separate mit.c and heimdal.c files
that contain the required glue to make it conform to the plugin interface
of those Kerberos implementations.  This makes it simpler from a build
system perspective to build only the required code for the Kerberos
implementation being targetted, since that shim code often is specific to
that Kerberos implementation and won't build on the other.

-- 
Russ Allbery (rra@stanford.edu)             <http://www.eyrie.org/~eagle/>
_______________________________________________
krbdev mailing list             krbdev@mit.edu
https://mailman.mit.edu/mailman/listinfo/krbdev

home help back first fref pref prev next nref lref last post