{"id":234,"date":"2007-12-17T13:27:50","date_gmt":"2007-12-17T11:27:50","guid":{"rendered":"http:\/\/daniel.haxx.se\/blog\/2007\/12\/17\/parsing-those-dreaded-pacs\/"},"modified":"2007-12-17T13:27:50","modified_gmt":"2007-12-17T11:27:50","slug":"parsing-those-dreaded-pacs","status":"publish","type":"post","link":"https:\/\/daniel.haxx.se\/blog\/2007\/12\/17\/parsing-those-dreaded-pacs\/","title":{"rendered":"Parsing those Dreaded PACs"},"content":{"rendered":"<p>Since a long time companies all over have found it suitable to use &#8220;PAC&#8221; (<a href=\"http:\/\/en.wikipedia.org\/wiki\/Proxy_auto-config\">proxy auto-config<\/a>) scripts to control browsers and tell them what proxy to use for what particular URL and more, and this has been a major nuisance for people who use other (automated) means to go through the proxy than one of them huge gui-based browsers.<\/p>\n<p>For a long time, <span id=\"from\"><a href=\"http:\/\/curl.haxx.se\/mail\/archive-2004-03\/0012.html\">Ralph Mitchell&#8217;s take<\/a> on this was the only half-decent way to get it working. Half-decent only because it was never packaged and provided in a convenient way to people, it was fully functional.<br \/>\n<\/span><\/p>\n<p>Now, <a href=\"http:\/\/www.manugarg.com\/\">Manu Garg<\/a> seems to have stepped forward and introduces <a href=\"http:\/\/code.google.com\/p\/pacparser\" title=\"pacparser home page\">pacparser<\/a> which is a C library for parsing PAC files. Period. It looks (very) similar to Ralph&#8217;s approach, in that it incorporates the <a href=\"http:\/\/developer.mozilla.org\/en\/docs\/SpiderMonkey\">Mozilla&#8217;s javascript engine Spidermonkey<\/a>, with nothing really special added. So, it&#8217;s basically the same approach but this time it is packaged, shipped and documented how it is used!<\/p>\n<p><em><a href=\"http:\/\/curl.haxx.se\/mail\/archive-2007-12\/0059.html\">Announced on the curl-users mailing list today!<\/a><\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Since a long time companies all over have found it suitable to use &#8220;PAC&#8221; (proxy auto-config) scripts to control browsers and tell them what proxy to use for what particular URL and more, and this has been a major nuisance for people who use other (automated) means to go through the proxy than one of &hellip; <a href=\"https:\/\/daniel.haxx.se\/blog\/2007\/12\/17\/parsing-those-dreaded-pacs\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Parsing those Dreaded PACs<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,6],"tags":[],"class_list":["post-234","post","type-post","status-publish","format-standard","hentry","category-curl","category-floss"],"_links":{"self":[{"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/posts\/234","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/comments?post=234"}],"version-history":[{"count":0,"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/posts\/234\/revisions"}],"wp:attachment":[{"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/media?parent=234"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/categories?post=234"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/daniel.haxx.se\/blog\/wp-json\/wp\/v2\/tags?post=234"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}