You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by "lbruun (JIRA)" <ji...@apache.org> on 2017/10/18 10:10:00 UTC

[jira] [Created] (NETBEANS-96) New PAC Script evaluator

lbruun created NETBEANS-96:
------------------------------

             Summary: New PAC Script evaluator
                 Key: NETBEANS-96
                 URL: https://issues.apache.org/jira/browse/NETBEANS-96
             Project: NetBeans
          Issue Type: Improvement
            Reporter: lbruun


The current [PAC script|https://en.wikipedia.org/wiki/Proxy_auto-config] evaluator (in {{core.network}}) was developed pre-Nashorn and has a few problems:

* It simply fails with Nashorn - but not with Rhino - if the downloaded script uses {{isInNet()}}. This was reported in [Bug 245116|https://netbeans.org/bugzilla/show_bug.cgi?id=245116]. It fails silently in this case and defaults to no proxy. The user will never know the reason - not even by looking in the message log - that there was an error.
* It doesn't  implement two mandatory JavaScript helper methods, {{dnsResolve()}} and {{myIpAddress()}}. This is a known issue. This causes many PAC scripts to silently fail. 
* It doesn't implement Microsoft's IPv6-aware additions to the PAC standard. This is a problem in MS shops because they will have designed their PAC script to be compatible with MS IE and MS Edge (which unsurprisingly support these functions .. as do Chrome).
* It uses a small JavaScript helper, {{nsProxyAutoConfig.js}}, which uses a license which is not compatible with Apache. This is described in NETBEANS-4.
* Isn't executing the downloaded PAC script in a sandboxed environment. (The PAC script should be treated as hostile because the download may have been spoofed. Browsers indeed treat the PAC script as hostile and so should NetBeans).

Pull Request with a new implementation is on its way.






--
This message was sent by Atlassian JIRA
(v6.4.14#64029)