{"push_id":703905683,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"3c05553258d2442f90e806f3eb045ce84c7afec8","before":"a8862f74aaed5ac7ea7b3d72984ddd9c40febd34","commits":[{"sha":"3c05553258d2442f90e806f3eb045ce84c7afec8","author":{"email":"b460d66aaf00c296a3db1c1d9eeafc081d5f7d70@intel.com","name":"David Woodhouse"},"message":"Fix PKCS#11 RPC handling of multi-threaded clients\n\nIn a multi-threaded client which makes concurrent calls into the PKCS#11\nmodule (which is permitted as long as it's for separate sessions), we\nmight end up with multiple RPC connections to the dæmon.\n\nThese are currently being treated as independent client applications,\nwhich leads to spurious CKR_USER_NOT_LOGGED_IN and other errors as\ndescribed at https://bugzilla.redhat.com/show_bug.cgi?id=1173279\n\nFix this by moving the CK_G_APPLICATION state out of the CallState and\ninto a separate refcounted ClientInstance data structure, and looking up\nthe appropriate ClientInstance for new connections before creating a new\none.\n\nThe ClientInstance is accessed without locking during certain calls\nbecause we know it *cannot* go away while a refcount is still held on it.","distinct":true,"url":"https://api.github.com/repos/GNOME/gnome-keyring/commits/3c05553258d2442f90e806f3eb045ce84c7afec8"}]}