On Sep 11, 2013, at 5:53 AM, Gerriet M. Denkmann <[email protected]> wrote:
> I have this code:
>
> AuthorizationRef auth;
> OSStatus aa = AuthorizationCreate( NULL, kAuthorizationEmptyEnvironment,
> kAuthorizationFlagDefaults, &auth);
>
> const char *pathToTool = [ theHelperPath fileSystemRepresentation ];
> const char *const arguments[] = { "--self-repair", NULL };
> FILE *communicationsPipe;
> aa = AuthorizationExecuteWithPrivileges ( auth,
>
> pathToTool,
>
> kAuthorizationFlagDefaults,
>
> (char * const *)arguments,
>
> &communicationsPipe
>
> );
>
> int fileDescriptor = fileno( communicationsPipe );
> NSFileHandle *readHandel = [ [ NSFileHandle alloc ] initWithFileDescriptor:
> fileDescriptor ];
>
> ... some reading from readHandel
>
> int yy = fclose( communicationsPipe );
>
> works fine, but Xcode is telling me that AuthorizationExecuteWithPrivileges
> is deprecated since 10.7.
>
> I asked Xcode about this (expecting something like: "use this instead") but
> got no answer.
>
> So what to do?
> My HelperTool needs to run as root. How is this to be done?
You have to use SMJobBless to install the tool as root, and then pick your
favorite form of IPC to communicate with it (XPC is best, if you can require
10.7).
Charles
_______________________________________________
Cocoa-dev mailing list ([email protected])
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 [email protected]