Plugin project proposal

Nicolas Williams Nicolas.Williams at oracle.com
Thu Jul 15 16:48:30 EDT 2010


On Thu, Jul 15, 2010 at 02:31:26PM -0500, Nicolas Williams wrote:
> On Thu, Jul 15, 2010 at 03:06:11PM -0400, Zhanna Tsitkova wrote:
> > On Jul 15, 2010, at 2:57 PM, Nicolas Williams wrote:
> > >What is used as a key to the table?
> > 
> > Suppose we have the following v-table for plugin password quality:
> > /* PWD_QLTY API */
> > typedef struct {
> > int version;
> > char plugin_id[MAX_PL_NAME_LEN];
> > kadm5_ret_t (*pwd_qlty_init)(kadm5_server_handle_t);
> > void (*pwd_qlty_cleanup)();
> >  kadm5_ret_t (*pwd_qlty_check)(kadm5_server_handle_t, char*,int,
> > kadm5_policy_ent_t, krb5_principal);
> > } plugin_pwd_qlty;
> > 
> > Then the key may be "pwd_qlty_check"
> 
> I think this is still ridiculously complicated.

Also, note that if you have a "hash table" indexed by "function_name"
then you've implemented... a light-weight dlsym().  Queue repeat of the
dlsym()-symbol-at-a-time vs. dlsym(v-table-or-function-that-returns-a-
v-table) argument.



More information about the krbdev mailing list