From: "tenspd137 ." <dcday137@gmail.com>
To: Thomas Fitzsimmons <fitzsim@fitzsim.org>, 35969@debbugs.gnu.org
Subject: bug#35969: 26.2, Excorporate
Date: Fri, 14 Jun 2019 14:13:46 -0600 [thread overview]
Message-ID: <CAB=m8w++g3f_05zVarDOkwhyfrCYKtV3H8Nx-ryyaCG7hTB2aw@mail.gmail.com> (raw)
In-Reply-To: <m3woi1nfxw.fsf@fitzsim.org>
Thomas -
I was able to try stepping through an Emacs/proxy/Exchange test in an
emacs -Q session. After setting the proxy and configuring the
debugger to step through url-http and url-http-async-sentilnel, the
only thing I noticed is that it appears url-http-async-sentinel is not
being called. I also put the url-https-proxy-connect override you
gave me earlier into a file, loaded it and set the debugger to run
through that as well as set up proxies. A broken down list of steps:
1. Load file containing proxy and altered url-https-proxyconnect, set
debugger to run through it when hit.
2. set up url-http and url-http-async-sentinel to be picked up by debugger
3. eval (url-retrieve-synchronously
"https://outlook.office365.com/EWS/Exchange.asmx"), step through
url-http
4. Input username and password when asked
5. Continue stepping until end
url-http-async-sentinel is never called. " *http* ... -####" has text
indicating failure. url-https-proxy-connect is indeed called. I don't
know how to look at the actual <process>, if I try to C-x C-e or M-:
"connection", it goes into the debugger. The url's, etc look good as
far as I can tell. Not sure what else I can do. If there are certain
pieces of url-http you want me to look at, just let me know, but not
really knowing what has to happen under the hood, I am not going to be
able to do much else.
Thanks!
-C
On Tue, Jun 4, 2019 at 4:28 PM Thomas Fitzsimmons <fitzsim@fitzsim.org> wrote:
>
> "tenspd137 ." <dcday137@gmail.com> writes:
>
> > Oh - I see. Because you want to look at the *HEADERS* flying around
> > in that case. Understood.
>
> Right.
>
> > Quick question - using emacs -Q on my proxied machine
> >
> > (setq url-http-proxy "myproxy") doesn't seem to work, so I have been just doing:
> >
> > (setq url-proxy-services '(("http" . "myproxy")
> > ("https" . "myproxy")))
> >
> > then, I evaluate:
> >
> > (defun url-https-proxy-connect (connection)
> > (setq url-http-after-change-function 'url-https-proxy-after-change-function)
> > (message "THIS WAS CALLED: url-https-proxy-connect")
> > (process-send-string connection (format (concat "CONNECT %s:%d HTTP/1.1\r\n"
> > "Host: %s\r\n"
> > "\r\n")
> > (url-host url-current-object)
> > (or (url-port url-current-object)
> > url-https-default-port)
> > (url-host url-current-object))))
> >
> > which, if I understand correctly, adds the messaging to the orgiinal
> > url-https-proxy-connect.
>
> That's correct.
>
> > Then I evaluate
> >
> > (url-retrieve-synchronously "https://outlook.office365.com/EWS/Exchange.asmx")
> >
> > after sending username and password, THIS WAS CALLED does not appear
> > in the messages. Am I using it correctly, or is this not being
> > called? I have to ask, because at this point in my emacs usage, I
> > always bet first that I have done something wrong.
>
> I think you're doing everything correctly, so this suggests that Emacs
> isn't doing any proxy handling, or at least that it is not initiating
> the "CONNECT" protocol.
>
> From the wget output in your other email, it shows wget
> connecting to the proxy with CONNECT. This protocol keeps the TLS
> "tunnel" through the proxy open, and as far as I know, is required for
> Exchange authentication to work through a proxy.
>
> Then the logs also show:
>
> Connection: Keep-Alive
> Proxy-Connection: Keep-Alive
>
> which are important; even when you set Connection keep-alive, Emacs was
> still sending both Connection close and Connection keep-alive which is
> probably not valid.
>
> You may have reached the limit of what Emacs can currently do for
> proxies, but it's up to someone (maybe me) to eventually implement
> CONNECT properly if it isn't already.
>
> A next step would be to repeat your Emacs/proxy/Exchange experiments
> until you get url-https-proxy-connect to be called or figure out why it
> isn't being called.
>
> The only two callers are url-http and url-http-async-sentinel. To step
> through them with edebug do:
>
> C-h f url-http RET C-x o TAB RET C-u C-M-x
>
> Likewise for url-http-async-sentinel, then redo your experiment and step
> through the functions with SPC and eval stuff with C-x e to see where
> they go off the rails before calling url-https-proxy-connect.
>
> > Still looking into wget verbosity....
>
> I saw the other email, nice; is that output just with the -d option?
>
> BTW, it seems like Emacs is supposed to read the _proxy environment
> variables the way wget does. Have you tried running emacs -Q in an
> environment that has http_proxy and https_proxy set, and then not
> setting any of the Emacs proxy variables and doing the Exchange
> authentication experiment?
>
> Thanks,
> Thomas
next prev parent reply other threads:[~2019-06-14 20:13 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-28 21:25 bug#35969: 26.2, Excorporate tenspd137 .
2019-05-29 1:04 ` Thomas Fitzsimmons
2019-05-29 16:17 ` tenspd137 .
2019-05-29 17:02 ` Thomas Fitzsimmons
2019-05-29 18:13 ` tenspd137 .
2019-05-29 20:53 ` Thomas Fitzsimmons
2019-05-29 21:44 ` tenspd137 .
2019-05-29 22:01 ` Thomas Fitzsimmons
2019-05-29 22:10 ` tenspd137 .
2019-05-30 17:06 ` tenspd137 .
2019-05-30 17:25 ` tenspd137 .
[not found] ` <CAB=m8wL0JNK+dQv68nddHuJ8yvHdsV9ehTaGJ00NK4spe1sQAQ@mail.gmail.com>
[not found] ` <m3blze4872.fsf@fitzsim.org>
[not found] ` <CAB=m8wJfGveEzVm46j2MLGFupdv2Lwn3VwL02_RAdirzDJKcSg@mail.gmail.com>
[not found] ` <CAB=m8wKv0dWgRctuc+bWyocNOPFertCt9K4SOB2Q_W5cPU_tTw@mail.gmail.com>
[not found] ` <m3tvd5p8zt.fsf@fitzsim.org>
[not found] ` <CAB=m8wLKtY_38m3mJ18_qhacRUNVCU-4GEFMAKXAdbc1Xamnxg@mail.gmail.com>
[not found] ` <m3d0jtp0c7.fsf@fitzsim.org>
[not found] ` <CAB=m8wL6KqATgAddiC3H7kzLSnbe5xTeAWrq5eqvr6n6aU-OKw@mail.gmail.com>
[not found] ` <m34l55oywz.fsf@fitzsim.org>
[not found] ` <CAB=m8wKHstZNzTZxj4m-UuOg9LNeu4LRrhysOaaQrSd6z1DE0A@mail.gmail.com>
[not found] ` <m3woi1nfxw.fsf@fitzsim.org>
2019-06-14 20:13 ` tenspd137 . [this message]
2019-06-14 20:16 ` tenspd137 .
2019-06-14 20:22 ` Noam Postavsky
2019-06-14 20:32 ` tenspd137 .
2019-06-14 20:45 ` tenspd137 .
2019-06-14 21:02 ` Thomas Fitzsimmons
2019-06-14 21:48 ` tenspd137 .
2019-06-14 22:07 ` tenspd137 .
2019-06-14 23:07 ` tenspd137 .
2019-06-14 23:14 ` tenspd137 .
2019-06-15 0:14 ` Thomas Fitzsimmons
2019-06-15 0:47 ` tenspd137 .
2019-06-15 0:36 ` Thomas Fitzsimmons
2019-06-15 7:41 ` Andreas Schwab
2019-06-17 16:31 ` tenspd137 .
2019-06-17 22:08 ` Thomas Fitzsimmons
2019-06-18 16:34 ` tenspd137 .
2019-06-19 4:26 ` Thomas Fitzsimmons
2019-06-20 20:34 ` tenspd137 .
2019-07-09 21:52 ` Thomas Fitzsimmons
2019-07-09 22:09 ` Collin Day
2019-07-09 22:53 ` Collin Day
2019-07-10 0:08 ` Thomas Fitzsimmons
2019-07-10 0:11 ` Thomas Fitzsimmons
2019-07-10 15:35 ` Collin Day
2019-07-13 14:37 ` Thomas Fitzsimmons
2019-07-31 21:07 ` Thomas Fitzsimmons
2019-07-31 21:20 ` Andreas Schwab
2019-07-31 22:28 ` Collin Day
2019-08-01 1:58 ` Thomas Fitzsimmons
2019-08-16 3:40 ` Thomas Fitzsimmons
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAB=m8w++g3f_05zVarDOkwhyfrCYKtV3H8Nx-ryyaCG7hTB2aw@mail.gmail.com' \
--to=dcday137@gmail.com \
--cc=35969@debbugs.gnu.org \
--cc=fitzsim@fitzsim.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).