Lines Matching refs:token

66 	pk11_token_t *token;
93 setup_session(pk11_session_t *sp, pk11_token_t *token, bool rw);
241 pk11_token_t *token, *next;
246 token = ISC_LIST_HEAD(tokens);
247 while (token != NULL) {
248 next = ISC_LIST_NEXT(token, link);
249 ISC_LIST_UNLINK(tokens, token, link);
250 if (token == best_rsa_token) {
253 if (token == best_ecdsa_token) {
256 if (token == best_eddsa_token) {
259 pk11_mem_put(token, sizeof(*token));
260 token = next;
272 pk11_token_t *token = NULL;
293 for (token = ISC_LIST_HEAD(tokens); token != NULL;
294 token = ISC_LIST_NEXT(token, link))
296 if (token->slotid == slot) {
302 for (token = ISC_LIST_HEAD(tokens); token != NULL;
303 token = ISC_LIST_NEXT(token, link))
305 if (token->slotid == slot) {
311 if (token == NULL) {
315 /* Override the token's PIN */
324 memset(token->pin, 0, sizeof(token->pin));
325 strlcpy(token->pin, pin, sizeof(token->pin));
328 freelist = &token->sessions;
347 sp->token = token;
350 ret = setup_session(sp, token, rw);
381 ISC_LIST_APPEND(sp->token->sessions, sp, link);
387 pk11_token_t *token;
391 for (token = ISC_LIST_HEAD(tokens); token != NULL;
392 token = ISC_LIST_NEXT(token, link))
394 oret = free_session_list(&token->sessions);
436 setup_session(pk11_session_t *sp, pk11_token_t *token, bool rw) {
444 rv = pkcs_C_OpenSession(token->slotid, flags, NULL_PTR, NULL_PTR,
455 pk11_token_t *token = sp->token;
459 if (!token->logged) {
461 (CK_UTF8CHAR_PTR)token->pin,
462 (CK_ULONG)strlen(token->pin));
471 token->logged = true;
499 pk11_token_t *token;
521 token = pk11_mem_get(sizeof(*token));
522 token->magic = TOK_MAGIC;
523 token->slotid = slot;
524 ISC_LINK_INIT(token, link);
525 ISC_LIST_INIT(token->sessions);
526 memmove(token->name, tokenInfo.label, 32);
527 memmove(token->manuf, tokenInfo.manufacturerID, 32);
528 memmove(token->model, tokenInfo.model, 16);
529 memmove(token->serial, tokenInfo.serialNumber, 16);
530 ISC_LIST_APPEND(tokens, token, link);
581 token->operations |= 1 << OP_RSA;
583 best_rsa_token = token;
605 token->operations |= 1 << OP_ECDSA;
607 best_ecdsa_token = token;
629 token->operations |= 1 << OP_EDDSA;
631 best_eddsa_token = token;
643 pk11_token_t *token = NULL;
647 token = best_rsa_token;
650 token = best_ecdsa_token;
653 token = best_eddsa_token;
658 if (token == NULL) {
661 return (token->slotid);
882 pk11_token_t *token = NULL;
940 } else if (strcmp(a, "token") == 0) {
941 /* token: CK_TOKEN_INFO label */
942 if (token == NULL) {
943 for (token = ISC_LIST_HEAD(tokens);
944 token != NULL;
945 token = ISC_LIST_NEXT(token, link))
947 if (pk11strcmp(v, l, token->name, 32)) {
954 if (token == NULL) {
955 for (token = ISC_LIST_HEAD(tokens);
956 token != NULL;
957 token = ISC_LIST_NEXT(token, link))
959 if (pk11strcmp(v, l, token->manuf, 32))
967 if (token == NULL) {
968 for (token = ISC_LIST_HEAD(tokens);
969 token != NULL;
970 token = ISC_LIST_NEXT(token, link))
972 if (pk11strcmp(v, l, token->serial, 16))
980 if (token == NULL) {
981 for (token = ISC_LIST_HEAD(tokens);
982 token != NULL;
983 token = ISC_LIST_NEXT(token, link))
985 if (pk11strcmp(v, l, token->model, 16))
1046 if (token == NULL) {
1048 token = best_rsa_token;
1050 token = best_ecdsa_token;
1052 token = best_eddsa_token;
1055 if (token == NULL) {
1058 obj->slot = token->slotid;
1060 memmove(token->pin, pin, PINLEN + 1);
1082 pk11_token_t *token;
1090 for (token = ISC_LIST_HEAD(tokens); token != NULL;
1091 token = ISC_LIST_NEXT(token, link))
1094 printf("\taddress=%p\n", token);
1095 printf("\tslotID=%lu\n", token->slotid);
1096 printf("\tlabel=%.32s\n", token->name);
1097 printf("\tmanufacturerID=%.32s\n", token->manuf);
1098 printf("\tmodel=%.16s\n", token->model);
1099 printf("\tserialNumber=%.16s\n", token->serial);
1100 printf("\tsupported operations=0x%x (", token->operations);
1102 if (token->operations & (1 << OP_RSA)) {
1106 if (token->operations & (1 << OP_ECDSA)) {