Yes, Winlogon process calls IDAlly CSP which calls
opensc-pkcs11 module.
--- "Douglas E. Engert" <[EMAIL PROTECTED]> wrote:

> 
> 
> kamal kumar wrote:
> > Hi,
> > Yes, Two processes are calling opensc-pkcs11
> module.
> > And C_Finalize is called by IdAlly.exe process. 
> > 
> > Since Winlogon process is not calling C_Finalize 
> 
> But the Winlogin process calls the Id Ally CSP, that
> calls the PKCS#11, correct?
> 
> > and
> > closing all P11 session (P11 session 1, 2 are sill
> > opened), opensc-pkcs11 module keeps the pc/sc
> > connection established by sc_connect_card
> function.
> > 
> > I think we need to investigate more throughly on
> this
> > issue.
> > 
> > Regards,
> > Kamal.
> > 
> > 
> > 
> > 
> > --- "Douglas E. Engert" <[EMAIL PROTECTED]> wrote:
> > 
> >>
> >> kamal kumar wrote:
> >>> Hi,
> >>> I slightly differ from Douglas assesments.
> >> C_Finalize
> >>> is not called by winlogon process. It is called
> by
> >>> IDAlly.exe when we login. 
> >> So are you saying that there are two processes
> >> calling
> >> opensc_pkcs11.dll, the winlogin(via the IdAlly
> CSP)
> >> and IdAlly.exe?
> >>
> >> Is this some issue with DLLs vs Unix shared libs,
> >> and
> >> the use of things like:
> >>    extern struct sc_context *context;
> >> in src/pkcs11/sc_pkcs11.h
> >>
> >>> I think we have to follow
> >>> the number specified in the log entry of
> >>> pkcs11-spy.dll.
> >>>
> >>> If you compare the C_OpenSession log of the
> >> Winlogon
> >>> process occuring after C_Finalize called by
> >> IDAlly.exe
> >>> and compare it corresponding log entry in the
> >>> opensc-debug.log file, you can find that for
> this
> >>> C_OpenSession function, it is not creating new
> >> pc/sc
> >>> session as expected. But using old PC/SC
> session.
> >>>
> >>> opensc-pkcs#11 does not close all the pc/sc
> >> session,
> >>> because not all the session opened by CSP are
> >> closed.
> >>> >From the pkcs11-spy log, it is not closing
> session
> >> 1,
> >>> 2.
> >>>
> >>> Can you please verify the log again and give
> your
> >>> opinion.
> >>>
> >>> Regards,
> >>> Kamal.
> >>>
> >>> --- "Douglas E. Engert" <[EMAIL PROTECTED]>
> wrote:
> >>>
> >>>> Corcoran David wrote:
> >>>>> Hi,
> >>>>>
> >>>>> Is this an issue from the CSP -> OpenSC
> PKCS#11
> >>>> module ? 
> >>>>
> >>>> Yes, looks like the CSP calls C_Finalize after
> >> the
> >>>> the card is removed.
> >>>> then when a card is inserted, it does not not
> >> call
> >>>> C_Initialize
> >>>> but calls C_OpenSession. I suspect the problem
> is
> >> in
> >>>> that handles
> >>>> the call when a card is removed, not setting
> some
> >>>> state variable to
> >>>> indicate that C_Initialize needs to be called
> >> again.
> >>>>
> >>>>> We are in the process of making updates so it
> >>>> might be a good time
> >>>>> for us to address this (if it is not already) 
> 
> >>>> Yes, good time.   If you have any thing to
> test,
> >> let
> >>>> me know.
> >>>>
> >>>>> You should be able to work around this in a
> shim
> >>>> pkcs#11 module like
> >>>>  > pkcs11spy by abstracting C_OpenSession and
> >>>> determining if the P11 module
> >>>>  > was already closed down and calling
> >> C_Initialize
> >>>> again before passing
> >>>>  > C_OpenSession through.
> >>>>
> >>>> I am trying to avoid having to write any
> >> additional
> >>>> shims or hacks,
> >>>> especially if you are looking at the code.
> >>>>
> >>>> The current work around is for the user to try
> >>>> again, but this may only work
> >>>> if it is the same cad. (I have not tried using
> a
> >>>> card for a different user.)
> >>>>
> >>>> We are still doing pilots, and PIV cards will
> not
> >> be
> >>>> generally available
> >>>> until at least October. I hope by then
> hopefully
> >> you
> >>>> have a new version of IdAlly.
> >>>>
> >>>>
> >>>>> Thanks,
> >>>>> Dave
> >>>>>
> >>>>> On Jul 13, 2007, at 4:39 PM, Douglas E. Engert
> >>>> wrote:
> >>>>>> More info on this. I think it is an ID Ally
> >> bug.
> >>>>>> Looking at spy and opensc debug logs, It
> looks
> >>>> like
> >>>>>> the CSP is called when a card is removed
> sounds
> >>>> reasonable.
> >>>>>> The Id Ally does  C_Initialize,
> C_GetSlotList,
> >>>>>> a loop over the 8 slots for C_GetSlotInfo
> >>>>>> then a C_Finalize.
> >>>>>>
> >>>>>> I then logged off and try to login again.
> >>>>>>
> >>>>>> Rather then another C_Initialize as would be
> >>>> expected
> >>>>>> since C_Finalize was called last,  Id Ally
> does
> >> a
> >>>> C_OpenSession.
> >>>>>> The way I read PKCS#11 2.01 under C_Finalize
> it
> >>>> says:
> >>>>>> "C_Finalize is called to indicate that an
> >>>> application is finished
> >>>>>> with the Cryptoki library."
> >>>>>> If IdAlly wants to use the library again, it
> >>>> should call C_Initialize.
> >>>>>> IdAlly tries some other thinks, and gets back
> >> in
> >>>> sync so the next
> >>>>>> login works.
> >>>>>>
> >>>>>> But I would also think OpenSC should give an
> >>>> error if the C_OpenSession
> >>>>>> is called and C_Initialize has not been
> called.
> >>>> But it is not clear if
> >>>>>> Id Ally could get back in sync!
> >>>>>>
> >>>>>>
> >>>>>> kamal kumar wrote:
> >>>>>>> Hi,
> >>>>>>> Today i tried certificate logon in XP with
> PIV
> >>>> card.
> 
=== message truncated ===



      
____________________________________________________________________________________
Shape Yahoo! in your own image.  Join our Network Research Panel today!   
http://surveylink.yahoo.com/gmrs/yahoo_panel_invite.asp?a=7 


_______________________________________________
opensc-devel mailing list
opensc-devel@lists.opensc-project.org
http://www.opensc-project.org/mailman/listinfo/opensc-devel

Reply via email to