function FindProxyForURL(url, host) { // Shibboleth IdP => Proxy if (shExpMatch(url, "*idp*.biochem.mpg.de*/*")) { return "PROXY proxy01.biochem.mpg.de:3128; proxy02.biochem.mpg.de:3128"; } // www => proxy if (shExpMatch(host, "www.biochem.mpg.de")) { return "PROXY proxy01.biochem.mpg.de:3128; proxy02.biochem.mpg.de:3128"; } // kein proyxy fuer mail services if (dnsDomainIs(host, "owa.biochem.mpg.de") || dnsDomainIs(host, "autodiscover.biochem.mpg.de") || dnsDomainIs(host, "mail.biochem.mpg.de") || dnsDomainIs(host, "owa-intern.biochem.mpg.de")) { return "DIRECT"; } // kein proxy fuer *.biochem.mpg.de if (shExpMatch(host, "*.biochem.mpg.de")) { return "DIRECT"; } // kein proxy fuer biochemintra.iwww.mpg.de if (shExpMatch(host, "biochemintra.iwww.mpg.de")) { return "DIRECT"; } // kein proxy fuer localhost if (shExpMatch(url, "*localhost/*")) { return "DIRECT"; } if (shExpMatch(url, "*localhost:*/*")) { return "DIRECT"; } // kein proxy fuer services.myendnoteweb.com if (shExpMatch(url, "*services.myendnoteweb.com/*")) { return "DIRECT"; } // kein proxy fuer googlesites if (shExpMatch(url, "*googlegroups.com/*")) { return "DIRECT"; } // kein proxy (=direkt), wenn host 127.0.0.1 if (isInNet(host, "127.0.0.1", "255.255.255.255")) { return "DIRECT"; } // kein proxy (=direkt), wenn host in 10/8 if (isInNet(host, "10.0.0.0", "255.0.0.0")) { return "DIRECT"; } // kein proxy (=direkt), wenn host in 192.168/16 if (isInNet(host, "192.168.0.0", "255.255.0.0")) { return "DIRECT"; } // kein proxy (=direkt), wenn host in 172.16/16 if (isInNet(host, "172.16.0.0", "255.255.0.0")) { return "DIRECT"; } // kein proxy, wenn hostname ohne endung if (isPlainHostName(host)) { return "DIRECT"; } // rest zum proxy return "PROXY proxy01.biochem.mpg.de:3128; proxy02.biochem.mpg.de:3128"; }