opensc-pkcs11 C_Login failed
Добрый день,
Использую rutoken_ecp (micro) под funtoo linux + opensc-0.13.0 + pcsc-lite-1.8.11-r1. Инициализировал устройство с помощью pkcs15-init.
Устройство корректно работает при использовании c openssh-6.6 или chromium (клиентский сертификат), однако возникают проблемы при использовании ssh-agent.
Почти со 100% вероятностью ssh-agent(ssh-pkcs11-helper) не может добавить ключи, отладка кода показала, что это связано с отсутствием сколь значимой задержки между вызовами C_Initialize и C_Login. Добавление задержки в 250мс дает 50% успех вызова C_Login, 500мс ~100% успех.
Проблемная функция ssh-pkcs11.c:pkcs11_add_provider. Эта функция используется как ssh так и ssh-pkcs11-helper, однако в ssh она вызывается без pin (pin запрашивается позже). Как следствие при вызове этой функции из ssh без pin, C_login не вызывается (по всей видимости он вызывается позже).
Хотелось бы понять, почему C_Login вызываемый без задержки после C_Initialize приводит к ошибке, исправить ошибку.