Lines Matching refs:jose

26 #include "private-lib-jose.h"
27 #include "private-lib-jose-jwe.h"
164 lws_jose_init(&jwe->jose);
175 lws_jose_destroy(&jwe->jose);
217 if (!jwe->jose.enc_alg || !jwe->jose.alg)
238 aid = direct ? jwe->jose.enc_alg->alg : jwe->jose.alg->alg;
271 while (ctr <= (uint32_t)((jwe->jose.enc_alg->keybits_fixed + (hlen - 1)) / hlen)) {
290 be32(jwe->jose.e[LJJHI_APU].len, &t), 4) ||
291 lws_genhash_update(&hash_ctx, jwe->jose.e[LJJHI_APU].buf,
292 jwe->jose.e[LJJHI_APU].len) ||
294 be32(jwe->jose.e[LJJHI_APV].len, &t), 4) ||
295 lws_genhash_update(&hash_ctx, jwe->jose.e[LJJHI_APV].buf,
296 jwe->jose.e[LJJHI_APV].len) ||
298 be32(jwe->jose.enc_alg->keybits_fixed, &t),
328 if (lws_jwe_parse_jose(&jwe->jose, jwe->jws.map.buf[LJWS_JOSE],
337 if (!jwe->jose.alg) {
340 lwsl_err("%s: no jose.alg: %s\n", __func__, dotstar);
345 valid_aescbc_hmac = jwe->jose.enc_alg &&
346 jwe->jose.enc_alg->algtype_crypto == LWS_JOSE_ENCTYPE_AES_CBC &&
347 (jwe->jose.enc_alg->hmac_type == LWS_GENHMAC_TYPE_SHA256 ||
348 jwe->jose.enc_alg->hmac_type == LWS_GENHMAC_TYPE_SHA384 ||
349 jwe->jose.enc_alg->hmac_type == LWS_GENHMAC_TYPE_SHA512);
351 valid_aesgcm = jwe->jose.enc_alg &&
352 jwe->jose.enc_alg->algtype_crypto == LWS_JOSE_ENCTYPE_AES_GCM;
354 if ((jwe->jose.alg->algtype_signing == LWS_JOSE_ENCTYPE_RSASSA_PKCS1_1_5 ||
355 jwe->jose.alg->algtype_signing == LWS_JOSE_ENCTYPE_RSASSA_PKCS1_OAEP)) {
366 if (jwe->jose.alg->algtype_signing == LWS_JOSE_ENCTYPE_AES_ECB &&
372 if (jwe->jose.alg->algtype_signing == LWS_JOSE_ENCTYPE_ECDHES &&
378 jwe->jose.alg->alg, jwe->jose.enc_alg ?
379 jwe->jose.enc_alg->alg : "NULL");
388 if (jwe->jose.recipients >= (int)LWS_ARRAY_SIZE(jwe->jose.recipient)) {
394 valid_aesgcm = jwe->jose.enc_alg &&
395 jwe->jose.enc_alg->algtype_crypto == LWS_JOSE_ENCTYPE_AES_GCM;
397 if (lws_jwe_parse_jose(&jwe->jose, jwe->jws.map.buf[LJWS_JOSE],
405 valid_aescbc_hmac = jwe->jose.enc_alg &&
406 jwe->jose.enc_alg->algtype_crypto == LWS_JOSE_ENCTYPE_AES_CBC &&
407 (jwe->jose.enc_alg->hmac_type == LWS_GENHMAC_TYPE_SHA256 ||
408 jwe->jose.enc_alg->hmac_type == LWS_GENHMAC_TYPE_SHA384 ||
409 jwe->jose.enc_alg->hmac_type == LWS_GENHMAC_TYPE_SHA512);
411 if ((jwe->jose.alg->algtype_signing == LWS_JOSE_ENCTYPE_RSASSA_PKCS1_1_5 ||
412 jwe->jose.alg->algtype_signing == LWS_JOSE_ENCTYPE_RSASSA_PKCS1_OAEP)) {
427 if (jwe->jose.alg->algtype_signing == LWS_JOSE_ENCTYPE_AES_ECB &&
435 if (jwe->jose.alg->algtype_signing == LWS_JOSE_ENCTYPE_ECDHES &&
442 jwe->jose.alg->alg, jwe->jose.enc_alg ?
443 jwe->jose.enc_alg->alg : "NULL");
447 memset(&jwe->jose.recipient[jwe->jose.recipients], 0,
448 sizeof(jwe->jose.recipient[0]));
450 jwe->jose.recipients++;
483 if (jwe->jose.recipients > 1) {
486 jwe->jose.recipients);
578 if (!jwe->jose.alg || !jwe->jose.alg->alg)
582 jwe->jose.alg->alg);
636 n = lws_jws_sign_from_b64(&jwe->jose, &jws, p1, lws_ptr_diff_size_t(end1, p1));
727 jlen = lws_jose_render(&jwe->jose, jwe->jws.jwk, buf, sizeof(buf));
747 jwe->jose.alg->alg, jwe->jose.enc_alg->alg);