Install kuserok-plugin.h and update docs

The header file was not installed, and the manpage had the wrong
name for the plugin load function, it is "krb5_plugin_kuserok_plugin_load",
not "kuserok_plugin_load".
This commit is contained in:
Viktor Dukhovni
2019-09-26 20:18:00 -04:00
parent c9b5a4df90
commit 989422e0fc
2 changed files with 22 additions and 13 deletions

View File

@@ -389,7 +389,14 @@ nodist_include_HEADERS = krb5_err.h heim_err.h k524_err.h k5e1_err.h
# XXX use nobase_include_HEADERS = krb5/locate_plugin.h # XXX use nobase_include_HEADERS = krb5/locate_plugin.h
krb5dir = $(includedir)/krb5 krb5dir = $(includedir)/krb5
krb5_HEADERS = common_plugin.h locate_plugin.h send_to_kdc_plugin.h ccache_plugin.h an2ln_plugin.h db_plugin.h krb5_HEADERS = \
an2ln_plugin.h \
ccache_plugin.h \
common_plugin.h \
db_plugin.h \
kuserok_plugin.h \
locate_plugin.h \
send_to_kdc_plugin.h
build_HEADERZ = \ build_HEADERZ = \
$(krb5_HEADERS) \ $(krb5_HEADERS) \

View File

@@ -57,19 +57,20 @@ associated header file, such as, for example,
.Va krb5plugin_kuserok_ftable .Va krb5plugin_kuserok_ftable
and a pointer to which is either registered via and a pointer to which is either registered via
.Xr krb5_plugin_register 3 .Xr krb5_plugin_register 3
or via a plugin load function exported by a shared object. Plugin load or via a plugin load function exported by a shared object.
functions should be named by concatenating the name defined in the associated Plugin load functions should be named by concatenating the name defined in the
header file with the string "plugin_load" (e.g. "kuserok_plugin_load" for the associated header file with the string "plugin_load" (e.g.
plugin for "krb5_plugin_kuserok_plugin_load" for the plugin for
.Xr krb5_kuserok 3 .Xr krb5_kuserok 3
). ).
The plugin load function has the following signature: The plugin load function has the following signature:
.Bd -literal -offset indent .Bd -literal -offset indent
krb5_error_code krb5_error_code
kuserok_plugin_load(krb5_context context, krb5_plugin_kuserok_plugin_load(
krb5_get_instance_func_t *get_instance, krb5_context context,
size_t *n_plugins, krb5_get_instance_func_t *get_instance,
const common_plugin_ftable *const **plugins); size_t *n_plugins,
const common_plugin_ftable *const **plugins);
.Ed .Ed
.Pp .Pp
The plugin should set the get_instance output parameter to the a function The plugin should set the get_instance output parameter to the a function
@@ -293,10 +294,11 @@ kuserok_get_instance(const char *libname)
} }
krb5_error_code krb5_error_code
kuserok_plugin_load(krb5_context context, krb5_plugin_kuserok_plugin_load(
krb5_get_instance_func_t *get_instance, krb5_context context,
size_t *num_plugins, krb5_get_instance_func_t *get_instance,
const krb5plugin_kuserok_ftable * const **pplugins) size_t *num_plugins,
const krb5plugin_kuserok_ftable * const **pplugins)
{ {
*krb5_instance = kuserok_get_instance; *krb5_instance = kuserok_get_instance;
*num_plugins = sizeof(plugins) / sizeof(plugins[0]); *num_plugins = sizeof(plugins) / sizeof(plugins[0]);