use GSSAPI_CALLCONV for exported SPIs
[mech_eap.orig] / mech_eap / set_cred_option.c
index bfffa1f..03c95fd 100644 (file)
@@ -42,7 +42,7 @@ setCredRadiusConfigFile(OM_uint32 *minor,
                         const gss_OID oid GSSEAP_UNUSED,
                         const gss_buffer_t buffer)
 {
-    OM_uint32 major;
+    OM_uint32 major, tmpMinor;
     gss_buffer_desc configFileBuffer = GSS_C_EMPTY_BUFFER;
 
     if (buffer != GSS_C_NO_BUFFER && buffer->length != 0) {
@@ -51,10 +51,8 @@ setCredRadiusConfigFile(OM_uint32 *minor,
             return major;
     }
 
-    if (cred->radiusConfigFile != NULL)
-        GSSEAP_FREE(cred->radiusConfigFile);
-
-    cred->radiusConfigFile = (char *)configFileBuffer.value;
+    gss_release_buffer(&tmpMinor, &cred->radiusConfigFile);
+    cred->radiusConfigFile = configFileBuffer;
 
     *minor = 0;
     return GSS_S_COMPLETE;
@@ -66,7 +64,7 @@ setCredRadiusConfigStanza(OM_uint32 *minor,
                           const gss_OID oid GSSEAP_UNUSED,
                           const gss_buffer_t buffer)
 {
-    OM_uint32 major;
+    OM_uint32 major, tmpMinor;
     gss_buffer_desc configStanzaBuffer = GSS_C_EMPTY_BUFFER;
 
     if (buffer != GSS_C_NO_BUFFER && buffer->length != 0) {
@@ -75,10 +73,8 @@ setCredRadiusConfigStanza(OM_uint32 *minor,
             return major;
     }
 
-    if (cred->radiusConfigStanza != NULL)
-        GSSEAP_FREE(cred->radiusConfigStanza);
-
-    cred->radiusConfigStanza = (char *)configStanzaBuffer.value;
+    gss_release_buffer(&tmpMinor, &cred->radiusConfigStanza);
+    cred->radiusConfigStanza = configStanzaBuffer;
 
     *minor = 0;
     return GSS_S_COMPLETE;
@@ -142,7 +138,7 @@ gss_OID GSS_EAP_CRED_SET_RADIUS_CONFIG_FILE     = &setCredOps[0].oid;
 gss_OID GSS_EAP_CRED_SET_RADIUS_CONFIG_STANZA   = &setCredOps[1].oid;
 gss_OID GSS_EAP_CRED_SET_CRED_FLAG              = &setCredOps[2].oid;
 
-OM_uint32
+OM_uint32 GSSAPI_CALLCONV
 gssspi_set_cred_option(OM_uint32 *minor,
                        gss_cred_id_t *pCred,
                        const gss_OID desired_object,