summaryrefslogtreecommitdiffstats
path: root/src/include/k5-plugin.h
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@mit.edu>2006-04-25 06:27:07 +0000
committerKen Raeburn <raeburn@mit.edu>2006-04-25 06:27:07 +0000
commitb87d443c1d3a7bb1520be3918f2dab6c2f45d4b6 (patch)
tree37366497b4db7b7cc02c13fd716521f891653e82 /src/include/k5-plugin.h
parent0438f13a4b92226901789d7d059f49f2c8f156b2 (diff)
downloadkrb5-b87d443c1d3a7bb1520be3918f2dab6c2f45d4b6.tar.gz
krb5-b87d443c1d3a7bb1520be3918f2dab6c2f45d4b6.tar.xz
krb5-b87d443c1d3a7bb1520be3918f2dab6c2f45d4b6.zip
Update internal plugin interface to add an errinfo structure to "open"
and "get" routines, so that more detailed error information (e.g., from dlerror()) may be returned to the caller. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17960 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/include/k5-plugin.h')
-rw-r--r--src/include/k5-plugin.h30
1 files changed, 19 insertions, 11 deletions
diff --git a/src/include/k5-plugin.h b/src/include/k5-plugin.h
index 0e3daa4f52..c7fb1776ca 100644
--- a/src/include/k5-plugin.h
+++ b/src/include/k5-plugin.h
@@ -60,6 +60,8 @@
# include <inttypes.h>
#endif
+#include "k5-err.h"
+
struct plugin_file_handle; /* opaque */
struct plugin_dir_handle {
@@ -69,24 +71,30 @@ struct plugin_dir_handle {
#define PLUGIN_DIR_INIT(P) ((P)->files = NULL)
#define PLUGIN_DIR_OPEN(P) ((P)->files != NULL)
-int32_t KRB5_CALLCONV
-krb5int_open_plugin (const char *, struct plugin_file_handle **);
+long KRB5_CALLCONV
+krb5int_open_plugin (const char *, struct plugin_file_handle **,
+ struct errinfo *);
-int32_t KRB5_CALLCONV
-krb5int_get_plugin_data (struct plugin_file_handle *, const char *, void **);
+long KRB5_CALLCONV
+krb5int_get_plugin_data (struct plugin_file_handle *, const char *, void **,
+ struct errinfo *);
-int32_t KRB5_CALLCONV
+long KRB5_CALLCONV
krb5int_get_plugin_func (struct plugin_file_handle *, const char *,
- void (**)());
+ void (**)(), struct errinfo *);
void KRB5_CALLCONV
krb5int_close_plugin (struct plugin_file_handle *);
-int32_t KRB5_CALLCONV krb5int_open_plugin_dir (const char *, struct plugin_dir_handle *);
+long KRB5_CALLCONV krb5int_open_plugin_dir (const char *,
+ struct plugin_dir_handle *,
+ struct errinfo *);
void KRB5_CALLCONV krb5int_close_plugin_dir (struct plugin_dir_handle *);
void KRB5_CALLCONV krb5int_free_plugin_dir_data (void **);
-int32_t KRB5_CALLCONV krb5int_get_plugin_dir_data (struct plugin_dir_handle *,
- const char *, void ***);
+long KRB5_CALLCONV krb5int_get_plugin_dir_data (struct plugin_dir_handle *,
+ const char *, void ***,
+ struct errinfo *);
void KRB5_CALLCONV krb5int_free_plugin_dir_func (void (**)(void));
-int32_t KRB5_CALLCONV krb5int_get_plugin_dir_func (struct plugin_dir_handle *,
- const char *, void (***)(void));
+long KRB5_CALLCONV krb5int_get_plugin_dir_func (struct plugin_dir_handle *,
+ const char *, void (***)(void),
+ struct errinfo *);