$OpenBSD: patch-Simple_xs,v 1.2 2008/08/26 20:57:27 fgsch Exp $
--- Simple.xs.orig	Sun Jul 27 13:03:36 2008
+++ Simple.xs	Sun Jul 27 13:05:20 2008
@@ -61,6 +61,20 @@ cleanup2:
     return(ret);
 }
 
+const char * _krb5_error_msg(int errcode) {
+
+    krb5_context ctx;
+    const char *ret = NULL;
+
+    if (!krb5_init_context(&ctx)) {
+       ret=krb5_get_err_text(ctx, errcode);
+       krb5_free_context(ctx);
+    } else {
+       ret="Error getting error message";
+    }
+    return ret;
+}
+
 MODULE = Authen::Krb5::Simple     PACKAGE = Authen::Krb5::Simple		
 
 PROTOTYPES: DISABLE
@@ -75,13 +89,11 @@ krb5_auth(user, password)
     OUTPUT:
     RETVAL
 
-char*
+const char*
 krb5_errstr(errcode)
     INPUT:
     int errcode;
-    INIT:
-    char* result = (char*)error_message(errcode);
     CODE:
-    RETVAL = result;
+    RETVAL = _krb5_error_msg(errcode);
     OUTPUT:
     RETVAL
