summaryrefslogtreecommitdiffstats
path: root/src/include/krb5/preauth_plugin.h
diff options
context:
space:
mode:
authorGreg Hudson <ghudson@mit.edu>2011-10-06 20:08:29 +0000
committerGreg Hudson <ghudson@mit.edu>2011-10-06 20:08:29 +0000
commitf80666416e33efe29bfb1ffc711d482d67fc0873 (patch)
tree419ebe99016559fc1f5e3d7726a48c4eb1d07079 /src/include/krb5/preauth_plugin.h
parentd9ed152c4ba1fc5b8d2ca6f894e25e449d685c0c (diff)
downloadkrb5-f80666416e33efe29bfb1ffc711d482d67fc0873.tar.gz
krb5-f80666416e33efe29bfb1ffc711d482d67fc0873.tar.xz
krb5-f80666416e33efe29bfb1ffc711d482d67fc0873.zip
Add get_string, free_string kdcpreauth callbacks
String attributes should be useful to preauth modules without having to link against libkdb5. Add a callback to make client string attributes accessible to modules. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@25318 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/include/krb5/preauth_plugin.h')
-rw-r--r--src/include/krb5/preauth_plugin.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/include/krb5/preauth_plugin.h b/src/include/krb5/preauth_plugin.h
index 1646263d9f..e4f9de2e75 100644
--- a/src/include/krb5/preauth_plugin.h
+++ b/src/include/krb5/preauth_plugin.h
@@ -355,6 +355,16 @@ typedef struct krb5_kdcpreauth_callbacks_st {
krb5_keyblock *(*fast_armor)(krb5_context context,
krb5_kdcpreauth_rock rock);
+ /* Retrieve a string attribute from the client DB entry, or NULL if no such
+ * attribute is set. Free the result with the free_string callback. */
+ krb5_error_code (*get_string)(krb5_context context,
+ krb5_kdcpreauth_rock rock, const char *key,
+ char **value_out);
+
+ /* Free the result of get_string. */
+ void (*free_string)(krb5_context context, krb5_kdcpreauth_rock rock,
+ char *string);
+
/* Get a pointer to the client DB entry (returned as a void pointer to
* avoid a dependency on a libkdb5 type). */
void *(*client_entry)(krb5_context context, krb5_kdcpreauth_rock rock);