Password sync plugin, and questions about plugin criticality
Luke Howard
lukeh at padl.com
Mon Jun 26 03:06:59 EDT 2006
Hi Nico,
>> /* kapi-plugin.h */
>> typedef struct kapi_pblock Kapi_PBlock;
>> int kapi_pblock_get(Kapi_PBlock *, int, void *);
>> int kapi_pblock_set(Kapi_PBlock *, int, void *);
>
>In the cases of simple SPIs I much prefer that the mechanism export its
>entry points directly and that the framework dlsym() them. This pretty
>much works on all platforms that MIT needs to support where the SLAPI
>model would also work, and it makes plug-in code simpler.
Rather than having an initialization function register callbacks
manually?
Sounds fine to me -- although it might be useful to consider how
a single DSO can implement multiple plugins (obviously there are
many ways to skin a cat...).
>Is the idea to avoid symbol name conflicts? This should only be needed
>where there's no reasonably modern dynamic linker. And then other
>build-system techniques should do (namely, rename the entry points on a
>per-plug-in basis to unique names at build-time and static link
>everything).
>
>Where there are modern dynamic linkers whatever the moral equivalent of
>RTLD_LOCAL is should suffice (plus RTLD_GROUP, to be rigorous).
Sure, I was just explaining how SLAPI did things, a well-known
entry point is fine too.
cheers,
-- Luke
--
More information about the krbdev
mailing list