Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dFiUw-0005G4-9z for pgadmin-hackers@arkaria.postgresql.org; Tue, 30 May 2017 14:51:50 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1dFiUv-0003XA-T7 for pgadmin-hackers@arkaria.postgresql.org; Tue, 30 May 2017 14:51:49 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1dFiUg-0002ho-L9 for pgadmin-hackers@postgresql.org; Tue, 30 May 2017 14:51:34 +0000 Received: from mail-it0-x230.google.com ([2607:f8b0:4001:c0b::230]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1dFiUc-0001xe-Ax for pgadmin-hackers@postgresql.org; Tue, 30 May 2017 14:51:34 +0000 Received: by mail-it0-x230.google.com with SMTP id g126so42834344ith.0 for ; Tue, 30 May 2017 07:51:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pgadmin-org.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=X5m5Gdi5hIuL0zENvvZz4h/BQh/ey3qZ+KBkdUeYTuA=; b=VjrzDXehmVsHJEuVBsMF7jAQLd37inz5sDFFoNfb6Y1lU4fK21oASDubT6zxjHR8hM nyCvNBGP8/ITFDrkz8z5wMZVbS3URfenpubNjQp/jt5IbYVV0oOlGjonkzVp70cZJ+nT gjytURIPWgFEJr7OfEryN8GsSG9rqNpXbGJSLAGcDv7SbTnx1ISpwxW7fufwgSsgx3VS iQsvu31G+EqGEAw58x1ehgKC6QeiE0m2d4U7BmAfcyrR1fG1+fbzrSNYqU0UY6XHLVL/ Gi90Z+SLGv0RDV+QJs8ixDXvH8VeqtsMgptiDWSTJX62ydcxJKBhXI/xOqk3CF05Y8C2 It5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=X5m5Gdi5hIuL0zENvvZz4h/BQh/ey3qZ+KBkdUeYTuA=; b=nXI4IVrerYR+4ade/zmnoXsQ2zu/vTcte8oRndE3+xxBgtVoz8Gj8mNliUtAuFQRNs A6w2+mFiwDVeXTg8xHLwl46YGPw2bh/7+NwdKuh3v1g/fmuAVZtHeNQPPOMOilBVVTEN tqwd8devaxMDdgSofwUoDCOzTorvH5B47sCi1KslxjCvMufyIHfGKCyisnBxoPOH0QYh wYxb/WFyo49jiQH9rye0EwUv1vmDGNScDjd+EjyZg63jpKgB6K8aWmboob/Af/lQKylu 5ObFkEBue8Xq/upN5MJVi/upEq+s6GNX9d+xITEf9XLb/NTySKHtVDPwIGm+x0VeNvSR IKqg== X-Gm-Message-State: AODbwcAl/AdlIyuv7yKeA+jMbevMHLyAvfCO83CGYid8knU5KvHHUhvf A3WTzZbNIJjnE+8+wUw5gWmGdmBUPyF1tgyNvw== X-Received: by 10.36.245.132 with SMTP id k126mr2113710ith.43.1496155888599; Tue, 30 May 2017 07:51:28 -0700 (PDT) MIME-Version: 1.0 Received: by 10.107.174.147 with HTTP; Tue, 30 May 2017 07:51:27 -0700 (PDT) In-Reply-To: References: From: Dave Page Date: Tue, 30 May 2017 15:51:27 +0100 Message-ID: Subject: Re: [pgAdmin4][runtime][patch]: RM#2398 - Proxy not bypassed for embedded server in runtime on Windows To: Neel Patel Cc: Maxim Zakharov , pgadmin-hackers Content-Type: text/plain; charset="UTF-8" X-Pg-Spam-Score: -2.6 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgadmin-hackers Precedence: bulk Sender: pgadmin-hackers-owner@postgresql.org I've applied the patch from Neel for this in commit:6e24cb038a0498cf87219104368dfcea40630440 and put a test build at https://developer.pgadmin.org/~dpage/pgadmin4-1.5-x86.exe. Please test! Thanks Neel! On Wed, May 24, 2017 at 6:53 PM, Dave Page wrote: > Good catch - thanks Neel. I don't have my main dev laptop with me, so > I'll have to test this next week. Watch this space :-) > > On Wed, May 24, 2017 at 4:22 AM, Neel Patel wrote: >> Hi, >> >> After debugging the issue in windows, we came to know that "random port" >> generation logic in runtime is getting failed if we configured proxy server >> in windows. >> >> Below are the code where we are finding random free port and use with our >> URL "localhost:". Below code return "0" as port value so application >> is not able to start and it hangs on splash screen. Here, if we configured >> proxy server in windows then "bind" method always return false and gives >> message "Operation not permitted" but when we disable proxy server then >> below code gives valid random port number. >> >> QTcpSocket socket; >> socket.bind(0, QTcpSocket::ShareAddress); >> port = socket.localPort(); >> >> Same happens with Linux OS - when user defined "http_proxy" environment >> variable and run pgAdmin4 application then above code fails and gives "0" as >> random port number and application hangs on splash screen. >> >> >> From the below Qt 5.8 released link, we came to know that "random port" >> generation work well after setting application level proxy. >> http://blog.qt.io/blog/2017/01/23/qt-5-8-released/ >> >> QNetworkProxy::setApplicationProxy(QNetworkProxy()); >> >> After setting above, "bind" method return true and gives correct port number >> and application starts working. We are also setting >> "setUseSystemConfiguration=true" after setting application level proxy which >> will override the setting and use platform specific system proxy >> configuration. >> >> From the below link, it looks like fixed in Qt 5.9. >> https://bugreports.qt.io/browse/QTBUG-58374 >> https://codereview.qt-project.org/#/c/186124/ >> >> I have tested with Qt 5.8 Web Engine and webkit in windows. Do review it and >> let me know for comments. >> >> Thanks, >> Neel Patel >> >> On Fri, May 19, 2017 at 4:37 PM, Dave Page wrote: >>> >>> On Thu, May 18, 2017 at 3:42 PM, Neel Patel >>> wrote: >>> > Hi Dave, >>> > >>> > Please find attached patch for the fix of RM#2398 - "Proxy not bypassed >>> > for >>> > embedded server in runtime on Windows". >>> > >>> > Observation:- >>> > We have observed this issue only with Qt WebEngine. We have not observed >>> > this issue with Webkit ( Tested with Qt 5.3 ). >>> > >>> > Issue:- >>> > If user set option "Bypass proxy server for local addresses" then >>> > WebEngine >>> > doesn't bypass the request for local addresses even if that option is >>> > set. >>> > >>> > Solution:- >>> > Now if user set option "Bypass proxy server for local addresses" then >>> > Web >>> > Engine bypass the request for localhost and if user unset then request >>> > will >>> > not be bypassed. >>> > >>> > Please find attached fix for this issue. Do review and test it and let >>> > me >>> > know for any issue. >>> >>> Noted on the ticket: >>> >>> ==== >>> Right, but as Maxim has noted, the proxy code is there to allow users >>> to browse to online docs, so it can't just be disabled. >>> >>> This likely worked in 1.3 as that used QtWebEngine (which had a bunch >>> of other issues). We need to fix it for QtWebKit, so that it honors >>> the bypass proxy for local addresses option. >>> ==== >>> >>> >>> -- >>> Dave Page >>> Blog: http://pgsnake.blogspot.com >>> Twitter: @pgsnake >>> >>> EnterpriseDB UK: http://www.enterprisedb.com >>> The Enterprise PostgreSQL Company >> >> > > > > -- > Dave Page > Blog: http://pgsnake.blogspot.com > Twitter: @pgsnake > > EnterpriseDB UK: http://www.enterprisedb.com > The Enterprise PostgreSQL Company -- Dave Page Blog: http://pgsnake.blogspot.com Twitter: @pgsnake EnterpriseDB UK: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-hackers