Feeds

Apple cripples Sun's open source jewel

Hollywood love inspires DTrace bomb

Application security programs and practises

It was all hookers and balloons at Sun Microsystems when the company first found out that Apple would pick up its well-regarded DTrace analysis tool for use with Mac OS X. Now, however, one of the lead DTrace developers has expressed some regrets after Apple "broke" his software in an apparent bid to protect big media and ISVs.

Adam Leventhal went full and frontal this week with his assault on Apple and iTunes. The Sun software engineer lobbed a blog , accusing Apple of tweaking his precious DTrace to the point of destruction. Full of code snippets and talk of tick-1s probes, Leventhal's complaint lives in the land of the developer to be sure, although it would seem to have some broader implications about how far Apple will go to protect Hollywood chums.

Leventhal, along with a couple of co-workers/drinking buddies, developed DTrace for Sun's Solaris operating system. The software tool can dig into a running server to discover a very wide variety of performance characteristics. The tool proves so effective at fixing software issues that customers have opted to purchase Sun gear just to get their hands on the code, according to company legend.

These days anyone can pick up DTrace if they've got the courage and port the code to their operating system of choice, since Sun has open sourced Solaris in all its glory. Apple took Sun up on the offer with Leopard - grrrr - the latest version of Mac OS X.

Leventhal was so pleased by Apple's DTrace port that he started using the software "as often as I have the opportunity." But that heavy usage turned up a problem, as Leventhal noticed odd data being returned during certain DTrace system checks. Leventhal kept digging and discovered that Apple had crippled DTrace with some applications such as iTunes, preventing the software from returning system data.

Witness the anger of a coder scorned.

The notion of true systemic tracing was a bit too egalitarian for their classist sensibilities so they added this glob of lard into dtrace_probe() -- the heart of DTrace:

#if defined(__APPLE__) /* * If the thread on which this probe has fired belongs to a process marked P_LNOATTACH * then this enabling is not permitted to observe it. Move along, nothing to see here. */ if (ISSET(current_proc()->p_lflag, P_LNOATTACH)) { continue; } #endif /* __APPLE__ */

The bastards.

Exactly why Apple has banned DTrace from pulling on certain applications is anyone's guess. We lobbed out usual carrier pigeon in Cupertino's direction but don't expect any return message.

Ignoring Apple's usual "no comment", some posters on Leventhal's blog have speculated that Apple blocked DTrace access to iTunes to placate Jobs' friends in Hollywood.

Here's Rolf, who wrote:

Like it or not, content creators and patent owners *do* have certain legal rights, which they can and do enforce against Apple, or anyone else who wants to use their intellectual property. In order for Apple to legally license and use patented DVD playback technology they're contractually obliged to do all they possibly can to prevent direct access to the decoded images (eg. via a debugger). Likewise, in order to be allowed to distribute copyright-protected via iTunes they're contractually obliged to prevent access to the decoded audio.

Yes, you may be able to circumvent this, but in doing all they can to try and stop you (which includes disabling dtrace and gdb in iTunes) Apple have done their part, and if you persist and circumvent such mechanism to access copyrighted data you're not entitled to then you're committing a criminal offence (DMCA and similar).

In other words, Apple appears to think that crafty coders could use a sophisticated tool like DTrace to glean information about its DRM (digital rights management) technology and other protective schemes. That could upset media companies as well as ISVs, trying to protect their own jewels.

As far as Leventhal is concerned, Apple's actions prove most offensive because they've disfigured his baby.

"It's annoying that Apple decided to disallow tracing for applications that choose to opt out, and it's a fairly serious issue, but the bigger issue is that in doing so they've broken DTrace," Leventhal wrote.

"I'd argue that the right and noble way to fix this is to allow DTrace to examine all apps, but Apple could also fix DTrace's profile and tick probes without exposing what they deem to be sensitive information."

Apple? Noble? That costs $99.95, Adam. ®

Eight steps to building an HP BladeSystem

More from The Register

next story
Sysadmin Day 2014: Quick, there's still time to get the beers in
He walked over the broken glass, killed the thugs... and er... reconnected the cables*
Apple fanbois SCREAM as update BRICKS their Macbook Airs
Ragegasm spills over as firmware upgrade kills machines
SHOCK and AWS: The fall of Amazon's deflationary cloud
Just as Jeff Bezos did to books and CDs, Amazon's rivals are now doing to it
Amazon Reveals One Weird Trick: A Loss On Almost $20bn In Sales
Investors really hate it: Share price plunge as growth SLOWS in key AWS division
EU's top data cops to meet Google, Microsoft et al over 'right to be forgotten'
Plan to hammer out 'coherent' guidelines. Good luck chaps!
US judge: YES, cops or feds so can slurp an ENTIRE Gmail account
Crooks don't have folders labelled 'drug records', opines NY beak
Auntie remains MYSTIFIED by that weekend BBC iPlayer and website outage
Still doing 'forensics' on the caching layer – Beeb digi wonk
Manic malware Mayhem spreads through Linux, FreeBSD web servers
And how Google could cripple infection rate in a second
prev story

Whitepapers

Top three mobile application threats
Prevent sensitive data leakage over insecure channels or stolen mobile devices.
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
Build a business case: developing custom apps
Learn how to maximize the value of custom applications by accelerating and simplifying their development.