我有一个在Mac 10.6系统上使用Xcode 3.2.5构建的程序,程序需要添加和删除系统钥匙串中的项目。它在Mac OS X 10.6上运行良好,但在10.7上运行,对SecKeychainItemDelete的调用返回错误代码-67701,该错误代码在10.6 SDK中未定义。经过一些Google搜索后,我发现在10.7 SDK中新增了-67701(errSecInvalidRecord)。有谁知道如何解决这一问题?SecKeychainItemDelete在Mac OS X上返回-67701(errSecInvalidRecord)10.7
4
A
回答
2
要回答一个超级老问题:我认为这是因为OS X Lion的新沙盒特性。我认为解决方案是签署您的应用程序并为钥匙串添加启用。
来源:TunnelBlick - an OSS VPN tunnel - suggests this is the problem
4
我遇到了同样的问题。发生这种情况的原因是每次调用SecKeychainFindInternetPassword和SecKeychainFindGenericPassword方法时,钥匙串API都缓存SecKeychainItemRef对象。因此,无论何时调用这两种方法中的任何一种,都一定要使用方法SecKeychainItemFreeAttributesAndData来清除api缓存。还使用CFRelease释放SecKeychainItemRef对象。
相关问题
- 1. VLCKit为MAC OS X 10.7
- 2. Mac OS X上的单声道mkbundle 10.7
- 3. ROAuth和twitteR,Mac OS X 10.7,R 2.15
- 4. Mac OS X中的setlocale 10.7狮子
- 5. 无法在Mac OS 10.7上安装netbeans
- 6. 在iOS 5和Mac OS X上构建iPhone工具链10.7
- 7. 在Mac OS X上安装CitrusPerl中的Event :: Lib安装10.7
- 8. 在Mac OS X上安装红宝石10.7
- 9. 在Mac OS X 10.7(Lion)上弃用了libcrypto
- 10. Qt Designer 4.8在Mac OS X上启动时崩溃10.7
- 11. DbVisualizer无法在Mac OS X 10.7上找到数据库
- 12. 在Mac OS X Lion上使用GUI的Smalltalk(10.7)
- 13. xdebug无法在Netbeans的Mac OS X 10.7平台上工作
- 14. 在Mac OS X上升级元组,链接器错误10.7
- 15. 在OS X 10.7上安装pycurl Lion
- 16. 在OS X 10.7(狮子)
- 17. Xcode 6.3.2 build for OS X 10.7
- 18. 如何在Mac OS X 10.7的XAMPP安装eAccelerator在狮子
- 19. OS X 10.7 + Python 3.3 + numpy + matplotlib
- 20. 在Mac OS X Mavericks上ErlIDE
- 21. date_calc在Mac OS X上
- 22. 在Mac OS X中写入“〜/ Library/Application Support”文件夹10.7
- 23. 未能建立PIL在Mac OS X 10.7狮子
- 24. 无法在Mac OS X上使用pip在virtualenv中安装psycopg2 10.7
- 25. 正在更新grep for Mac OS 10.7
- 26. 当在Mac OS X上更改$ IFS在bash上时,Mac OS X上
- 27. 在OS X中编辑sudoers(10.7)
- 28. 如何在Mac OS X 10.7上使用TGB Platformer套件编译Torque 2D?
- 29. meld在OS X 10.7不起作用?
- 30. 在JavaScript中检测狮子(OS X 10.7)?
非常有帮助。对我来说,在内存中保留多个SecKeychainItemRef(即在我的KeychainItem包装类成员变量中)指向同一个Keychain项目似乎触发了这个问题。检索数据后,我立即结束了CFRelease'ing。对我来说,似乎仍然有些尴尬。 – Daniel