HN user

_jsn

83 karma

systems software person

Posts0
Comments28
View on HN
No posts found.

That facility sort of exists for sandboxed Mac apps, since all incidental files related to the app are under a single container that iirc is deleted if the corresponding app is removed.

Yes. It's double precision on 64-bit platforms and single precision on 32-bit.

  #if defined(__LP64__) && __LP64__
  # define CGFLOAT_TYPE double
  # define CGFLOAT_IS_DOUBLE 1
  # define CGFLOAT_MIN DBL_MIN
  # define CGFLOAT_MAX DBL_MAX
  #else
  # define CGFLOAT_TYPE float
  # define CGFLOAT_IS_DOUBLE 0
  # define CGFLOAT_MIN FLT_MIN
  # define CGFLOAT_MAX FLT_MAX
  #endif

Right. The OS X image now has to contain a /usr/local directory so that it exists unrestricted after you install the OS (otherwise you would be unable to create it yourself, because /usr is restricted). It has to ship with some permissions, so it rightly ships owned by root. The installer will apply these permissions each time it runs.

Aside: I really wish Homebrew didn't encourage having a single user own /usr/local. If they're going to insist on never needing sudo to install things, it should just default to installing in your home directory.

Haskell for Mac 11 years ago

Swift Playgrounds are sandboxed in about the exact same way. And for pretty obvious reasons, I'd think. (Or have people already forgotten about when Playground files would immediately destroy your home directory as soon as you typed in the code?)

There are some mitigations for this already built in. "Sensitive" processes are disallowed from linking libraries relative to @rpath and friends. Excerpt from dyld.cpp:

  else if (sProcessIsRestricted && (path[0] != '/' )) {
      throwf("unsafe use of relative rpath %s in %s with restricted binary", path, context.origin);
  }
A cursory glance suggests that sProcessIsRestricted is true for setuid binaries and processes with restricted entitlements. Which makes sense: these would otherwise be privilege escalation vectors.

Apple's packaging does not necessarily optimize for recyclable materials (though they do, sometimes). More importantly, they optimize for space efficiency.

The last few generations of iMac come in a box that is sloped on one edge, whereas they used to be a standard rectangular prism. This unusual reduction in size allows them to tessellate the boxes in shipping and fit significantly more boxes on each airplane. This saves the company millions (literally millions of dollars from a seemingly-minor packaging change!) and also reduces the amount of jet fuel being burned to ship them around the world. Everyone wins, environment included.

But yes, it is also true that your lightning cables come wrapped in a little plastic thing. It would be nice to choose a more biodegradable material for that sort of thing.

iCloud Drive or CloudKit-esque storage would be nice, but the regular Notes app uses IMAP for storage, for what I imagine are "legacy reasons". (The Notes feature was originally built in to Mail.app and used IMAP notes. Yes, IMAP has a notes feature).

Jordan Hubbard only recently left Apple. I suspect he is trying to avoid suggesting only Apple solutions for FreeBSD problems.

"When a user turns on iMessage, the device generates two pairs of keys for use with the service: an RSA 1280-bit key for encryption and an ECDSA 256-bit key for signing. For each key pair, the private keys are saved in the device’s keychain and the public keys are sent to Apple’s directory service"

"The user’s outgoing message is individually encrypted using AES-128 in CTR mode for each of the recipient’s devices, signed using the sender’s private key, and then dis- patched to the APNs for delivery."

Source: http://www.apple.com/ipad/business/docs/iOS_Security_Feb14.p...

When you send an iMessage, you actually send a separate encrypted and signed copy for each recipient device. So, it is possible, but these are the lengths you have to go to.

The front-facing camera doesn't have an indicator light, so this sound is the only thing preventing an app from stealthily capturing a photo or video recording of you while using it.

I'd imagine analysis of your emotional reaction to some stimuli (gameplay elements, advertisements, whatever) would be fairly valuable.

Although this technically works, in some cases it may lead to strange bits of misbehavior. (Depending on where you do it, the app may end up in the wrong audit session or mach namespace, and it may also be missing some environment variables that it was expecting).

The open command does allow you to specify command-line arguments to pass to the application (via --args), which is generally a safer way to do things.

mdfind / Spotlight can be a fairly powerful tool. Consider this query, which finds all Xcode projects I've tagged as "Active":

  ~$ mdfind tag:Active kind:xcode
  /Users/jn/Code/xyz/xyz.xcodeproj
  ...
Queries like this also work in the Cmd-Space UI, or as a Saved Search. By default each term is joined with AND, but you can specify OR too.
New Mac Setup 12 years ago

I think that people sometimes look upon certain OS releases with rose-colored glasses. Snow Leopard is certainly one example, and I wouldn't be surprised if people felt that way about Windows XP (or maybe 7) as well.

Operating system quality has gone nowhere but up, and that's true for every player I can think of, both desktop and mobile. This includes Windows 8, embattled as it may be in the UI department, as I've found it fairly fast and stable.

Admirable, but this doesn't really help the scenario where the outer page is intercepted and modified to serve a different iframe. (This is a common attack on pages that e.g. serve login forms over http, even though the form submits to https. Just change the form in-flight.)