krp 436 crypto/crypto.c crypto_kdispatch(struct cryptkop *krp) krp 442 crypto/crypto.c krp->krp_next = NULL; krp 444 crypto/crypto.c krp_req_queue = krp; krp 445 crypto/crypto.c krp_req_queue_tail = &(krp->krp_next); krp 449 crypto/crypto.c *krp_req_queue_tail = krp; krp 450 crypto/crypto.c krp_req_queue_tail = &(krp->krp_next); krp 460 crypto/crypto.c crypto_kinvoke(struct cryptkop *krp) krp 467 crypto/crypto.c if (krp == NULL || krp->krp_callback == NULL) krp 476 crypto/crypto.c if ((crypto_drivers[hid].cc_kalg[krp->krp_op] & krp 483 crypto/crypto.c krp->krp_status = ENODEV; krp 484 crypto/crypto.c crypto_kdone(krp); krp 488 crypto/crypto.c krp->krp_hid = hid; krp 492 crypto/crypto.c error = crypto_drivers[hid].cc_kprocess(krp); krp 494 crypto/crypto.c krp->krp_status = error; krp 495 crypto/crypto.c crypto_kdone(krp); krp 639 crypto/crypto.c struct cryptkop *krp; krp 646 crypto/crypto.c krp = krp_req_queue; krp 647 crypto/crypto.c if (crp == NULL && krp == NULL) { krp 657 crypto/crypto.c if (krp) { krp 659 crypto/crypto.c krp_req_queue = krp->krp_next; krp 660 crypto/crypto.c crypto_kinvoke(krp); krp 679 crypto/crypto.c crypto_kdone(struct cryptkop *krp) krp 681 crypto/crypto.c krp->krp_callback(krp); krp 486 crypto/cryptodev.c cryptodevkey_cb(struct cryptkop *krp) krp 489 crypto/cryptodev.c wakeup(krp); krp 496 crypto/cryptodev.c struct cryptkop *krp = NULL; krp 531 crypto/cryptodev.c krp = malloc(sizeof *krp, M_XDATA, M_WAITOK); krp 532 crypto/cryptodev.c bzero(krp, sizeof *krp); krp 533 crypto/cryptodev.c krp->krp_op = kop->crk_op; krp 534 crypto/cryptodev.c krp->krp_status = kop->crk_status; krp 535 crypto/cryptodev.c krp->krp_iparams = kop->crk_iparams; krp 536 crypto/cryptodev.c krp->krp_oparams = kop->crk_oparams; krp 537 crypto/cryptodev.c krp->krp_status = 0; krp 538 crypto/cryptodev.c krp->krp_callback = cryptodevkey_cb; krp 541 crypto/cryptodev.c krp->krp_param[i].crp_nbits = kop->crk_param[i].crp_nbits; krp 547 crypto/cryptodev.c for (i = 0; i < krp->krp_iparams + krp->krp_oparams; i++) { krp 548 crypto/cryptodev.c size = (krp->krp_param[i].crp_nbits + 7) / 8; krp 551 crypto/cryptodev.c krp->krp_param[i].crp_p = malloc(size, M_XDATA, M_WAITOK); krp 552 crypto/cryptodev.c if (i >= krp->krp_iparams) krp 554 crypto/cryptodev.c error = copyin(kop->crk_param[i].crp_p, krp->krp_param[i].crp_p, size); krp 559 crypto/cryptodev.c error = crypto_kdispatch(krp); krp 562 crypto/cryptodev.c error = tsleep(krp, PSOCK, "crydev", 0); krp 568 crypto/cryptodev.c if (krp->krp_status != 0) { krp 569 crypto/cryptodev.c error = krp->krp_status; krp 573 crypto/cryptodev.c for (i = krp->krp_iparams; i < krp->krp_iparams + krp->krp_oparams; i++) { krp 574 crypto/cryptodev.c size = (krp->krp_param[i].crp_nbits + 7) / 8; krp 577 crypto/cryptodev.c error = copyout(krp->krp_param[i].crp_p, kop->crk_param[i].crp_p, size); krp 583 crypto/cryptodev.c if (krp) { krp 584 crypto/cryptodev.c kop->crk_status = krp->krp_status; krp 586 crypto/cryptodev.c if (krp->krp_param[i].crp_p) krp 587 crypto/cryptodev.c free(krp->krp_param[i].crp_p, M_XDATA); krp 589 crypto/cryptodev.c free(krp, M_XDATA); krp 267 dev/pci/lofn.c lofn_kfind(krp) krp 268 dev/pci/lofn.c struct cryptkop *krp; krp 277 dev/pci/lofn.c if (sc->sc_cid == krp->krp_hid) krp 284 dev/pci/lofn.c lofn_kprocess(krp) krp 285 dev/pci/lofn.c struct cryptkop *krp; krp 291 dev/pci/lofn.c if (krp == NULL || krp->krp_callback == NULL) krp 293 dev/pci/lofn.c if ((sc = lofn_kfind(krp)) == NULL) { krp 294 dev/pci/lofn.c krp->krp_status = EINVAL; krp 295 dev/pci/lofn.c crypto_kdone(krp); krp 301 dev/pci/lofn.c krp->krp_status = ENOMEM; krp 302 dev/pci/lofn.c crypto_kdone(krp); krp 306 dev/pci/lofn.c switch (krp->krp_op) { krp 310 dev/pci/lofn.c q->q_krp = krp; krp 318 dev/pci/lofn.c sc->sc_dv.dv_xname, krp->krp_op); krp 319 dev/pci/lofn.c krp->krp_status = EOPNOTSUPP; krp 320 dev/pci/lofn.c crypto_kdone(krp); krp 331 dev/pci/lofn.c struct cryptkop *krp = q->q_krp; krp 336 dev/pci/lofn.c if (krp->krp_param[LOFN_MODEXP_PAR_M].crp_nbits > 1024) { krp 348 dev/pci/lofn.c nbits = lofn_norm_sigbits(krp->krp_param[LOFN_MODEXP_PAR_N].crp_p, krp 349 dev/pci/lofn.c krp->krp_param[LOFN_MODEXP_PAR_N].crp_nbits); krp 359 dev/pci/lofn.c bcopy(krp->krp_param[LOFN_MODEXP_PAR_N].crp_p, &sc->sc_tmp, krp 376 dev/pci/lofn.c mbits = lofn_norm_sigbits(krp->krp_param[LOFN_MODEXP_PAR_M].crp_p, krp 377 dev/pci/lofn.c krp->krp_param[LOFN_MODEXP_PAR_M].crp_nbits); krp 383 dev/pci/lofn.c bcopy(krp->krp_param[LOFN_MODEXP_PAR_M].crp_p, &sc->sc_tmp, krp 400 dev/pci/lofn.c ebits = lofn_norm_sigbits(krp->krp_param[LOFN_MODEXP_PAR_E].crp_p, krp 401 dev/pci/lofn.c krp->krp_param[LOFN_MODEXP_PAR_E].crp_nbits); krp 411 dev/pci/lofn.c bcopy(krp->krp_param[LOFN_MODEXP_PAR_E].crp_p, &sc->sc_tmp, krp 456 dev/pci/lofn.c krp->krp_status = err; krp 457 dev/pci/lofn.c crypto_kdone(krp); krp 466 dev/pci/lofn.c struct cryptkop *krp = q->q_krp; krp 473 dev/pci/lofn.c crplen = (krp->krp_param[krp->krp_iparams].crp_nbits + 7) / 8; krp 476 dev/pci/lofn.c bcopy(sc->sc_tmp.b, krp->krp_param[krp->krp_iparams].crp_p, krp 479 dev/pci/lofn.c bcopy(sc->sc_tmp.b, krp->krp_param[krp->krp_iparams].crp_p, krp 481 dev/pci/lofn.c bzero(krp->krp_param[krp->krp_iparams].crp_p + reglen, krp 489 dev/pci/lofn.c crypto_kdone(krp); krp 1386 dev/pci/noct.c noct_kfind(krp) krp 1387 dev/pci/noct.c struct cryptkop *krp; krp 1396 dev/pci/noct.c if (sc->sc_cid == krp->krp_hid) krp 1403 dev/pci/noct.c noct_kprocess(krp) krp 1404 dev/pci/noct.c struct cryptkop *krp; krp 1408 dev/pci/noct.c if (krp == NULL || krp->krp_callback == NULL) krp 1410 dev/pci/noct.c if ((sc = noct_kfind(krp)) == NULL) { krp 1411 dev/pci/noct.c krp->krp_status = EINVAL; krp 1412 dev/pci/noct.c crypto_kdone(krp); krp 1416 dev/pci/noct.c switch (krp->krp_op) { krp 1418 dev/pci/noct.c noct_kprocess_modexp(sc, krp); krp 1422 dev/pci/noct.c sc->sc_dv.dv_xname, krp->krp_op); krp 1423 dev/pci/noct.c krp->krp_status = EOPNOTSUPP; krp 1424 dev/pci/noct.c crypto_kdone(krp); krp 1442 dev/pci/noct.c noct_kprocess_modexp(sc, krp) krp 1444 dev/pci/noct.c struct cryptkop *krp; krp 1461 dev/pci/noct.c mbits = bits = noct_ksigbits(&krp->krp_param[2]); krp 1489 dev/pci/noct.c (digits * 16) - 1 - i] = krp->krp_param[2].crp_p[i]; krp 1520 dev/pci/noct.c bits = noct_ksigbits(&krp->krp_param[0]); krp 1548 dev/pci/noct.c (digits * 16) - 1 - i] = krp->krp_param[2].crp_p[i]; krp 1577 dev/pci/noct.c bits = noct_ksigbits(&krp->krp_param[1]); krp 1605 dev/pci/noct.c (digits * 16) - 1 - i] = krp->krp_param[2].crp_p[i]; krp 1630 dev/pci/noct.c krp->krp_status = err; krp 1631 dev/pci/noct.c crypto_kdone(krp); krp 1742 dev/pci/noct.c struct cryptkop *krp = sw->bn_krp; krp 1749 dev/pci/noct.c for (j = 0; j < (krp->krp_param[3].crp_nbits + 7) / 8; j++) { krp 1750 dev/pci/noct.c krp->krp_param[3].crp_p[j] = sc->sc_bncache[i]; krp 1757 dev/pci/noct.c krp->krp_status = err; krp 1758 dev/pci/noct.c crypto_kdone(krp); krp 419 dev/pci/nofn.c nofn_pk_process(krp) krp 420 dev/pci/nofn.c struct cryptkop *krp; krp 426 dev/pci/nofn.c if (krp == NULL || krp->krp_callback == NULL) krp 428 dev/pci/nofn.c if ((sc = nofn_pk_find(krp)) == NULL) { krp 429 dev/pci/nofn.c krp->krp_status = EINVAL; krp 430 dev/pci/nofn.c crypto_kdone(krp); krp 436 dev/pci/nofn.c krp->krp_status = ENOMEM; krp 437 dev/pci/nofn.c crypto_kdone(krp); krp 441 dev/pci/nofn.c switch (krp->krp_op) { krp 445 dev/pci/nofn.c q->q_krp = krp; krp 453 dev/pci/nofn.c sc->sc_dev.dv_xname, krp->krp_op); krp 454 dev/pci/nofn.c krp->krp_status = EOPNOTSUPP; krp 455 dev/pci/nofn.c crypto_kdone(krp); krp 462 dev/pci/nofn.c nofn_pk_find(krp) krp 463 dev/pci/nofn.c struct cryptkop *krp; krp 472 dev/pci/nofn.c if (sc->sc_cid == krp->krp_hid) krp 521 dev/pci/nofn.c struct cryptkop *krp = q->q_krp; krp 526 dev/pci/nofn.c if (krp->krp_param[NOFN_MODEXP_PAR_M].crp_nbits > 1024) { krp 538 dev/pci/nofn.c nbits = nofn_pk_sigbits(krp->krp_param[NOFN_MODEXP_PAR_N].crp_p, krp 539 dev/pci/nofn.c krp->krp_param[NOFN_MODEXP_PAR_N].crp_nbits); krp 549 dev/pci/nofn.c bcopy(krp->krp_param[NOFN_MODEXP_PAR_N].crp_p, &sc->sc_pk_tmp, krp 566 dev/pci/nofn.c mbits = nofn_pk_sigbits(krp->krp_param[NOFN_MODEXP_PAR_M].crp_p, krp 567 dev/pci/nofn.c krp->krp_param[NOFN_MODEXP_PAR_M].crp_nbits); krp 573 dev/pci/nofn.c bcopy(krp->krp_param[NOFN_MODEXP_PAR_M].crp_p, &sc->sc_pk_tmp, krp 590 dev/pci/nofn.c ebits = nofn_pk_sigbits(krp->krp_param[NOFN_MODEXP_PAR_E].crp_p, krp 591 dev/pci/nofn.c krp->krp_param[NOFN_MODEXP_PAR_E].crp_nbits); krp 601 dev/pci/nofn.c bcopy(krp->krp_param[NOFN_MODEXP_PAR_E].crp_p, &sc->sc_pk_tmp, krp 646 dev/pci/nofn.c krp->krp_status = err; krp 647 dev/pci/nofn.c crypto_kdone(krp); krp 656 dev/pci/nofn.c struct cryptkop *krp = q->q_krp; krp 663 dev/pci/nofn.c crplen = (krp->krp_param[krp->krp_iparams].crp_nbits + 7) / 8; krp 666 dev/pci/nofn.c bcopy(sc->sc_pk_tmp.b, krp->krp_param[krp->krp_iparams].crp_p, krp 669 dev/pci/nofn.c bcopy(sc->sc_pk_tmp.b, krp->krp_param[krp->krp_iparams].crp_p, krp 671 dev/pci/nofn.c bzero(krp->krp_param[krp->krp_iparams].crp_p + reglen, krp 679 dev/pci/nofn.c crypto_kdone(krp); krp 1782 dev/pci/safe.c safe_kfind(struct cryptkop *krp) krp 1791 dev/pci/safe.c if (sc->sc_cid == krp->krp_hid) krp 1798 dev/pci/safe.c safe_kprocess(struct cryptkop *krp) krp 1804 dev/pci/safe.c if ((sc = safe_kfind(krp)) == NULL) { krp 1805 dev/pci/safe.c krp->krp_status = EINVAL; krp 1809 dev/pci/safe.c if (krp->krp_op != CRK_MOD_EXP) { krp 1810 dev/pci/safe.c krp->krp_status = EOPNOTSUPP; krp 1816 dev/pci/safe.c krp->krp_status = ENOMEM; krp 1819 dev/pci/safe.c q->pkq_krp = krp; krp 1828 dev/pci/safe.c crypto_kdone(krp); krp 1839 dev/pci/safe.c struct cryptkop *krp = sc->sc_pkq_cur->pkq_krp; krp 1843 dev/pci/safe.c if (krp->krp_iparams < 3 || krp->krp_oparams != 1) { krp 1844 dev/pci/safe.c krp->krp_status = EINVAL; krp 1848 dev/pci/safe.c base_bits = safe_ksigbits(&krp->krp_param[SAFE_CRK_PARAM_BASE]); krp 1854 dev/pci/safe.c exp_bits = safe_ksigbits(&krp->krp_param[SAFE_CRK_PARAM_EXP]); krp 1860 dev/pci/safe.c mod_bits = safe_ksigbits(&krp->krp_param[SAFE_CRK_PARAM_MOD]); krp 1867 dev/pci/safe.c if ((krp->krp_param[SAFE_CRK_PARAM_MOD].crp_p[0] & 1) == 0) krp 1869 dev/pci/safe.c if (mod_bits > krp->krp_param[krp->krp_iparams].crp_nbits) krp 1879 dev/pci/safe.c basep = krp->krp_param[SAFE_CRK_PARAM_BASE].crp_p + krp 1881 dev/pci/safe.c modp = krp->krp_param[SAFE_CRK_PARAM_MOD].crp_p + krp 1914 dev/pci/safe.c &krp->krp_param[SAFE_CRK_PARAM_EXP]); krp 1917 dev/pci/safe.c &krp->krp_param[SAFE_CRK_PARAM_MOD]); krp 1920 dev/pci/safe.c &krp->krp_param[SAFE_CRK_PARAM_BASE]); krp 1929 dev/pci/safe.c krp->krp_status = E2BIG; krp 1932 dev/pci/safe.c krp->krp_status = ERANGE; krp 1935 dev/pci/safe.c krp->krp_status = EDOM; krp 1351 dev/pci/ubsec.c struct cryptkop *krp; krp 1380 dev/pci/ubsec.c krp = me->me_krp; krp 1382 dev/pci/ubsec.c clen = (krp->krp_param[krp->krp_iparams].crp_nbits + 7) / 8; krp 1394 dev/pci/ubsec.c krp->krp_status = E2BIG; krp 1397 dev/pci/ubsec.c bzero(krp->krp_param[krp->krp_iparams].crp_p, krp 1398 dev/pci/ubsec.c (krp->krp_param[krp->krp_iparams].crp_nbits krp 1401 dev/pci/ubsec.c krp->krp_param[krp->krp_iparams].crp_p, krp 1406 dev/pci/ubsec.c krp->krp_param[krp->krp_iparams].crp_p, krp 1407 dev/pci/ubsec.c krp->krp_param[krp->krp_iparams].crp_nbits); krp 1409 dev/pci/ubsec.c crypto_kdone(krp); krp 1425 dev/pci/ubsec.c krp = rp->rpr_krp; krp 1431 dev/pci/ubsec.c len = (krp->krp_param[UBS_RSAPRIV_PAR_MSGOUT].crp_nbits + 7) / 8; krp 1433 dev/pci/ubsec.c krp->krp_param[UBS_RSAPRIV_PAR_MSGOUT].crp_p, len); krp 1435 dev/pci/ubsec.c crypto_kdone(krp); krp 1708 dev/pci/ubsec.c ubsec_kfind(struct cryptkop *krp) krp 1717 dev/pci/ubsec.c if (sc->sc_cid == krp->krp_hid) krp 1757 dev/pci/ubsec.c ubsec_kprocess(struct cryptkop *krp) krp 1762 dev/pci/ubsec.c if (krp == NULL || krp->krp_callback == NULL) krp 1764 dev/pci/ubsec.c if ((sc = ubsec_kfind(krp)) == NULL) krp 1775 dev/pci/ubsec.c switch (krp->krp_op) { krp 1778 dev/pci/ubsec.c r = ubsec_kprocess_modexp_hw(sc, krp); krp 1780 dev/pci/ubsec.c r = ubsec_kprocess_modexp_sw(sc, krp); krp 1783 dev/pci/ubsec.c r = ubsec_kprocess_rsapriv(sc, krp); krp 1787 dev/pci/ubsec.c sc->sc_dv.dv_xname, krp->krp_op); krp 1788 dev/pci/ubsec.c krp->krp_status = EOPNOTSUPP; krp 1789 dev/pci/ubsec.c crypto_kdone(krp); krp 1799 dev/pci/ubsec.c ubsec_kprocess_modexp_sw(struct ubsec_softc *sc, struct cryptkop *krp) krp 1814 dev/pci/ubsec.c me->me_krp = krp; krp 1817 dev/pci/ubsec.c nbits = ubsec_ksigbits(&krp->krp_param[UBS_MODEXP_PAR_N]); krp 1840 dev/pci/ubsec.c if (krp->krp_param[krp->krp_iparams].crp_nbits < nbits) { krp 1858 dev/pci/ubsec.c mbits = ubsec_ksigbits(&krp->krp_param[UBS_MODEXP_PAR_M]); krp 1868 dev/pci/ubsec.c krp->krp_param[UBS_MODEXP_PAR_M].crp_p, mbits, krp 1877 dev/pci/ubsec.c ebits = ubsec_ksigbits(&krp->krp_param[UBS_MODEXP_PAR_E]); krp 1887 dev/pci/ubsec.c krp->krp_param[UBS_MODEXP_PAR_E].crp_p, ebits, krp 1932 dev/pci/ubsec.c krp->krp_param[UBS_MODEXP_PAR_N].crp_p, nbits, krp 1989 dev/pci/ubsec.c krp->krp_status = err; krp 1990 dev/pci/ubsec.c crypto_kdone(krp); krp 1998 dev/pci/ubsec.c ubsec_kprocess_modexp_hw(struct ubsec_softc *sc, struct cryptkop *krp) krp 2013 dev/pci/ubsec.c me->me_krp = krp; krp 2016 dev/pci/ubsec.c nbits = ubsec_ksigbits(&krp->krp_param[UBS_MODEXP_PAR_N]); krp 2040 dev/pci/ubsec.c if (krp->krp_param[krp->krp_iparams].crp_nbits < nbits) { krp 2058 dev/pci/ubsec.c mbits = ubsec_ksigbits(&krp->krp_param[UBS_MODEXP_PAR_M]); krp 2068 dev/pci/ubsec.c bcopy(krp->krp_param[UBS_MODEXP_PAR_M].crp_p, krp 2077 dev/pci/ubsec.c ebits = ubsec_ksigbits(&krp->krp_param[UBS_MODEXP_PAR_E]); krp 2087 dev/pci/ubsec.c bcopy(krp->krp_param[UBS_MODEXP_PAR_E].crp_p, krp 2131 dev/pci/ubsec.c bcopy(krp->krp_param[UBS_MODEXP_PAR_N].crp_p, ctx->me_N, krp 2188 dev/pci/ubsec.c krp->krp_status = err; krp 2189 dev/pci/ubsec.c crypto_kdone(krp); krp 2194 dev/pci/ubsec.c ubsec_kprocess_rsapriv(struct ubsec_softc *sc, struct cryptkop *krp) krp 2202 dev/pci/ubsec.c msglen = ubsec_ksigbits(&krp->krp_param[UBS_RSAPRIV_PAR_P]); krp 2203 dev/pci/ubsec.c padlen = ubsec_ksigbits(&krp->krp_param[UBS_RSAPRIV_PAR_Q]); krp 2222 dev/pci/ubsec.c if (ubsec_ksigbits(&krp->krp_param[UBS_RSAPRIV_PAR_DP]) > padlen) { krp 2227 dev/pci/ubsec.c if (ubsec_ksigbits(&krp->krp_param[UBS_RSAPRIV_PAR_DQ]) > padlen) { krp 2232 dev/pci/ubsec.c if (ubsec_ksigbits(&krp->krp_param[UBS_RSAPRIV_PAR_PINV]) > padlen) { krp 2241 dev/pci/ubsec.c rp->rpr_krp = krp; krp 2260 dev/pci/ubsec.c bcopy(krp->krp_param[UBS_RSAPRIV_PAR_P].crp_p, krp 2262 dev/pci/ubsec.c (krp->krp_param[UBS_RSAPRIV_PAR_P].crp_nbits + 7) / 8); krp 2265 dev/pci/ubsec.c bcopy(krp->krp_param[UBS_RSAPRIV_PAR_Q].crp_p, krp 2267 dev/pci/ubsec.c (krp->krp_param[UBS_RSAPRIV_PAR_Q].crp_nbits + 7) / 8); krp 2270 dev/pci/ubsec.c bcopy(krp->krp_param[UBS_RSAPRIV_PAR_DP].crp_p, krp 2272 dev/pci/ubsec.c (krp->krp_param[UBS_RSAPRIV_PAR_DP].crp_nbits + 7) / 8); krp 2275 dev/pci/ubsec.c bcopy(krp->krp_param[UBS_RSAPRIV_PAR_DQ].crp_p, krp 2277 dev/pci/ubsec.c (krp->krp_param[UBS_RSAPRIV_PAR_DQ].crp_nbits + 7) / 8); krp 2280 dev/pci/ubsec.c bcopy(krp->krp_param[UBS_RSAPRIV_PAR_PINV].crp_p, krp 2282 dev/pci/ubsec.c (krp->krp_param[UBS_RSAPRIV_PAR_PINV].crp_nbits + 7) / 8); krp 2287 dev/pci/ubsec.c if (ubsec_ksigbits(&krp->krp_param[UBS_RSAPRIV_PAR_MSGIN]) > msglen) { krp 2297 dev/pci/ubsec.c bcopy(krp->krp_param[UBS_RSAPRIV_PAR_MSGIN].crp_p, krp 2299 dev/pci/ubsec.c (krp->krp_param[UBS_RSAPRIV_PAR_MSGIN].crp_nbits + 7) / 8); krp 2302 dev/pci/ubsec.c if (ubsec_ksigbits(&krp->krp_param[UBS_RSAPRIV_PAR_MSGOUT]) < msglen) { krp 2373 dev/pci/ubsec.c krp->krp_status = err; krp 2374 dev/pci/ubsec.c crypto_kdone(krp);