summaryrefslogtreecommitdiff
path: root/usr/src/lib/libgss/g_verify.c
diff options
context:
space:
mode:
authorGlenn Barry <Glenn.Barry@oracle.com>2010-08-16 17:01:32 -0700
committerGlenn Barry <Glenn.Barry@oracle.com>2010-08-16 17:01:32 -0700
commit5e01956f3000408c2a2c5a08c8d0acf2c2a9d8ee (patch)
tree90bd2cd6b1b331d8cb4c67b04d90d921baf654fc /usr/src/lib/libgss/g_verify.c
parent8393544efeffe8042bf5273c148010b32fa827e2 (diff)
downloadillumos-joyent-5e01956f3000408c2a2c5a08c8d0acf2c2a9d8ee.tar.gz
PSARC 2010/135 Kerberos Diagnostic Enhancements (umbrella case)
6835328 Error messages generated by applications using RPCSEC_GSS are too vague
Diffstat (limited to 'usr/src/lib/libgss/g_verify.c')
-rw-r--r--usr/src/lib/libgss/g_verify.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/usr/src/lib/libgss/g_verify.c b/usr/src/lib/libgss/g_verify.c
index 774ba13583..bd277104b6 100644
--- a/usr/src/lib/libgss/g_verify.c
+++ b/usr/src/lib/libgss/g_verify.c
@@ -19,8 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
- * Use is subject to license terms.
+ * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
*/
/*
@@ -28,6 +27,7 @@
*/
#include <mechglueP.h>
+#include "gssapiP_generic.h"
OM_uint32
gss_verify(minor_status,
@@ -66,7 +66,7 @@ int * qop_state;
mech = __gss_get_mechanism(ctx->mech_type);
if (mech) {
- if (mech->gss_verify)
+ if (mech->gss_verify) {
status = mech->gss_verify(
mech->context,
minor_status,
@@ -74,7 +74,9 @@ int * qop_state;
message_buffer,
token_buffer,
qop_state);
- else
+ if (status != GSS_S_COMPLETE)
+ map_error(minor_status, mech);
+ } else
status = GSS_S_UNAVAILABLE;
return (status);