Hello,

I liked the pkcs11-tool very much and used it with aladdin's own pkcs11-lib.
But I could not manage to initialize the token and i could not change the
pin.

The Aladdin eToken can only be initialized after having logged in as a
user and having closed this session again.

The PIN can only be changed, when logged in as a User before.

So I wrote some small patches that worked for, so I could now initialize
the token and change the PIN.
I am not a real programmer and I guess the patches may not be valid for
other tokens. Maybe for the initilization-patch there should be an
if-statement or a commandline switch, that activates this code.

Take a look at it and think of it. If there are any questions I will be
pleased to answer them...

The patches are against pkcs11-tool.c version 0.10.1.

Kind regards
Cornelius
755a756
> 
789a791
> 	CK_SESSION_HANDLE session; // cko
795c797
< 
---
>         
796a799,813
> 	/* Add for aladdin eToken with aladdin's libetpkcs11.so
> 		Before initializing the token, we have to login
> 		to the token. cko */
> 
>         rv = p11->C_OpenSession(opt_slot, CKF_SERIAL_SESSION| CKF_RW_SESSION,
>                         NULL, NULL, &session);
>         if (rv != CKR_OK)
>                 p11_fatal("C_OpenSession", rv);
> 
>         login(session, 0); // login as CKU_USER
> 
> 	/* we need to close the session again. */
> 	rv = p11->C_CloseSession(session);
> 	/* end of Aladdin specific stuff */
> 
879a897,902
> 	/* cko: first we need to login to the token! */
>         rv = p11->C_Login(sess, CKU_USER, (CK_UTF8CHAR *) old_pin,  old_pin == NULL ? 0 : strlen(old_pin));
>         if (rv != CKR_OK)
>                 p11_fatal("C_Login", rv);
> 	/* end */
> 
_______________________________________________
opensc-devel mailing list
opensc-devel@lists.opensc-project.org
http://www.opensc-project.org/mailman/listinfo/opensc-devel

Reply via email to