[petsc-dev] MacOS firewall annoyance while running tests + solution
Satish Balay
balay at mcs.anl.gov
Fri Aug 28 22:44:30 CDT 2020
Likely firewall is disabled.
I've recently rebuild a bunch of boxes - and don't remember explicity disabling firewall. [well I did something to enable ssh - maybe that was disabling firewall]
I see the firewall is disabled on all of them
balay at ypro ~ % defaults read /Library/Preferences/com.apple.alf globalstate
0
balay at ypro ~ %
Ref: https://raymii.org/s/snippets/OS_X_-_Turn_firewall_on_or_off_from_the_command_line.html
BTW: Perhaps the following setting will prevent popups? [but it might break stuff that need network?]
sudo defaults write /Library/Preferences/com.apple.alf globalstate -int 2
Satish
On Fri, 28 Aug 2020, Matthew Knepley wrote:
> Which OS is this? It does not happen on my Catalina.
>
> Thanks,
>
> Matt
>
> On Fri, Aug 28, 2020 at 10:52 PM Barry Smith <bsmith at petsc.dev> wrote:
>
> >
> >
> > On Aug 28, 2020, at 3:47 PM, Jed Brown <jed at jedbrown.org> wrote:
> >
> > "Hapla Vaclav" <vaclav.hapla at erdw.ethz.ch> writes:
> >
> > On MacOS, maybe you also have lots of firewall popups
> > appearing/disappearing when running tests like
> > Do you want the application "ex29" to accept incoming network connections?
> >
> >
> > Is there a way to express that the application does not need (should not
> > accept) incoming connections?
> >
> >
> > Yes, this also seems to work:
> >
> > sudo $$FW --block $$APP
> >
> > instead of
> >
> > sudo $$FW --unblock $$APP
> >
> > The parallel program still runs correctly to conclusion without the popup.
> >
> > So my conclusion is that at listen() or some later system call it always
> > pops up the window (unless the user as already blocked or unblocked the
> > executable) without regard to whether an outside (from the machine)
> > connection to the process is attempted.
> >
> > The routine has an undocumented option -a <listen or accept> when you run
> > with
> >
> > /usr/libexec/ApplicationFirewall/socketfilterfw -d -a accept
> >
> > it prints ASKWHENACCEPT which seems to indicate it will delay the popup
> > until an accept is called but I can't confirm this because the debugger
> > never stops in accept on one process but the popup still comes up so this
> > argument may be ignored.
> >
> > If I were Junchao I would not do the popup until the code tried to
> > accepted an EXTERNAL connection (the lazy evaluation) but I cannot get it
> > to behave this way.
> >
> > If I disconnect from the network I still get the popups.
> >
> > The pop up is asynchronous also, when the popup is still up the program
> > keeps run (even in parallel) and ends normally. Then the popup disappears.
> >
> > Apple could make this friendly without hurting security but then Apple
> > never cared about external developers for the Mac.
> >
> >
> >
> > Normalizing sudo during build/testing seems really bad.
> >
> >
> >
>
>
More information about the petsc-dev
mailing list