$OpenBSD: patch-src_ka-kerberos_c,v 1.1 2011/09/27 08:49:39 ajacoutot Exp $

XXX these should be handled by configure checks.
  krb5_get_init_creds_opt_set_pkinit: does not take 11 arguments.
  krb5_get_init_creds_opt_free: the context argument is an MIT extension.

--- src/ka-kerberos.c.orig	Mon Sep 26 22:09:21 2011
+++ src/ka-kerberos.c	Tue Sep 27 10:09:00 2011
@@ -25,6 +25,7 @@
 #include <stdlib.h>
 #include <time.h>
 #include <krb5.h>
+#include <com_err.h>
 #include <stdio.h>
 #include <sys/wait.h>
 #include <string.h>
@@ -170,8 +171,6 @@ ka_get_error_message (krb5_context context, krb5_error
     krberr = krb5_get_error_message (context, err);
     msg = g_strdup (krberr);
     ka_krb5_free_error_message (context, krberr);
-#else
-#	error No detailed error message information
 #endif
     if (msg == NULL)
         msg = g_strdup (_("unknown error"));
@@ -593,7 +592,7 @@ ka_auth_heimdal_pkinit (KaApplet *applet, krb5_creds *
         goto out;
 
     ka_set_ticket_options (applet, kcontext, opts, NULL, NULL);
-    retval = krb5_get_init_creds_opt_set_pkinit (kcontext, opts, kprincipal, pk_userid, pkinit_anchors, NULL, NULL, 0,  /* pk_use_enc_key */
+    retval = krb5_get_init_creds_opt_set_pkinit (kcontext, opts, kprincipal, pk_userid, pkinit_anchors, 0,  /* pk_use_enc_key */
                                                  auth_dialog_prompter, applet,  /* data */
                                                  NULL); /* passwd */
     KA_DEBUG ("pkinit returned with %d", retval);
@@ -605,7 +604,7 @@ ka_auth_heimdal_pkinit (KaApplet *applet, krb5_creds *
                                            0, NULL, opts);
   out:
     if (opts)
-        krb5_get_init_creds_opt_free (kcontext, opts);
+        krb5_get_init_creds_opt_free (opts);
     return retval;
 }
 #endif /* ! ENABLE_PKINIT */
@@ -626,7 +625,7 @@ ka_auth_password (KaApplet *applet, krb5_creds *creds,
                                            0, NULL, opts);
   out:
     if (opts)
-        krb5_get_init_creds_opt_free (kcontext, opts);
+        krb5_get_init_creds_opt_free (opts);
     return retval;
 }
 
