X-Git-Url: https://git.decadent.org.uk/gitweb/?p=nfs-utils.git;a=blobdiff_plain;f=utils%2Fgssd%2Fcontext.c;h=7757a7700d14dd7fbe07f9878d6d79f514467156;hp=02d162f2aa620a3c5fde2f9cf9fde7f9ce4c1544;hb=051eb4863cf880f0349a1de44517f9c99a9c5bd4;hpb=43e5f4e81d522a5355ff9f88c8c4ced0087c754c diff --git a/utils/gssd/context.c b/utils/gssd/context.c index 02d162f..7757a77 100644 --- a/utils/gssd/context.c +++ b/utils/gssd/context.c @@ -28,7 +28,10 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include "config.h" +#ifdef HAVE_CONFIG_H +#include +#endif /* HAVE_CONFIG_H */ + #include #include #include @@ -41,19 +44,16 @@ #include "context.h" int -serialize_context_for_kernel(gss_ctx_id_t ctx, gss_buffer_desc *buf) +serialize_context_for_kernel(gss_ctx_id_t *ctx, + gss_buffer_desc *buf, + gss_OID mech, + int32_t *endtime) { - gss_union_ctx_id_t uctx = (gss_union_ctx_id_t)ctx; - - if (g_OID_equal(&krb5oid, uctx->mech_type)) - return serialize_krb5_ctx(uctx->internal_ctx_id, buf); -#ifdef HAVE_SPKM3_H - else if (g_OID_equal(&spkm3oid, uctx->mech_type)) - return serialize_spkm3_ctx(uctx, buf); -#endif + if (g_OID_equal(&krb5oid, mech)) + return serialize_krb5_ctx(ctx, buf, endtime); else { printerr(0, "ERROR: attempting to serialize context with " - "unknown mechanism oid\n"); + "unknown/unsupported mechanism oid\n"); return -1; } }