Lines Matching refs:skv

223 	struct sk_usbhid **skv;  in sk_openv()  local
227 if ((skv = calloc(ndevs, sizeof(*skv))) == NULL) { in sk_openv()
234 else if ((skv[*nopen] = sk_open(fido_dev_info_path(di))) == NULL) in sk_openv()
241 sk_close(skv[i]); in sk_openv()
242 free(skv); in sk_openv()
243 skv = NULL; in sk_openv()
246 return skv; in sk_openv()
250 sk_closev(struct sk_usbhid **skv, size_t nsk) in sk_closev() argument
255 sk_close(skv[i]); in sk_closev()
256 free(skv); in sk_closev()
260 sk_touch_begin(struct sk_usbhid **skv, size_t nsk) in sk_touch_begin() argument
266 if ((r = fido_dev_get_touch_begin(skv[i]->dev)) != FIDO_OK) in sk_touch_begin()
268 " %s", skv[i]->path, fido_strerr(r)); in sk_touch_begin()
276 sk_touch_poll(struct sk_usbhid **skv, size_t nsk, int *touch, size_t *idx) in sk_touch_poll() argument
287 if (skv[i] == NULL) in sk_touch_poll()
289 skdebug(__func__, "polling %s", skv[i]->path); in sk_touch_poll()
290 if ((r = fido_dev_get_touch_status(skv[i]->dev, touch, in sk_touch_poll()
293 skv[i]->path, fido_strerr(r)); in sk_touch_poll()
294 sk_close(skv[i]); /* discard device */ in sk_touch_poll()
295 skv[i] = NULL; in sk_touch_poll()
478 struct sk_usbhid **skv, *sk; in sk_select_by_cred() local
482 if ((skv = sk_openv(devlist, ndevs, &skvcnt)) == NULL) { in sk_select_by_cred()
486 if (skvcnt == 1 && check_sk_options(skv[0]->dev, "uv", in sk_select_by_cred()
488 sk = skv[0]; in sk_select_by_cred()
489 skv[0] = NULL; in sk_select_by_cred()
494 if (sk_try(skv[i], application, key_handle, in sk_select_by_cred()
496 sk = skv[i]; in sk_select_by_cred()
497 skv[i] = NULL; in sk_select_by_cred()
503 sk_closev(skv, skvcnt); in sk_select_by_cred()
510 struct sk_usbhid **skv, *sk; in sk_select_by_touch() local
515 if ((skv = sk_openv(devlist, ndevs, &skvcnt)) == NULL) { in sk_select_by_touch()
523 sk = skv[0]; in sk_select_by_touch()
524 skv[0] = NULL; in sk_select_by_touch()
533 if (sk_touch_begin(skv, skvcnt) == -1) { in sk_select_by_touch()
539 if (sk_touch_poll(skv, skvcnt, &touch, &idx) == -1) { in sk_select_by_touch()
544 sk = skv[idx]; in sk_select_by_touch()
545 skv[idx] = NULL; in sk_select_by_touch()
555 sk_closev(skv, skvcnt); in sk_select_by_touch()