]> git.ipfire.org Git - thirdparty/krb5.git/commitdiff
Alter responder function signature for consistency
authorGreg Hudson <ghudson@mit.edu>
Tue, 23 Oct 2012 17:16:44 +0000 (13:16 -0400)
committerGreg Hudson <ghudson@mit.edu>
Tue, 23 Oct 2012 17:16:44 +0000 (13:16 -0400)
For the responder callback signature, put the closure argument just
after the context, and use KRB5_CALLCONV.  These changes make the
signature consistent with most other libkrb5 callbacks.

ticket: 7419 (new)
target_version: 1.11
tags: pullup

src/include/krb5/krb5.hin
src/lib/krb5/krb/preauth2.c

index 6a4f995a645a17fe1044461c49d773355d85ed18..1db64743e326ac153fdfeec98ee94d75787e951f 100644 (file)
@@ -6479,8 +6479,8 @@ krb5_responder_set_answer(krb5_context ctx, krb5_responder_context rctx,
  * Responder function for an initial credential exchange.
  *
  * @param [in] ctx              Library context
- * @param [in] rctx             Responder context
  * @param [in] data             Callback data
+ * @param [in] rctx             Responder context
  *
  * A responder function is like a prompter function, but is used for handling
  * questions and answers as potentially complex data types.  Client
@@ -6496,8 +6496,8 @@ krb5_responder_set_answer(krb5_context ctx, krb5_responder_context rctx,
  * If a required question is unanswered, the prompter may be called.
  */
 typedef krb5_error_code
-(*krb5_responder_fn)(krb5_context ctx, krb5_responder_context rctx,
-                     void *data);
+(KRB5_CALLCONV *krb5_responder_fn)(krb5_context ctx, void *data,
+                                   krb5_responder_context rctx);
 
 typedef struct _krb5_responder_otp_tokeninfo {
     krb5_flags flags;
index 9ce82d5a35e62ea0c307b9fa8f542c240bcb5cd8..b900ce42c00b8f75607efe279074b0762f401937 100644 (file)
@@ -1006,8 +1006,8 @@ krb5_do_preauth(krb5_context context, krb5_kdc_req *request,
 
     /* Call the responder to answer response items. */
     if (responder != NULL && !k5_response_items_empty(rock->rctx.items)) {
-        ret = (*responder)(context, &rock->rctx,
-                           opte->opt_private->responder_data);
+        ret = (*responder)(context, opte->opt_private->responder_data,
+                           &rock->rctx);
         if (ret)
             goto error;
     }