ENCRO Monolingual 1.3.8 will break Mail.app on Leopard and possibly other code signed applications. I can manage to consistently break Mail.app and cause it to popup the password window. It will then never remember the password, attempt to store or attempt to retrieve it from the keychain *if the Application code signature is invalid*. In testing I've tried removing many things from Mail.app such as language files, compressing images, removing redundant unnecessary files and stripping the redundant PowerPC binary and various other things from the bundle. None of this seems to damage Mail.app's code signature. How do you break Mail.app you ask? By stripping the debug symbols from Mail.app using one of many app trimming applications such as Monolingual. Since Mac OS X 10.5 Leopard introduced Code Signing and Apple Mail is code signed my guess is that because the bundle is changed and the code signature is then broken and invalid Apple Mail is then treated as an untrusted application and is refused access to the keychain by SecurityServer. http://developer.apple.com/releasenotes/Security/RN-CodeSigning/index.html applications should trigger a popup confirmation to allow the Application to update the keychain but it appears that Mail.app does not do this and SecurityServer suppresses the dialog as the code signature is invalid. I have filed as Apple Bug ID #5734181 Opening Console.app and checking secure.log shows many entries from SecurityServer to advise: Feb 10 23:04:02 macbookpro com.apple.SecurityServer[20]: suppressing keychain prompt for invalidly signed client /Applications/Mail.app(7514) Feb 10 23:04:32: --- last message repeated 16 times --- If you are getting these messages, this wll mean you may need to restore from a backup version of Mail.app from storage, time machine or another computer. If you re-install the app from the original 10.5 Installer CD you may also need to run the 10.5.1 installer and Security Update to ensure that Mail.app is up to date. =================================== Technical Details for strip command =================================== /usr/bin/strip: changes being made to the file will invalidate the code signature in: /private/tmp/Mail.app/Contents/MacOS/Mail #This shell code sample taken from Trimmit.app # strip debug symbols. "2>&1" means error messages to the standard out. /usr/bin/strip -Sur Contents/MacOS/*(*) 2>&1 /usr/bin/strip -Sx **/*.dylib(N) **/*.framework/**/*(*N) 2>/dev/null echo "== Stripping debug symbols." (Version 1.3.8) |