On 2013-02-12 05:29, Guido Soranzio wrote: > On 11/02/2013, Ian Wadham wrote: > >> I see that Cocoa has NSTask and NSPipe classes and that Guido's >> Guigna app is using them in its GuignaAgent class. I also like this approach >> because there is loose binding between the processes. > > A more canonical approach would require to implement a helper tool since > MacPorts needs root privileges. As of Snow Leopard and beyond, the > ServiceManagement.framework is the preferred method of managing > privilege escalation on Mac OS X and should be used instead of > earlier approaches such as BetterAuthorizationSample or directly calling > AuthorizationExecuteWithPrivileges: > <http://developer.apple.com/library/mac/#samplecode/SMJobBless/Introduction/Intro.html>.
The MacPorts.framework has a helper tool which bases its authorization on BetterAuthorizationSample [1]. > Porticus had a very solid management of privileged processes > and that's why I petitioned its author to open source it: > <http://porticus.alittledrop.com/ downloads/Porticus.zip>. > Unfortunately Richard Laing hadn't the time to transition > Porticus to OS X Lion and I decided for a totally different route. Thanks for reminding us that this code is available! Rainer [1] https://trac.macports.org/browser/contrib/MacPorts_Framework/MPHelperTool.m _______________________________________________ macports-dev mailing list [email protected] https://lists.macosforge.org/mailman/listinfo/macports-dev
