On Sep 17, 2006, at 11:48 AM, Andrei Tchijov wrote:
Will passing "nil" in place of keychain in APIs like
SecKeychainFindInternetPassword/SecKeychainItemCreateFromContent will
work in situation where there is NO default keychain?
I should point out that passing NULL as the keychain argument when the
default keychain does not exist will automatically prompt the user to
create a new default keychain, *if* the API is one that would attempt
to store an item in the keychain. SecKeychainCopyDefault() returns an
error when there isn't a default, but if you subsequently try to store
an item in the default keychain (specified by passing NULL), you'll get
UI to create a new keychain, assuming your code is running in a
UI-capable session.
P.S. On a separate but related subject, I have a customer who some how
end-up in the "no default keychain" situation (My application gets
-25307 from SecKeychainCopyDefault and none of keychains shown in
"bold" in "Keychain Access"). However, when he is trying to apply
"make default keychain" to his login keychain, he can not. The menu
item is grayed out. So the question is: what could prevent "make
default keychain" action from been available and how to fix it (
"keychain first aid" does not report any problems with his setup).
Is this on Panther, or Tiger?
The menu item is dimmed if Keychain Access thinks that the selected
keychain is already the default. It might also be dimmed if the
selected keychain can't be found on disk, or is not owned by the
current user.
If the file ~/Library/Preferences/com.apple.security.plist exists, move
it aside and relaunch Keychain Access. If that fixes the problem,
please file a bug and include the contents of the plist file. (Note
that the plist file might *not* exist, in which case
~/Library/Keychains/login.keychain is assumed to be the default.)
-ken
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Apple-cdsa mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/apple-cdsa/email@hidden