Esta é uma questão relacionada à programação, mas pareceu mais apropriada para o SuperUser do que para o StackOverflow.
Instalei o McAfee (uma versão de teste do LiveSafe - Internet Security) no meu PC. Eu estou executando um programa em Python que usa CherryPy para configurar um servidor web em localhost (127.0.0.1). Eu tenho um programa separado na mesma máquina que envia solicitações para o programa CherryPy.
Esta comunicação do host local falha (veja o log abaixo) quando o firewall da McAfee está ativado e funciona quando está desligado.
No entanto , quando executo o servidor CherryPy como seu próprio aplicativo (por exemplo, inicie-o a partir de um prompt cmd), as coisas funcionam mesmo com o firewall ativado. Mas quando eu deixo meu programa principal lançar o .exe CherrPy / Python como um subprocesso (que é como o meu aplicativo normalmente funciona - o aplicativo principal "navegador" inicia o aplicativo CherryPy como um subprocesso) ele faz não funciona .
Então, para resumir:
Eu fiz algumas leituras nos blogs da comunidade da McAfee, e vejo que tem havido uma longa história em relação à questão de bloquear ou não bloquear o host local. E também vejo algo sobre "spoofing de processo". Por isso, estou tentando entender por que ele bloqueia o subprocesso e se há uma maneira de (a) configurar o McAfee para não fazer isso enquanto ainda está deixando o firewall ativado ou (b) iniciar meu processo de uma maneira diferente que impeça essa disciminação do subprocesso (estou usando a API do Win32 CreateProcess()
para ativá-la - talvez ShellExecuteEx()
daria resultados diferentes?).
Abaixo está o registro CherryPy mostrando que ele não foi iniciado.
[14/Aug/2015:19:45:39] ENGINE Bus STARTING
[14/Aug/2015:19:45:39] ENGINE Set handler for console events.
[14/Aug/2015:19:45:39] ENGINE Started monitor thread 'Autoreloader'.
[14/Aug/2015:19:45:39] ENGINE Started monitor thread '_TimeoutMonitor'.
[14/Aug/2015:19:47:20] ENGINE Error in 'start' listener <bound method Server.start of <cherrypy._cpserver.Server object at 0x02547250>>
Traceback (most recent call last):
File "cherrypy\process\wspbus.pyc", line 205, in publish
File "cherrypy\_cpserver.pyc", line 168, in start
File "cherrypy\process\servers.pyc", line 177, in start
File "cherrypy\process\servers.pyc", line 233, in wait
File "cherrypy\process\servers.pyc", line 459, in wait_for_occupied_port
IOError: Port 56677 not bound on '127.0.0.1'