[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Possible Bug with "--non-interactive" mode on OS X Leopard

From: Jack Repenning <jackrepenning_at_tigris.org>
Date: 2007-12-21 04:17:46 CET

On Dec 20, 2007, at 10:17 AM, Mark Phippard wrote:

> How does --non-interactive work? I assumed it just caused us to
> condition our own prompting for information. Seems odd that anything
> in an OS could break that.

The relevant part of the answer: on OS X, --non-interactive causes us
to call an OS X routine

     SecKeychainSetUserInteractionAllowed(FALSE);

This prevents the system from asking (via pop-ups) the user for
passwords or other details in order to touch the keychain. Then, we
call the actual keychain look up routine. Of course, if the user
hasn't danced enough with OS X to make keychain access possible
without some kind of prompt, then the call will and should fail, but
this can be arranged easily enough.

On Tiger, this worked fine, with the exception that there was one of
the several possible pop-ups which was not suppressed. The one that
wasn't suppressed says something like "Someone changed your program
binary, are you sure you want to let it into your keyring?" and I can
see how someone might think that justifies overriding the flag
mentioned above. So, in Tiger, there's some possibility that your
process hangs on this pop-up. But it's manageable (don't rebuild in
the middle of your tests, for instance).

On Leopard, however, setting the flag FALSE as shown above causes the
password look-up simply to fail (errSecAuthFailed). As I mentioned
earlier, it doesn't matter where you build the program, or with which
system libraries, only where it runs.

I have updated the report I filed with Apple with this info, and a
simple test case, which I also attach here for the curious.

The Subversion community needs to be aware that "svn --non-
interactive" fails in Leopard until we can resolve this.

-==-
Jack Repenning
jackrepenning@tigris.org
Project Owner
SCPlugin
http://scplugin.tigris.org
"Subversion for the rest of OS X"

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Received on Fri Dec 21 04:17:58 2007

This is an archived mail posted to the Subversion Dev mailing list.