Lines Matching refs:ctx

68 #define	PROV_SHA1_CTX(ctx)	((sha1_ctx_t *)(ctx)->cc_provider_private)
69 #define PROV_SHA1_HMAC_CTX(ctx) ((sha1_hmac_ctx_t *)(ctx)->cc_provider_private)
82 #define PROV_SHA1_DIGEST_KEY(ctx, key, len, digest) { \
83 SHA1Init(ctx); \
84 SHA1Update(ctx, key, len); \
85 SHA1Final(digest, ctx); \
238 sha1_digest_init(crypto_ctx_t *ctx, crypto_mechanism_t *mechanism,
247 ctx->cc_provider_private = kmem_alloc(sizeof (sha1_ctx_t),
249 if (ctx->cc_provider_private == NULL)
252 PROV_SHA1_CTX(ctx)->sc_mech_type = SHA1_MECH_INFO_TYPE;
253 SHA1Init(&PROV_SHA1_CTX(ctx)->sc_sha1_ctx);
547 sha1_digest(crypto_ctx_t *ctx, crypto_data_t *data, crypto_data_t *digest,
552 ASSERT(ctx->cc_provider_private != NULL);
569 SHA1Update(&PROV_SHA1_CTX(ctx)->sc_sha1_ctx,
574 ret = sha1_digest_update_uio(&PROV_SHA1_CTX(ctx)->sc_sha1_ctx,
578 ret = sha1_digest_update_mblk(&PROV_SHA1_CTX(ctx)->sc_sha1_ctx,
587 kmem_free(ctx->cc_provider_private, sizeof (sha1_ctx_t));
588 ctx->cc_provider_private = NULL;
600 digest->cd_offset, &PROV_SHA1_CTX(ctx)->sc_sha1_ctx);
603 ret = sha1_digest_final_uio(&PROV_SHA1_CTX(ctx)->sc_sha1_ctx,
607 ret = sha1_digest_final_mblk(&PROV_SHA1_CTX(ctx)->sc_sha1_ctx,
622 kmem_free(ctx->cc_provider_private, sizeof (sha1_ctx_t));
623 ctx->cc_provider_private = NULL;
629 sha1_digest_update(crypto_ctx_t *ctx, crypto_data_t *data,
634 ASSERT(ctx->cc_provider_private != NULL);
641 SHA1Update(&PROV_SHA1_CTX(ctx)->sc_sha1_ctx,
646 ret = sha1_digest_update_uio(&PROV_SHA1_CTX(ctx)->sc_sha1_ctx,
650 ret = sha1_digest_update_mblk(&PROV_SHA1_CTX(ctx)->sc_sha1_ctx,
662 sha1_digest_final(crypto_ctx_t *ctx, crypto_data_t *digest,
667 ASSERT(ctx->cc_provider_private != NULL);
685 digest->cd_offset, &PROV_SHA1_CTX(ctx)->sc_sha1_ctx);
688 ret = sha1_digest_final_uio(&PROV_SHA1_CTX(ctx)->sc_sha1_ctx,
692 ret = sha1_digest_final_mblk(&PROV_SHA1_CTX(ctx)->sc_sha1_ctx,
707 kmem_free(ctx->cc_provider_private, sizeof (sha1_ctx_t));
708 ctx->cc_provider_private = NULL;
814 sha1_mac_init_ctx(sha1_hmac_ctx_t *ctx, void *keyval, uint_t length_in_bytes)
833 SHA1Init(&ctx->hc_icontext);
834 SHA1Update(&ctx->hc_icontext, (uint8_t *)ipad, SHA1_HMAC_BLOCK_SIZE);
837 SHA1Init(&ctx->hc_ocontext);
838 SHA1Update(&ctx->hc_ocontext, (uint8_t *)opad, SHA1_HMAC_BLOCK_SIZE);
844 sha1_mac_init(crypto_ctx_t *ctx, crypto_mechanism_t *mechanism,
859 ctx->cc_provider_private = kmem_alloc(sizeof (sha1_hmac_ctx_t),
861 if (ctx->cc_provider_private == NULL)
866 bcopy(ctx_template, PROV_SHA1_HMAC_CTX(ctx),
872 sha1_hmac_ctx_t *hmac_ctx = ctx->cc_provider_private;
881 sha1_mac_init_ctx(PROV_SHA1_HMAC_CTX(ctx),
884 sha1_mac_init_ctx(PROV_SHA1_HMAC_CTX(ctx),
892 PROV_SHA1_HMAC_CTX(ctx)->hc_mech_type = mechanism->cm_type;
898 PROV_SHA1_HMAC_CTX(ctx)->hc_digest_len);
899 if (PROV_SHA1_HMAC_CTX(ctx)->hc_digest_len >
905 bzero(ctx->cc_provider_private, sizeof (sha1_hmac_ctx_t));
906 kmem_free(ctx->cc_provider_private, sizeof (sha1_hmac_ctx_t));
907 ctx->cc_provider_private = NULL;
915 sha1_mac_update(crypto_ctx_t *ctx, crypto_data_t *data, crypto_req_handle_t req)
919 ASSERT(ctx->cc_provider_private != NULL);
927 SHA1Update(&PROV_SHA1_HMAC_CTX(ctx)->hc_icontext,
933 &PROV_SHA1_HMAC_CTX(ctx)->hc_icontext, data);
937 &PROV_SHA1_HMAC_CTX(ctx)->hc_icontext, data);
948 sha1_mac_final(crypto_ctx_t *ctx, crypto_data_t *mac, crypto_req_handle_t req)
954 ASSERT(ctx->cc_provider_private != NULL);
956 if (PROV_SHA1_HMAC_CTX(ctx)->hc_mech_type ==
958 digest_len = PROV_SHA1_HMAC_CTX(ctx)->hc_digest_len;
972 SHA1Final(digest, &PROV_SHA1_HMAC_CTX(ctx)->hc_icontext);
978 SHA1Update(&PROV_SHA1_HMAC_CTX(ctx)->hc_ocontext, digest,
994 &PROV_SHA1_HMAC_CTX(ctx)->hc_ocontext);
1000 &PROV_SHA1_HMAC_CTX(ctx)->hc_ocontext);
1005 &PROV_SHA1_HMAC_CTX(ctx)->hc_ocontext, mac,
1010 &PROV_SHA1_HMAC_CTX(ctx)->hc_ocontext, mac,
1023 bzero(ctx->cc_provider_private, sizeof (sha1_hmac_ctx_t));
1024 kmem_free(ctx->cc_provider_private, sizeof (sha1_hmac_ctx_t));
1025 ctx->cc_provider_private = NULL;
1030 #define SHA1_MAC_UPDATE(data, ctx, ret) { \
1033 SHA1Update(&(ctx).hc_icontext, \
1038 ret = sha1_digest_update_uio(&(ctx).hc_icontext, data); \
1041 ret = sha1_digest_update_mblk(&(ctx).hc_icontext, \
1416 sha1_free_context(crypto_ctx_t *ctx)
1421 if (ctx->cc_provider_private == NULL)
1429 mech_type = PROV_SHA1_CTX(ctx)->sc_mech_type;
1438 bzero(ctx->cc_provider_private, ctx_len);
1439 kmem_free(ctx->cc_provider_private, ctx_len);
1440 ctx->cc_provider_private = NULL;