svn rev #22929: branches/enc-perf/src/include/krb5/
ghudson@MIT.EDU
ghudson at MIT.EDU
Sun Oct 18 23:22:43 EDT 2009
http://src.mit.edu/fisheye/changelog/krb5/?cs=22929
Commit By: ghudson
Log Message:
Clarify that krb5_keys are logically immutable but may not be shared
between threads due to mutable internal state.
Changed Files:
U branches/enc-perf/src/include/krb5/krb5.hin
Modified: branches/enc-perf/src/include/krb5/krb5.hin
===================================================================
--- branches/enc-perf/src/include/krb5/krb5.hin 2009-10-18 22:22:56 UTC (rev 22928)
+++ branches/enc-perf/src/include/krb5/krb5.hin 2009-10-19 03:22:42 UTC (rev 22929)
@@ -351,7 +351,10 @@
/*
* Opaque identifier for a key. Use with the krb5_k APIs for better
- * performance for repeated operations with the same key usage.
+ * performance for repeated operations with the same key usage. Key
+ * identifiers must not be used simultaneously within multiple
+ * threads, as they may contain mutable internal state and are not
+ * mutex-protected.
*/
struct krb5_key_st;
typedef struct krb5_key_st *krb5_key;
@@ -713,17 +716,11 @@
(krb5_context context, krb5_enctype enctype,
size_t data_length, unsigned int *size);
-/*
- * krb5_k_* functions use opaque key identifiers and should perform
- * better for repeated operations with the same key usage. krb5_keys
- * are immutable once created.
- */
-
krb5_error_code KRB5_CALLCONV
krb5_k_create_key(krb5_context context, const krb5_keyblock *key_data,
krb5_key *out);
-/* Since keys are immutable, they can be "copied" by reference count. */
+/* Keys are logically immutable and can be "copied" by reference count. */
void KRB5_CALLCONV krb5_k_reference_key(krb5_context context, krb5_key key);
/* Decrement the reference count on a key and free it if it hits zero. */
More information about the cvs-krb5
mailing list