• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt/router/neon/src/

Lines Matching defs:prov

80     ne_ssl_pkcs11_provider *prov = (ne_ssl_pkcs11_provider *)r->meth->app_data;
85 if (!prov->session || prov->privkey == CK_INVALID_HANDLE) {
97 rv = pakchois_sign_init(prov->session, &mech, prov->privkey);
105 rv = pakchois_sign(prov->session, (unsigned char *)m, mlen, sigret, &len);
143 static RSA_METHOD *pk11_rsa_method(ne_ssl_pkcs11_provider *prov)
155 m->app_data = (char *)prov;
163 static int pk11_find_x509(ne_ssl_pkcs11_provider *prov,
212 cc = ne__ssl_clicert_exkey_import(value, a[0].value_len, pk11_rsa_method(prov));
216 prov->clicert = cc;
238 static int pk11_find_pkey(ne_ssl_pkcs11_provider *prov,
273 a[0].value = &prov->keytype;
274 a[0].value_len = sizeof prov->keytype;
277 && (prov->keytype == CKK_RSA || KEYTYPE_IS_DSA(prov->keytype))) {
279 prov->privkey = obj;
291 static int find_client_cert(ne_ssl_pkcs11_provider *prov,
298 return pk11_find_x509(prov, pks, certid, &cid_len)
299 && pk11_find_pkey(prov, pks, certid, cid_len);
312 ne_ssl_pkcs11_provider *prov = userdata;
317 if (!prov->session || prov->privkey == CK_INVALID_HANDLE) {
322 mech.mechanism = prov->keytype == CKK_DSA ? CKM_DSA : CKM_RSA_PKCS;
328 rv = pakchois_sign_init(prov->session, &mech, prov->privkey);
335 rv = pakchois_sign(prov->session, hash->data, hash->size, NULL, &siglen);
344 rv = pakchois_sign(prov->session, hash->data, hash->size,
372 static int pk11_login(ne_ssl_pkcs11_provider *prov, ck_slot_id_t slot_id,
379 if (pakchois_get_token_info(prov->module, slot_id, &tinfo) != CKR_OK) {
406 if (!prov->pin_fn) {
421 if (pakchois_get_token_info(prov->module, slot_id,
436 if (prov->pin_fn(prov->pin_data, attempt++,
458 ne_ssl_pkcs11_provider *prov = userdata;
462 if (prov->clicert) {
464 ne_ssl_set_clicert(sess, prov->clicert);
468 if (pakchois_get_slot_list(prov->module, 1, NULL, &scount) != CKR_OK
476 if (pakchois_get_slot_list(prov->module, 1, slots, &scount) != CKR_OK) {
490 if (pakchois_get_slot_info(prov->module, slots[n], &sinfo) != CKR_OK) {
500 rv = pakchois_open_session(prov->module, slots[n],
509 if (pk11_login(prov, slots[n], pks, &sinfo) == 0) {
510 if (find_client_cert(prov, pks)) {
512 prov->session = pks;
513 ne_ssl_set_clicert(sess, prov->clicert);
528 ne_ssl_pkcs11_provider *prov;
530 prov = *provider = ne_calloc(sizeof *prov);
531 prov->module = module;
532 prov->privkey = CK_INVALID_HANDLE;
586 void ne_ssl_pkcs11_provider_destroy(ne_ssl_pkcs11_provider *prov)
588 if (prov->session) {
589 pakchois_close_session(prov->session);
591 if (prov->clicert) {
592 ne_ssl_clicert_free(prov->clicert);
594 pakchois_module_destroy(prov->module);
595 ne_free(prov);