summaryrefslogtreecommitdiffstats
path: root/lib/libgssapi/gss_wrap.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libgssapi/gss_wrap.c')
-rw-r--r--lib/libgssapi/gss_wrap.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/libgssapi/gss_wrap.c b/lib/libgssapi/gss_wrap.c
index 0d7c749..2f94316 100644
--- a/lib/libgssapi/gss_wrap.c
+++ b/lib/libgssapi/gss_wrap.c
@@ -30,6 +30,7 @@
#include "mech_switch.h"
#include "context.h"
+#include "utils.h"
OM_uint32
gss_wrap(OM_uint32 *minor_status,
@@ -43,6 +44,14 @@ gss_wrap(OM_uint32 *minor_status,
struct _gss_context *ctx = (struct _gss_context *) context_handle;
struct _gss_mech_switch *m = ctx->gc_mech;
+ if (conf_state)
+ *conf_state = 0;
+ _gss_buffer_zero(output_message_buffer);
+ if (ctx == NULL) {
+ *minor_status = 0;
+ return (GSS_S_NO_CONTEXT);
+ }
+
return (m->gm_wrap(minor_status, ctx->gc_ctx,
conf_req_flag, qop_req, input_message_buffer,
conf_state, output_message_buffer));
OpenPOWER on IntegriCloud