diff options
author | Olga Kornievskaia <aglo@citi.umich.edu> | 2006-10-13 15:35:57 -0400 |
---|---|---|
committer | Neil Brown <neilb@suse.de> | 2006-10-17 09:46:39 +1000 |
commit | c49442c7720f8b1c3908ddf5d31ed9463f147761 (patch) | |
tree | 155c3dbb27e84deb9eb31f149901d5889866b380 /utils/gssd | |
parent | bdfe0d28ee4c23dec311423a34b2a3ec65b5b318 (diff) | |
download | nfs-utils-c49442c7720f8b1c3908ddf5d31ed9463f147761.tar.gz nfs-utils-c49442c7720f8b1c3908ddf5d31ed9463f147761.tar.xz nfs-utils-c49442c7720f8b1c3908ddf5d31ed9463f147761.zip |
Implement a new version of lucid spkm3 context.
Signed-off-by: Olga Kornievskaia <aglo@citi.umich.edu>
Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
Implement a new version of lucid spkm3 context which is passed
down to the kernel.
Diffstat (limited to 'utils/gssd')
-rw-r--r-- | utils/gssd/context_spkm3.c | 39 |
1 files changed, 19 insertions, 20 deletions
diff --git a/utils/gssd/context_spkm3.c b/utils/gssd/context_spkm3.c index 3566069..4f41ee3 100644 --- a/utils/gssd/context_spkm3.c +++ b/utils/gssd/context_spkm3.c @@ -51,6 +51,7 @@ * * buf->length should be: * + * version 4 * ctx_id 4 + 12 * qop 4 * mech_used 4 + 7 @@ -70,60 +71,58 @@ prepare_spkm3_ctx_buffer(gss_spkm3_lucid_ctx_t *lctx, gss_buffer_desc *buf) char *p, *end; unsigned int buf_size = 0; - buf_size = lctx->ctx_id.length + - sizeof(lctx->ctx_id.length) + sizeof(lctx->qop) + + buf_size = sizeof(lctx->version) + + lctx->ctx_id.length + sizeof(lctx->ctx_id.length) + + sizeof(lctx->endtime) + sizeof(lctx->mech_used.length) + lctx->mech_used.length + - sizeof(lctx->ret_flags) + sizeof(lctx->req_flags) + - sizeof(lctx->share_key.length) + lctx->share_key.length + + sizeof(lctx->ret_flags) + sizeof(lctx->conf_alg.length) + lctx->conf_alg.length + sizeof(lctx->derived_conf_key.length) + lctx->derived_conf_key.length + sizeof(lctx->intg_alg.length) + lctx->intg_alg.length + sizeof(lctx->derived_integ_key.length) + - lctx->derived_integ_key.length + - sizeof(lctx->keyestb_alg.length) + lctx->keyestb_alg.length + - sizeof(lctx->owf_alg.length) + lctx->owf_alg.length; + lctx->derived_integ_key.length; if (!(buf->value = calloc(1, buf_size))) goto out_err; p = buf->value; end = buf->value + buf_size; + if (WRITE_BYTES(&p, end, lctx->version)) + goto out_err; + printerr(2, "DEBUG: exporting version = %d\n", lctx->version); + if (write_buffer(&p, end, &lctx->ctx_id)) goto out_err; + printerr(2, "DEBUG: exporting ctx_id(%d)\n", lctx->ctx_id.length); - if (WRITE_BYTES(&p, end, lctx->qop)) + if (WRITE_BYTES(&p, end, lctx->endtime)) goto out_err; + printerr(2, "DEBUG: exporting endtime = %d\n", lctx->endtime); if (write_buffer(&p, end, &lctx->mech_used)) goto out_err; + printerr(2, "DEBUG: exporting mech oid (%d)\n", lctx->mech_used.length); if (WRITE_BYTES(&p, end, lctx->ret_flags)) goto out_err; - - if (WRITE_BYTES(&p, end, lctx->req_flags)) - goto out_err; - - if (write_buffer(&p, end, &lctx->share_key)) - goto out_err; + printerr(2, "DEBUG: exporting ret_flags = %d\n", lctx->ret_flags); if (write_buffer(&p, end, &lctx->conf_alg)) goto out_err; + printerr(2, "DEBUG: exporting conf_alg oid (%d)\n", lctx->conf_alg.length); if (write_buffer(&p, end, &lctx->derived_conf_key)) goto out_err; + printerr(2, "DEBUG: exporting conf key (%d)\n", lctx->derived_conf_key.length); if (write_buffer(&p, end, &lctx->intg_alg)) goto out_err; + printerr(2, "DEBUG: exporting intg_alg oid (%d)\n", lctx->intg_alg.length); if (write_buffer(&p, end, &lctx->derived_integ_key)) goto out_err; - - if (write_buffer(&p, end, &lctx->keyestb_alg)) - goto out_err; - - if (write_buffer(&p, end, &lctx->owf_alg)) - goto out_err; + printerr(2, "DEBUG: exporting intg key (%d)\n", lctx->derived_integ_key.length); buf->length = p - (char *)buf->value; return 0; |