OSX Messages Is So Secure It Won't Log Me In

August 21, 2012

Argh, I decided to try Messages under OSX Mountain Lion (or is it iMessage, even the app doesn't quite know what it should call itself) and the first thing it asks me is for an Apple ID.

Sure, I got two of those no less. I try one. After much whirring and clicking (figuratively) all I get is "Could not sign in. Please check your network connection and try again." Since my network connection is fine for everything else I assume it must be more complicated that that.

Recently complaints about the security of Apple's iOS SMS implementation prompted Apple to tout iMessage's security. In fact it appears to be so secure it won't even let me in.

I found an interesting stacktrace in the console

[Warning] *** Listener ID: com.apple.mail  does not have capability: (Status), not allowing request

IMFoundation    0x00007fff89c17d62 IMLogBacktraceToDepth + 69
imagent         0x00000001046c442f imagent + 78895
imagent         0x00000001046c5592 imagent + 83346
CoreFoundation  0x00007fff912c4cac __invoking___ + 140
CoreFoundation  0x00007fff912c4b47 -[NSInvocation invoke] + 263
CoreFoundation  0x00007fff912c4d19 -[NSInvocation invokeWithTarget:] + 57
IMFoundation    0x00007fff89c14749 im_local_object_peer_event_handler + 7025
IMFoundation    0x00007fff89c1482a im_local_object_peer_event_handler + 7250
IMFoundation    0x00007fff89c148de im_local_object_peer_event_handler + 7430
Foundation      0x00007fff85a8b8a7 __NSThreadPerformPerform + 225
CoreFoundation  0x00007fff91250841 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
CoreFoundation  0x00007fff9125022d __CFRunLoopDoSources0 + 445
CoreFoundation  0x00007fff912734e5 __CFRunLoopRun + 789
CoreFoundation  0x00007fff91272dd2 CFRunLoopRunSpecific + 290
Foundation      0x00007fff85a93ace -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 268
Foundation      0x00007fff85a2c3da -[NSRunLoop(NSRunLoop) run] + 74
imagent         0x00000001046b90ea imagent + 33002
libdyld.dylib   0x00007fff89bee7e1 start + 0
???             0x0000000000000001 0x0 + 1

It would seem something is missing a permission and imagent can't get through. These are the joys of writing OSX apps in the brave new sandbox world. You would think Apple would know what they are doing.

If they don't, how can they expect anyone else to get this right?

I've seen a number of people on the web come up with crazy ways to fix this involving safe mode rebooting, deleting keychains and the like. But, why? How does someone who owns the hardware, the OS and the application fail to get their application to login? Or at least come up with a better message than a generic "must be your connection" error?

Not that Apple is alone in oddball issues. At work I can't get the OSX Outlook to log into our Exchange server no matter how many times and ways I've tried. But Apple Mail has no problems, other than eating all calendar invites.

I wonder sometimes if modern operating systems and environments are simply too complicated to ever work reliably.

Or perhaps Apple simply prefers that I not message anyone.