Hi all, My XPC service is crashing on Mavericks 10.9.5 and on Mountain Lion 10.8.x and I am not able to figure out the problem. I have pasted the logs below. The same code works perfectly fine on latest *10.10 Yosemite*.
I am not sure what changes to be done in my code to make it work on Mavericks and Mountain Lion OS X. Any help is greatly appreciated. *CRASH LOG* Process: cspd [1930] Path: /Library/PrivilegedHelperTools/*/cspd Identifier: cspd Version: 1.0 (1.0.) Code Type: X86-64 (Native) Parent Process: launchd [1] Responsible: cspd [1930] User ID: 0 Date/Time: 2015-04-27 15:56:47.803 +0530 OS Version: Mac OS X 10.9.5 (13F34) Report Version: 11 Anonymous UUID: 69D81D83-6C1D-62A2-E979-4A567F1EF27D Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BAD_INSTRUCTION (SIGILL) Exception Codes: 0x0000000000000001, 0x0000000000000000 Application Specific Information: Configuration error: Could not create listener. xpc_main() was probably called from a process that is not an XPC service bundle. Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 libxpc.dylib 0x00007fff8a9b8bb6 xpc_main + 359 1 com.apple.Foundation 0x00007fff88f37cdb -[NSXPCListener resume] + 108 2 com.mcafee.cspxpc 0x0000000105fcc6b5 main + 98 (main.mm:34) 3 libdyld.dylib 0x00007fff88cc65fd start + 1 Thread 0 crashed with X86 Thread State (64-bit): rax: 0x00007fff8a9c3744 rbx: 0x00007fb1f1c0bce0 rcx: 0x00000000000000ac rdx: 0x0000000000000003 rdi: 0x000000000000020b rsi: 0x0000000010000003 rbp: 0x00007fff59c9be00 rsp: 0x00007fff59c9bd50 r8: 0x0000000000000000 r9: 0x0000000000000000 r10: 0x00000000000000ac r11: 0x0000000000000206 r12: 0x00000001060ec010 r13: 0x0000000000000000 r14: 0x00007fff88f37cdb r15: 0x0000000000000000 rip: 0x00007fff8a9b8bb6 rfl: 0x0000000000010206 cr2: 0x00007fff75b654d0 *Below is the Code Snippet that starts the service* @interface ServiceDelegate : NSObject <NSXPCListenerDelegate> @end @implementation ServiceDelegate - (BOOL)listener:(NSXPCListener *)listener shouldAcceptNewConnection:( NSXPCConnection *)newConnection { NSLog(@"Received connection request from process PID : %d", newConnection.processIdentifier ); newConnection.exportedInterface = [NSXPCInterface interfaceWithProtocol: @protocol(MCSP_XPCProtocol)]; // Exported connection object MCSPClient *exportedObject = [MCSPClient sharedClient]; newConnection.exportedObject = exportedObject; [newConnection resume]; return YES; } @end int main(int argc, const char *argv[]) { ServiceDelegate *delegate = [ServiceDelegate new]; NSXPCListener *listener = [NSXPCListener serviceListener]; listener.delegate = delegate; [listener resume]; return 0; } My launchd plist is as below, <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" " http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>com.cmpnyName.cspxpc</string> <key>Program</key> <string>/Library/PrivilegedHelperTools/cspd.xpc/Contents/MacOS/cspd </string> <key>KeepAlive</key> <true/> <key>MachServices</key> <dict> <key>com.cmpnyName.cspxpc</key> <dict> <key>ResetAtClose</key> <true/> </dict> </dict> <key>EnableTransactions</key> <true/> </dict> </plist> thanks, ~Arjun _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com