krb5 commit: Document gss_internal_release_oid()
ghudson at mit.edu
ghudson at mit.edu
Thu May 28 02:49:47 EDT 2026
https://github.com/krb5/krb5/commit/cf20efe12e500601ad713dca9bdfe36ec8e91f32
commit cf20efe12e500601ad713dca9bdfe36ec8e91f32
Author: Greg Hudson <ghudson at mit.edu>
Date: Sat May 23 17:48:35 2026 -0400
Document gss_internal_release_oid()
In the GSSAPI mechanism module documentation, recommend implementing
gss_internal_release_oid() and specify its interface.
doc/plugindev/gssapi.rst | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/doc/plugindev/gssapi.rst b/doc/plugindev/gssapi.rst
index 0918d1511..3fc065c25 100644
--- a/doc/plugindev/gssapi.rst
+++ b/doc/plugindev/gssapi.rst
@@ -20,6 +20,20 @@ a module does not wish to implement a GSSAPI extension, it can simply
refrain from exporting it, and the mechglue will fail gracefully if
the application calls that function.
+GSSAPI mechanism modules should implement a
+**gss_internal_release_oid** function, to help protect against an
+application mistakenly calling **gss_release_oid** on a statically
+allocated OID pointer. The function should have the following
+signature::
+
+ OM_uint32 gss_internal_release_oid(OM_uint32 *minor_status,
+ gss_OID *oid);
+
+If the function recognizes ``*oid`` as a pointer that could be yielded
+by one of the module's other functions, it should set ``*oid`` to
+**GSS_C_NO_OID** and return **GSS_S_COMPLETE**. Otherwise it should
+return **GSS_S_CONTINUE_NEEDED**.
+
The mechglue does not invoke a module's **gss_add_cred**,
**gss_add_cred_from**, **gss_add_cred_impersonate_name**, or
**gss_add_cred_with_password** function. A mechanism only needs to
More information about the cvs-krb5
mailing list